Salve a tutti.
Prima di tutto complimenti per il forum
Ho un piccolo problemino.
Leggendo la guida di programmazione html.it sul C++ sono giunto all'istruzione continue, dove non sono riuscito a capire una cosa.

Secondo quanto riporta la guida:
Vi è una piccola ma significativa differenza tra l'istruzione break e l'istruzione continue. Come si è visto nell'ultimo esempio, break provoca l'uscita immediata dal ciclo. L'istruzione continue invece, fa in modo che le istruzioni che la seguono vengano ignorate ma non impedisce l'incremento della variabile di controllo o il controllo della condizione di test del ciclo. In altri termini, se la variabile di controllo soddisfa ancora la condizione di test, si continuerà con l'esecuzione del ciclo. Modifichiamo leggermente l'esempio visto prima cambiando l'istruzione break con l'istruzione continue e inserendo l'incremento della variabile i come prima istruzione del blocco while. Otterremo:
Codice PHP:
// Esempio di utilizzo dell'istruzione continue
 
main() {
int i 0somma 0;  
while( 
10) {
i++;  
if(
== 5) { 
continue; 

somma somma i;  
}
return (
0); 

Cosa accadrà adesso? Semplicemente, quando la variabile i varrà 5, l'istruzione somma = somma + i verrà saltata ed il ciclo riprenderà dal passo successivo. Dunque, quello che si otterrà e: somma = 0 + 1 + 2 + 3 + 4 + 6 + 7 + 8 + 9 = 50
Forse non ho capito la funzione di continue, ma secondo i miei calcoli l'output del programmino citato dovrebbe essere "somma = 0 + 1 + 2 + 3 + 4 + 6 + 7 + 8 + 9 = 40" e non "50"!
Anche il compilatore non mi da ragione
Il programma dovrebbe eseguire un ciclo incrementando i di "1" i fino a "i<10", saltando l'operazione nel momento in cui i=5. Quindi (0 + 1 + 2 + 3 + 4)fino a i<5 e (6 + 7 + 8 + 9) per i>5. La somma dei due intervalli è uguare a 40!
Potete spiegarmi il perchè l'output del compilatore è 50??