Berechnung des Abstandes von zwei Punkten in einem Koordinatensystem

Der Neuling

Mitglied
Hallo liebe Leute,

ich bin Momentan daran ein Programm zur Aufgabenstellung, "Berechnung des Abstandes von zwei Punkten in einem Koordinatensystem", zu schreiben. Nun bin ich in diesem Zusammenhang erstmals in meiner kurzen Javageschichte in Kontakt mit Potenzen und Wurzeln gekommen. Leider stimmt wohl irgendetwas nicht :-/ Könnt ihr mir vielleicht sagen was ich falsch gemacht habe?

[Java]
import java.io.*;
public class PunktAbstand
{
public static void main (String argv []) throws IOException
{
String str;
Double x1,x2,y1,y2,teilergebnis,ergebnis;
BufferedReader input=new BufferedReader(
new InputStreamReader (
System.in));
System.out.print("Bitte geben Sie die X-Koordinate von Punkt 1 ein: ");
str= input.readLine();
x1 = Double.parseDouble(str);

System.out.print("Bitte geben Sie die Y-Koordinate von Punkt 1 ein: ");
str= input.readLine();
y1 = Double.parseDouble(str);

System.out.print("Bitte geben Sie die X-Koordinate von Punkt 2 ein: ");
str= input.readLine();
x2 = Double.parseDouble(str);

System.out.print("Bitte geben Sie die Y-Koordinate von Punkt 2 ein: ");
str= input.readLine();
y2 = Double.parseDouble(str);

System.out.print("Die Koordinaten von Punkt X sind" +x1+ " / " +x2);
System.out.print("Die Koordinaten von Punkt Y sind" +y1+ " / " +y2);

teilergebnis= Math.pow((x1-x2)+(y1-y2));
ergebnis=math.sqrt(teilergebnis);
System.out.println("Die Punkte X und Y liegen " +ergebnis+ "auseinander");
}
}
[/Java]

Die Formel die ich umsetzen möchte ist "ergebnis = Quadratwurzel aus (x1-x2)²+(y1-y2)²
Die Fehlermeldungen die ich bekomme sind:

"method pow in class java.lang.Math cannot be applied to given types;
required: double,double
found: double
reason: actual and formal argument lists differ in length"

und

"cannot find symbol
symbol: variable math
location: classPunktAbstand

Ich habe in diesem Programm jetzt versucht die Formel aufzuteilen, lässt sich die Formel auch "auf einmal" ausrechnen?

Ich hoffe ihr könnt mir helfen, ich komme selbst leider nicht auf die Lösung :-/

Viele Grüße

Der Neuling
 
M

Marcinek

Gast
Hallo,

ich übersetze dir mal die Fehlermeldung:

"method pow in class java.lang.Math cannot be applied to given types;
required: double,double
found: double
reason: actual and formal argument lists differ in length"

Die Methode "pow" in Math kann nicht mit den gegebenen Typen aufgerufen werden.
Benötigt: Kommazahl, Kommazahl
Gefunden: Kommazahl

Offensitlich fehlt dir hier eine Kommazahl.

Hier jetzt du:

"cannot find symbol
symbol: variable math
location: classPunktAbstand


Gruß,

Martin
 

Der Neuling

Mitglied
Hallo Martin,

danke für deine Hilfe. Es tut mir wirklich Leid, aber deine Antwort kann ich noch nicht in eine Lösung umsetzen :-/ Ich hab einfach überhaupt keine Ahnung was ich ändern soll...
Beim zweiten Fehler findet er die Variable math nicht, das hatte ich soweit verstanden. Wie ich das ändern kann erschließt sich mir leider aber auch nicht...

Viele Grüße

Der Neuling
 

JCODA

Top Contributor
Java:
teilergebnis= Math.pow((x1-x2)+(y1-y2));
ergebnis=math.sqrt(teilergebnis);

Math (Java 2 Platform SE 5.0)
pow(double a, double b)
Returns the value of the first argument raised to the power of the second argument.

Math.pow erfordert 2 Zahlen, du übergibst nur eine.
und bei
Code:
ergebnis=math.sqrt(teilergebnis)
schreibt man Math groß ;)
 

Der Neuling

