Контрольные задания > В результате выполнения фрагмента программы:
Запишите
`s:=0; n:=1; while n<=10 do begin s:=s+n; n:=n+1; end; writeln ('s=', s);`
переменная s примет значение:
Вопрос:
В результате выполнения фрагмента программы:
Запишите
`s:=0; n:=1; while n<=10 do begin s:=s+n; n:=n+1; end; writeln ('s=', s);`
переменная s примет значение:
Ответ:
Разберем программу по шагам. Изначально `s = 0`, `n = 1`. Цикл `while` выполняется, пока `n` меньше или равно 10.
1. `n = 1`: `s = s + n = 0 + 1 = 1`, `n = n + 1 = 2`
2. `n = 2`: `s = s + n = 1 + 2 = 3`, `n = n + 1 = 3`
3. `n = 3`: `s = s + n = 3 + 3 = 6`, `n = n + 1 = 4`
4. `n = 4`: `s = s + n = 6 + 4 = 10`, `n = n + 1 = 5`
5. `n = 5`: `s = s + n = 10 + 5 = 15`, `n = n + 1 = 6`
6. `n = 6`: `s = s + n = 15 + 6 = 21`, `n = n + 1 = 7`
7. `n = 7`: `s = s + n = 21 + 7 = 28`, `n = n + 1 = 8`
8. `n = 8`: `s = s + n = 28 + 8 = 36`, `n = n + 1 = 9`
9. `n = 9`: `s = s + n = 36 + 9 = 45`, `n = n + 1 = 10`
10. `n = 10`: `s = s + n = 45 + 10 = 55`, `n = n + 1 = 11`
После этого цикл завершается, так как `n = 11`, что больше 10. В результате переменная `s` примет значение 55.
Ответ: 55