Как определить условие для цикла while в Python ?
Я уже закончил задание, просто мне нужно объяснение. Я пытаюсь вычислить ближайший квадрат числа, меньшего предела, используя python. Допустим, если мой предел равен 40, то ближайший квадрат будет равен 36 (от 6*6).
Что я уже пробовал:
Я уже нашел ответ, но мне нужно какое-то объяснение :
limit = 40 num = 0 while (num+1)**2 < limit: num += 1 nearest_square = num**2 print(nearest_square)
Это работает, выходной ответ-36. Но я все еще немного смущен необходимым условием. Первоначально я поместил это :
while (num**2) < limit:
Но ответ-49, что означает 7*7 и больше, чем предел. Зачем вообще "+1" нужен в этом состоянии ? Разве это не похоже на цикл "для"?