Форум » Циклы и ветвления » [B3] Циклы » Ответить

[B3] Циклы

ed8009: Определите, что будет напечатано в результате работы следующего фрагмента программы: var k, s: integer; begin s:=0; k:=1; while k < 11 do begin s:=s+k; k:=k+1; end; write(s); end. Я ни как не пойму как их делать, объясните пожалуйста

Ответов - 7

Поляков: ed8009 пишет: Я ни как не пойму как их делать, объясните пожалуйста Вам сюда. Очень полезно набрать программу в любой Паскаль-среде (например, в АЛГО) и пройти в пошаговом режиме (F8). После этого задавайте конкретные вопросы.

ed8009: Спасибо, но я уже скачивал этот файл. Я с начало нахожу n=(11-1)/1 +1 = 11. Потом нахожу S= (11-1)/1 *11 = 110. Но правильный ответ 55. Укажите, пожалуйста, где ошибка.

Поляков: ed8009 пишет: где ошибка. Ошибка в том, что вы не запустили программу и не сделали трассировку, чтобы понять, как она работает.


ed8009: Я правда запускал эту программу на трассировку как на ABCPascal, так и на Algo, я понимаю что сначала выполняется цикл 11 раз, потом выходит из него, но я не понимаю как посчитать S. Я думал что S в два раза больше k, но решаю следующие задачи, это утверждение оказалось не верным.

tavabar: Программа складывает натуральные числа от 1 до 10. Это сколько будет? ( Похоже вы запускали программу на исполнение, а не трассировку...)

ed8009: 55. Я кажется понял, спасибо большое)

cwm1: Если есть сомнения, можно использовать онлайн-сервисы: Определите, что будет напечатано в результате работы следующего фрагмента программы



полная версия страницы