Mitglied
Vielen Dank, das hat mir schonmal geholfen :)
Ist es möglich auch innerhalb eines Math.pow eine Formel auszurechnen, also z.B. Math.pow (2,2)-(2,1)+...? Wenn ich das einfach so schreibe bringt er mir immer einen Fehler, weshalb ich mich frage, ob es überhaupt möglich ist oder ob ich erstmal alle Potenzen einzeln ausrechnen muss, dann addieren/subtrahieren und dann die Wurzel aus dem Endergebnis ziehen?

Viele Grüße

Der Neuling
 

Der Neuling

Mitglied
Ich glaube, ich habe die Frage missverständlich formuliert :) Das "," in den () ist ja für die Potenzberechnung. Ich hätte jetzt gerne, dass er mir z.B. 2² + 4² berechnet. Leider ist meine Eingabe Math.pow (2,2)+(4,2) wohl falsch oder? Wie müsste ich das eingeben, dass es funktioniert?
 

Fab1

Top Contributor
Eine Möglichkeit wäre folgendes:

Java:
double b = Math.pow(2,2) + Math.pow(4, 2);
    	System.out.println(b); //20
 

Fab1

Top Contributor
Ich hatte mir oft überlegt direkt die Lösung zu posten, aber ich denke so machte es mehr Sinn. :)

Mithilfe der Klasse DecimalFormat kann man zahlen runden, falls das noch nötig ist.
 
H

hüteüberhüte

Gast
Alternativ:
Java:
    public static void main(String[] args) throws IOException {
        BufferedReader reader = new BufferedReader(new InputStreamReader(System.in));
        System.out.print("x1,y1,x2,y2 eingeben: ");
        String[] stringArray = reader.readLine().split("\\D+");
        Point[]  points = { new Point(Integer.valueOf(stringArray[0]), Integer.valueOf(stringArray[1])),
                            new Point(Integer.valueOf(stringArray[2]), Integer.valueOf(stringArray[3]))};
        System.out.println("Punkte:  " + Arrays.toString(points));
        System.out.println("Abstand: " + points[0].distance(points[1]));
    }

Dabei können jetzt natürlich einige Fehler/Ausnahmen auftreten, die nicht abgefangen werden:
IOException,
NumberFormatException,
ArrayIndexOutOfBoundsException,
...

Aber zum Üben ideal
 

Mujahiddin

Top Contributor
Math.pow würde ich für Quadrate nicht verwenden.
Ich bin mir nicht sicher um den Aufwand von Math.pow, aber wenn man sich mal die API durchliest, bemerkt man, dass es eine ziemlich ausschweifende und komplizierte Funktion ist! Viel zu kompliziert für so eine einfache Operation.
Deshalb, wenn man bei x² statt:
Java:
ergebnis = Math.pow(x, 2);
lieber:
Java:
ergebnis = x*x;

Bei deinem Programm wäre es dann sowas:

Java:
double x = x2 - x1;
double y = y2 - y1;
teilergebnis = x*x + y*y;
ergebnis = Math.sqrt(teilergebnis);

@ hüteüberhüte:
Code:
in.readLine().split("\\D+");
splittet auch bei Kommas oder Punkten und da wir hier von double reden, ist das wohl nicht so gut! Außerdem sollen ja auch negative Zahlen erlaubt sein.
Wenn man wirklich alle Variablen in einer Zeile haben will, würde ich lieber mit Leerzeichen trennen
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
I File Uploader... Statusanzeige, Berechnung des Status etc. Java Basics - Anfänger-Themen 0
Bugs Bunny Fehlerhafte Berechnung beim erneuten Durchlaufen der Schleife Java Basics - Anfänger-Themen 5
Jamie logische Verknüpfung zur Schaltjahr-Berechnung Java Basics - Anfänger-Themen 30
Stephan_kl Reihenwert-Berechnung, Ergebnis mit vorherigem Ergebnis vergleichen Java Basics - Anfänger-Themen 11
Abraham42 Berechnung der Kühlung Java Java Basics - Anfänger-Themen 12
S Hashcode-Berechnung + ^ Java Basics - Anfänger-Themen 2
J Median-Berechnung von 2D-Teilarrays Java Basics - Anfänger-Themen 56
F Tabelle - Berechnung Rang Java Basics - Anfänger-Themen 2
B Berechnung der Position von Kinderelemente von einem Elternknoten Java Basics - Anfänger-Themen 23
S Berechnung der sleep time ist falsch Java Basics - Anfänger-Themen 46
S Switch-Case zur Berechnung der Einkommensteuer Java Basics - Anfänger-Themen 15
F Berechnung der Rektaszension und Deklination eines Sterns Java Basics - Anfänger-Themen 7
2 Taschenrechner mit GUI Problem bei der Berechnung Java Basics - Anfänger-Themen 8
V Erste Schritte Pi Berechnung Java Basics - Anfänger-Themen 47
M Berechnung der Reststrecke bei Graphen Java Basics - Anfänger-Themen 1
V Algorithmus zur fortlaufenden Berechnung des duechscjnt Java Basics - Anfänger-Themen 1
B Berechnung zu einer Schleife formen Java Basics - Anfänger-Themen 6
B Berechnung Median mit Methode Java Basics - Anfänger-Themen 7
CptK Methoden Berechnung von Anfangsgeschwindigkeit und Winkel Java Basics - Anfänger-Themen 27
K Erste Schritte Berechnung der Summe zweier Arrays Java Basics - Anfänger-Themen 15
S Erste Schritte Berechnung des Paketportos - Problem/Frage Java Basics - Anfänger-Themen 52
J Gleitkommazahlen, Berechnung von pi Java Basics - Anfänger-Themen 4
J Berechnung liefert falsches Ergebnis Java Basics - Anfänger-Themen 2
kilopack15 Verzweiflung wegen Berechnung mit Multithreading Java Basics - Anfänger-Themen 1
A Die Werte zur Berechnung müssen als Parameter übergeben werden? Java Basics - Anfänger-Themen 7
Salo Berechnung von Winkeln Java Basics - Anfänger-Themen 28
M Restbuchwert Berechnung geht nicht Java Basics - Anfänger-Themen 45
Ghostman1711 Pi berechnung Methode aufrufen Java Basics - Anfänger-Themen 2
L Rekursive Methode zur Berechnung der Potenz q hoch p Java Basics - Anfänger-Themen 17
beatles Operatoren Operatoren - Berechnung Java Basics - Anfänger-Themen 40
K Best Practice Algorithmus für Berechnung von Zahlenreihenfolge Java Basics - Anfänger-Themen 12
N Verzögerte Berechnung "Lazy" Java Basics - Anfänger-Themen 8
J Erste Schritte Rundungsproblem - Berechnung Notendurchschnitt Java Basics - Anfänger-Themen 13
S Variablen Vektor zur Berechnung verwenden Java Basics - Anfänger-Themen 4
T Java double berechnung fehler Java Basics - Anfänger-Themen 2
M Berechnung in Java Java Basics - Anfänger-Themen 4
S Berechnung der Arbeitstage in einem Zeitraum Java Basics - Anfänger-Themen 9
E Problem bei rekursiver Berechnung des Binomialkoeffizienten Java Basics - Anfänger-Themen 5
T Iterative Pi Berechnung in Rekursive Java Basics - Anfänger-Themen 2
S Double, int, Berechnung Java Basics - Anfänger-Themen 3
C Nach Berechnung runden und Wert ausgeben Java Basics - Anfänger-Themen 7
E Berechnung für Shop einbinden Java Basics - Anfänger-Themen 8
S Klassen Formel zur Berechnung .... Bitte um Hilfe Java Basics - Anfänger-Themen 7
S Euklid Algorithmus zur Berechnung des GGTs Java Basics - Anfänger-Themen 2
OnDemand Berechnung in die start und paint Methode eines Applets Java Basics - Anfänger-Themen 28
P Schleife zur Berechnung von einer Summe Java Basics - Anfänger-Themen 16
F Berechnung einer linearen Abschreibung Java Basics - Anfänger-Themen 5
E Berechnung von Punkten Java Basics - Anfänger-Themen 4
A Methoden PI-Berechnung Java Basics - Anfänger-Themen 22
S Erste Schritte Berechnung mit Daten aus CSV und Date Objekt Java Basics - Anfänger-Themen 2
C Programm zur Berechnung der Spur einer Matrix Java Basics - Anfänger-Themen 4
P Pythagoras Baum - Berechnung der Punkte Java Basics - Anfänger-Themen 9
A Erste Schritte Steuer Berechnung, Alters Abhängig Java Basics - Anfänger-Themen 5
T Erste Schritte Berechnung von gerade und ungerade Zahlen Java Basics - Anfänger-Themen 10
J Erste Schritte Berechnung Ratten vermehrung Java Basics - Anfänger-Themen 4
P falsches ergebnis bei einfacher berechnung Java Basics - Anfänger-Themen 3
T Iterative Berechnung einer Satellitenbahn Java Basics - Anfänger-Themen 20
M Java Berechnung mit mehreren Lösungen? Java Basics - Anfänger-Themen 9
D Nullstellen-Berechnung Java Basics - Anfänger-Themen 10
L Fehlermeldung bei falscher Berechnung anzeigen Java Basics - Anfänger-Themen 31
A berechnung multiplikatives inverses Java Basics - Anfänger-Themen 5
J Berechnung des aktuellen Alters auf Basis des Geburtstags Java Basics - Anfänger-Themen 45
J Datentypen Fehler bei Berechnung mit Double und Int-Werten Java Basics - Anfänger-Themen 22
G Berechnung von Winkeln mit Cosinussatz Java Basics - Anfänger-Themen 2
B Arrays verwenden für Berechnung Java Basics - Anfänger-Themen 3
R Merkwürdige Modulo Berechnung Java Basics - Anfänger-Themen 7
B Hausaufgabe Berechnung quadratischer Funktion Java Basics - Anfänger-Themen 16
U Alter Berechnung + sortierung Java Basics - Anfänger-Themen 6
P Berechnung wird nicht durchgeführt Java Basics - Anfänger-Themen 2
D Berechnung von Ostern und Ramadan! Java Basics - Anfänger-Themen 24
N Algorithmus für Berechnung einer Quersumme Java Basics - Anfänger-Themen 9
D Berechnung von Geldausgabe Java Basics - Anfänger-Themen 22
F Berechnung von Kugeln! Java Basics - Anfänger-Themen 9
M rekursive Funktion zur Berechnung der Spiegelzahl Java Basics - Anfänger-Themen 7
S Hausaufgabe: Java-Programm schreiben zur Berechnung von x und y Java Basics - Anfänger-Themen 9
Y Ergebnis einer Berechnung an die Main Methode übergeben Java Basics - Anfänger-Themen 11
Semox Ersten Wert eines Intervalls bei Berechnung einschließen Java Basics - Anfänger-Themen 8
J Logarithmische Berechnung und Arrays Java Basics - Anfänger-Themen 2
B LinkedList - Berechnung des Produkts Java Basics - Anfänger-Themen 6
B Berechnung von Preisen per Java-Programm Java Basics - Anfänger-Themen 27
M Alters berechnung aus Geburtsjahr aus dem Buch Java Basics - Anfänger-Themen 5
O Fehler in der String-Distanz-Berechnung Java Basics - Anfänger-Themen 5
-horn- "Berechnung vorwärts, Optimierung rückwärts?" - Wie würdet ihr das machen? Java Basics - Anfänger-Themen 8
P iterative Berechnung Java Basics - Anfänger-Themen 9
1 Berechnung von PI mithilfe von Buffons Nadelproblem Java Basics - Anfänger-Themen 2
G Berechnung zwei Komplexen Zahlen Java Basics - Anfänger-Themen 34
N Rekursive Berechnung der Höhe eines binären Baumes Java Basics - Anfänger-Themen 4
J Programm für interaktive Berechnung von Temperaturverläufen Java Basics - Anfänger-Themen 9
K Annährende ganzzahlige Berechnung der Wurzel Java Basics - Anfänger-Themen 8
L Berechnung von Perioden Java Basics - Anfänger-Themen 4
D einfach berechnung einer onlinezeit Java Basics - Anfänger-Themen 25
S Euklid Klasse mit Methoden zur Berechnung des ggT Java Basics - Anfänger-Themen 23
G Frage zur Primzahlen berechnung Java Basics - Anfänger-Themen 11
G Berechnung von N-Tageslinien von Aktienkursen Java Basics - Anfänger-Themen 13
G Rekursive Berechnung von n über k schlägt fehl Java Basics - Anfänger-Themen 5
G Einfache Berechnung liefert falsches Ergebnis Java Basics - Anfänger-Themen 2
W Schaltjahr Berechnung Java Basics - Anfänger-Themen 24
A Probleme mit Programm zur Pi-Berechnung Java Basics - Anfänger-Themen 6
X Temperatur-Berechnung /Array(?) Java Basics - Anfänger-Themen 5
L Berechnung Summe Java Basics - Anfänger-Themen 3

Ähnliche Java Themen

Neue Themen


Oben