für diese Richtlinien:
Was ist der logische Fehler in dieser Schleife?
Schreiben Sie eine Schleife, die positive Ganzzahlen aus der Standardeingabe liest und endet, wenn eine Ganzzahl gelesen wird, die nicht positiv ist. Nachdem die Schleife beendet ist, druckt sie, getrennt durch ein Leerzeichen und auf einer einzelnen Zeile, die Summe aller gelesenen geraden ganzen Zahlen und die Summe aller gelesenen ungeraden ganzen Zahlen aus. Deklarieren Sie alle benötigten Variablen.
ÜBERNEHMEN Sie die Verfügbarkeit einer Variablen, stdin, die auf ein Scanner-Objekt verweist, das der Standardeingabe zugeordnet ist.
Ich habe diesen Code geschrieben, aber es wird die HW-Software nicht wegen eines logischen Fehlers außer es. Ich kann den logischen Fehler hier nicht finden. Kann jemand darauf hinweisen, was falsch daran ist?
int sumP=0;
int sumO=0;
Scanner stdin = new Scanner (System.in);
System.out.println("enter an odd or even number");
while (stdin.nextInt() >= 0){
if(stdin.nextInt()%2 == 0)
sumP+= stdin.nextInt();
else
sumO += stdin.nextInt();
}
System.out.println(sumP + " " + sumO);
Vielen Dank für die Hilfe. Und danke für die Erklärung. – gnawthatthingoffyourface
Manchmal, wenn Sie die gleiche Methode aufrufen, erhalten Sie das gleiche, aber mit Streams erhalten Sie nur den nächsten Wert. –