Es geht um folgenden Code:

Code:
#include <iostream>
int main()
{
    int sum = 0, val= 1;
    while (val <= 10) {
        sum += val;
        ++val;
    }
    std::cout << "Sum of 1 to 10 inclusive is "
              << sum << std::endl;
    return 0;
}
Kann mir jemand erklären ( verständlich bitte.. ) wie "sum" hier einen Wert von 55 erhält ?
sum hat den Wert 0, val den Wert 1.
Jetzt wird doch so oft sum + val gerechnet bis val den Wert 10 hat oder nicht?

Also sieht die Schleife eigentlich so aus :

0+1 = 1
1+1 = 2
2+1 = 3
3+1 = 4
4+1 = 5
5+1 = 6
6+1 = 7
7+1 = 8
8+1 = 9
9+1 = 10

Gut zusammen gerechnet ergibt das 55.
Sehe ich das richtig das die einzelnen Ergebnisse also immer zwischendurch im int sum zwischengespeichert werden?
Und das nach jeder Schleife, warum?
Ich versteh die Logik nicht weil ja bei jeder Schleife int sum wieder 0 sein müsste und nicht den Wert des vorrigen schleifendurchlaufes.

Ich bitte um Aufklärung

Gruß