Frage zu while-schleife (Ausgabe 10 bei 9 maligem durchlauf!! weshalb??)
-
#include<iostream> using namespace std; int main () { int x = 0, y = 0; while(++y < 10) cout<<y; {x += y;} cout<<endl; cout<<y; system("pause"); return 0; }Weshalb gibt mir y(das letzte)10 aus wenn die schleife nur neuen mal durchloffen wird
1durchlauf 0+1=1
2 1+1=2
3 2+1=3
4
5
6
7
8
9 8+1=9
GRUß JÖRG
-
Deine IDE hat sicher einen debugger. wäre ein einfaches beispiel den mal auszuprobieren
-
while fährt solange fort, bis y nicht mehr kleiner als 10 ist (also bei 10).
Dabei wird der Schleifenrumpf 9-mal durchlaufen, die Bedingung aber 10-mal ausgewertet (und natürlich wird dabei jedesmal y erhöht).