oi Vinicius.
A linha soma = soma + i
é a mais importante.
Ela diz que a variável que guarda a soma até agora fica valendo o valor dela de "antigamente" mais i
.
Pense assim: na primeira iteração do laço (o loop do for
), soma
vale 0
e i
vale 1
.
Logo, quando você executa pela primeira vez soma = soma + i
, ele faz com que soma = 0 + 1
. Repare que apenas substitui os valores. Isso é, no final da primeira iteração, soma
vale 1
.
Vamos para a segunda iteração. Aqui a soma
está valendo 1
e o i
está valendo 2
pois foi feito i++
(lembre-se que o for
é estranho mesmo, aquele terceiro pedaço dele é executado no final da iteração).
Então, ao fazer soma = soma + i
, é o equivalente a soma = 1 + 2
, e a soma
fica valendo 3
. Isso sucessivamente.
Se quiser deixar o código mais claro, diminua o for
para fazer a soma só até i < 11
e, a cada iteração, imprima tanto o i
quanto a soma
antes mesmo de somar.