Я пытаюсь сделать цикл while, который отображает все возможные числа с совершенным квадратом до значения, предоставленного пользователем.
Ниже приведен код, который я создал для этого, однако он отображает только следующее возможное число в идеальном квадрате.
num = input("Type in a positive whole number: ")
count = 0
square = 0
while square <= num:
count = count + 1
square = count*count
print square
Вы, кажется, новичок. Python 2 мертв с начала 2020 года. Вам следует перейти на Python 3. Сейчас же!
@TimurShtatland сработало спасибо
@Matthias Спасибо, что сообщили мне об этом. Я знаю, что есть более новые версии python, у меня сейчас 2.7, так как это то, что в моем университете просит нас использовать для нашего курса.
Я бы не стал доверять квалификации этого университета. О смерти Python 2 объявили более 10 лет назад, а перейти на Python 3 так и не успели? Но хорошо, у вас, как у студента, нет другого выбора.
@Matthias Расскажи мне об этом
@KevinMedjiako Если это не имелось в виду риторически: прочитайте PEP 373 - Расписание выпуска Python 2.7 от 3 ноября 2008 г. Вы можете видеть, что окончание жизни Python 2 изначально планировалось на 2015 год, а затем (поскольку кодовая база все еще была большой) в апреле 2014 года было продлено до 2020 года.
Используя синтаксис Python 3:
Преобразуйте ввод в int
и используйте понимание списка вот так:
num = int(input("Type in a positive whole number: "))
print([i*i for i in range(int(num**0.5) + 1)])
отступ
print square
так, чтобы он был внутри цикла.