Formule Distance dans l'impression java NAN - Comment puis-je résoudre ce problème?

StackOverflow https://stackoverflow.com/questions/1950950

  •  21-09-2019
  •  | 
  •  

Question

Ok, donc je suis en utilisant la formule de la distance pour imprimer la distance entre deux objets de joueurs à l'intérieur de l'un des objets de joueur (avec « autre » étant un autre objet du joueur). Comment puis-je obtenir pour imprimer seulement le nombre sans obtenir un « NaN »?

System.out.println("D = " + Math.sqrt(Math.pow(x - other.x, 2) - Math.pow(-(y - other.y), 2)));
Était-ce utile?

La solution

Vous essayez de prendre la racine carrée d'un nombre négatif. Ajoutez les carrés, ne les soustraire pas.

En outre, annihilant y - other.y est inutile, si inoffensif. valeur 2 est la même que (- valeur ). 2 pour tous les numéros

System.out.println("D = " + Math.sqrt(Math.pow(x - other.x, 2) + Math.pow(y - other.y, 2)));
//                                                            ^^^
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top