@nonamefromzp

Не могу разобраться с функциями в Python?

Здравствуйте, я новичек, не смог найти решение одной простейшей проблемы.
Надо, чтобы пока пользователь вводил числа меньше или больше 3, ему снова высвечивался ввод числа. Но проблема в том, что если изначально ввести неверное число, а на второй раз верное, то после второго раза снова высвечивается ввод числа. Если два или больше раза ввести неправильное число, то на третий и больший разы все пройдет отлично, и продолжится выполнение кода. Прошу прощения за идиотскую формулировку вопроса.

def fun():
    return int(input())

a = fun()

while a < 3 or a > 3:
	fun()
	a = fun()
  • Вопрос задан
  • 96 просмотров
Решения вопроса 3
1. Зачем a < 3 or a > 3? почему не a != 3?
2. Зачем вызывать в цикле функцию 2 раза?
Ответ написан
shpaker
@shpaker
Вольный хлебопашец
* На седьмой строке явно лишний вызов `fun`
* условие, я бы привел к виду `while a != 3`
Ответ написан
Комментировать
phaggi
@phaggi Куратор тега Python
лужу, паяю, ЭВМы починяю
a = 0
while a != 3:
    a = int(input())
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы