• Предмет: Информатика
  • Автор: vladislavgaryachij03
  • Вопрос задан 3 года назад

Запишите число, которое будет выведено в результате работы
программы:
s = 0
n = 1
while s*s <= 125:
s = s + 3
n = n * 2
print(n)

очень прошу с объяснением , без пк

Ответы

Ответ дал: rinatmuxekto86
1

Разбираем код программы:

s=0

n=1  - данные переменные принимают эти значения, принцип как и в математике.

while s^2<=125  - это наше условие, которое можно интерпретировать как:

ПОКА s^{2} \leq 125 , то мы выполняем строки в цикле. Условие проверяется перед очередным стартом цикла.

У вас не проставлена табуляцию, но я полагаю, что строки:

s=s+3 и n=n*2 - выполняются в цикле

Посмотрим, что будет происходить, запускаем цикл в первый раз

s=0+3=3

n=1*2=2 - это наши новые значения переменных

Проверяем условие: s^2<=125? 9<=125? - ДА =>запускаем цикл ещё раз

s=3+3=6

n=2*2=4

Проверяем условие: 36<=125 - запускаем цикл ещё раз

s=6+3=9

n=4*2=8

Проверяем условие: 81<=125 - запускаем цикл ещё раз

s=9+3=12

n=8*2=16

144<=125? Нет. Цикл не запустится больше и мы выходим из него.

После выхода из цикла нас просят вывести значение n.

Последнее значение n - 16

Ответ: 16

Вас заинтересует