Hallo Leute,
ich habe mal wieder ein kleines Problem,
und zwar möchte ich ein Unterprogramm schreiben, dass eine komplexe Zahl in Polarform darstellt. Meine erste Idee war (komplexe Zahl als Feld mit 2 Einträgen), Polarinformationen in ein neues Feld einzuspeichern.
sowas wie:
Code:
//unterprogramm zur polarformdarstellung
//feld[] hat imma nur 2 Einträge da komplexe Zahl
//rückgabewert double[] Feld mit 2 Einträgen: Betrag und Phase
public static double[] polarisiere (feld[]){
double[] polar = new double[2];
polar[0]= Math.sqrt( feld[0]*feld[0]+feld[1]*feld[1]);
polar[1]= Math.atan((double)feld[1]/feld[0]);
return polar;
}
"main"{
int[] komplex= new int [2];
komplex = {1 , 5}; //wobei 1 Real- und 5 Imaginärteil repräsentieren soll
double[] polar = new double[2];
polar = polarisiere (komplex);
System.out.print("Betrag: "+polar[0]+" Phase: "+polar[1]+"\n");
}
gibt er mir ja das richtige aus.
jetzt habe ich aber die Funtion
Math.atan2(y,x) entdeckt und weiß aber nicht genau was es macht bzw was es zurückgibt. ein blick im Internet verrät dass der Rückgabewert (r,phi) ist (also betrag und winkel). wie kann ich denn jetzt atan2 in meinem bsp. richtig verwenden?
Wenn ich schreibe
Code:
public static double[] polarisiere (feld[]){
return (Math.atan2(feld[1], feld[0]));
}
gibt java mir eine Speicheradresse oder sowas aus.