Die Entfernung Formel in Java Druck NaN - Wie kann ich dieses Problem beheben?

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

  •  21-09-2019
  •  | 
  •  

Frage

Okay, so dass ich den Abstand Formel bin mit dem Abstand zwischen zwei Spielerobjekte aus dem Inneren einer der Spieler Objekte auszudrucken (mit „anderen“ Objekt ein anderer Spieler zu sein). Wie kann ich es bekommen, einfach die Anzahl zu drucken, ohne einen „NaN“ zu bekommen?

System.out.println("D = " + Math.sqrt(Math.pow(x - other.x, 2) - Math.pow(-(y - other.y), 2)));
War es hilfreich?

Lösung

Sie versuchen, die Quadratwurzel aus einer negativen Zahl zu nehmen. Fügen Sie die Quadrate, nicht subtrahieren sie.

Auch y - other.y negiert ist nicht notwendig, wenn auch harmlos. Wert 2 ist gleich wie (- Wert ). 2 für alle Zahlen

System.out.println("D = " + Math.sqrt(Math.pow(x - other.x, 2) + Math.pow(y - other.y, 2)));
//                                                            ^^^
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top