Hallo Leute!
Ich habe folgendes Problem: Ich muss beliebig viele Komplexe Zahlen einlesen(realteil, imaginärteil) und diese dann anschließend entweder addieren oder subtrahieren(zuerst gibt mal entweder + oder - ein, dann die Zahlen). Der Code so weit wie ich ihn habe, tut das auch (bei Korrekter eingabe), ich muss aber zu dem ganzen noch Sicherstellen, dass eben die Komplexe Zahl vollständig eingegeben wird - also realteil und imaginärteil - und da fangen meine Probleme an weil ich nicht ganz weiß wie ich das machen kann - da ich das fürs studium brauche und quasi nur das verwenden kann was wir so weit gemacht haben bitte ich euch, die simplen und einfachsten sachen in betracht zu ziehen(try - catch kann soweit ich weiß nicht verwendn).
Ich hab mir gedacht, dass das vielleicht mir sowas wie einen eingabecounter gehen sollte und dann mod2 um zu schauen ob die eingabe geradzahlig war oder nicht? aber wie gsagtich weiß echt nicht wohin damit - ich bitte um hilfe und bedanke mich im Voraus!
Hier der Code von Complex:
Und hier meine Main:
Ich habe folgendes Problem: Ich muss beliebig viele Komplexe Zahlen einlesen(realteil, imaginärteil) und diese dann anschließend entweder addieren oder subtrahieren(zuerst gibt mal entweder + oder - ein, dann die Zahlen). Der Code so weit wie ich ihn habe, tut das auch (bei Korrekter eingabe), ich muss aber zu dem ganzen noch Sicherstellen, dass eben die Komplexe Zahl vollständig eingegeben wird - also realteil und imaginärteil - und da fangen meine Probleme an weil ich nicht ganz weiß wie ich das machen kann - da ich das fürs studium brauche und quasi nur das verwenden kann was wir so weit gemacht haben bitte ich euch, die simplen und einfachsten sachen in betracht zu ziehen(try - catch kann soweit ich weiß nicht verwendn).
Ich hab mir gedacht, dass das vielleicht mir sowas wie einen eingabecounter gehen sollte und dann mod2 um zu schauen ob die eingabe geradzahlig war oder nicht? aber wie gsagtich weiß echt nicht wohin damit - ich bitte um hilfe und bedanke mich im Voraus!
Hier der Code von Complex:
Code:
public class Complex{
private int realz;
private int imagz;
public Complex(int x, int y){
this.realz = x;
this.imagz = y;
}
public void add(Complex c){
realz = this.realz + c.realz;
imagz = this.imagz + c.imagz;
}
public void sub(Complex c){
realz = this.realz - c.realz;
imagz = this.imagz - c.imagz;
}
public String toString(){
return"("+realz+";"+imagz+")";
}
}
Und hier meine Main:
Code:
import java.util.Scanner;
public class Main
{
/* main */
public static void main (String [] args)
{
Scanner einlesen = new Scanner(System.in);
String vorzeichen;
int realteil = 0;
int imagteil = 0;
Complex sum = new Complex(0,0);
Complex diff = new Complex(0,0);
int firstinput = 0;
if(einlesen.hasNext()){
vorzeichen = einlesen.next();
if (vorzeichen.equals("+")){
while(einlesen.hasNextInt()){
realteil = einlesen.nextInt();
imagteil = einlesen.nextInt();
Complex zahl = new Complex(realteil, imagteil);
sum.add(zahl);
}
System.out.println(sum.toString());
}
else if (vorzeichen.equals("-")){
while(einlesen.hasNextInt()){
realteil = einlesen.nextInt();
imagteil = einlesen.nextInt();
Complex zahl = new Complex(realteil, imagteil);
if(firstinput == 0){
diff = zahl;
firstinput = 1;
}
else{
diff.sub(zahl);}
}
System.out.println(diff.toString());
}
else {
System.out.println("FALSCHE EINGABE");
}
}else{System.out.println(sum.toString());}
}
}