Problème affichage résultat

Résolu
Bonjour,

Je souhaite exécuter mon programme qui calcule la distance de deux points mais je ne sais pas pourquoi le résultat ne s'affiche pas. Le voici.

Merci.

Configuration: Macintosh / Safari 14.0.1

class Point {
	double x;
	double y;
	
	void translate (double dx, double dy) {
		x = x + dx;
		y = y + dy; //expressions cartésiennes de la translation
	}
	double distance(Point p) {
		double dcarree = (x-p.x)*(x-p.x)-(y-p.y)*(y-p.y);
		return Math.sqrt(dcarree);
	}
	
	public static void main (String[]args) {
		Point a = new Point();
		a.x = 3;
		a.y = 2;
		a.translate(5,7);
		a.distance(a);
		
	}
	
}

1 réponse

  1. Modérateur
    Bonjour,

    Le résultat ne s'affiche pas car :
    1) tu ne récupère pas le résultat
    2) tu ne fais aucun affichage

    double resultat = ...
    System.out.println(resultat);
    1. Je ne sais pas par quel moyen on récupère le résultat d'une méthode dans main. Y- t- il une manière pour le faire ?
    2. Je fais à la fin de mon main
      double resultat = a.distance(a);
      		System.out.println(resultat);
      


      mais je ne sais pas pourquoi ça affiche 0.0 ?
    3. Modérateur
      @ArmandAs0.0 est le bon résultat vu que tu calcules la distance entre a et lui même.

      Pour obtenir une distance non nulle il faudrait avoir un deuxième point.
    4. Ça a marché ! ... merci beacoup !