Как повторять условный оператор до тех пор пока не будет выполнена функция if?

Рейтинг: 0Ответов: 2Опубликовано: 14.08.2023
print("text")
a = str(input("Введите 2-й номер."))

if a == "89857900082":
    print("Все верно!")
elif a != "89857900082":
    print("Именно 2 номер, не 1 и не 3.")

#я хочу получить от пользователя правильный ответ, в случае не верного ответа нужно вывести elif но не заканчивать цикл а запустить его заново, и только после выполнения if продолжить код.

Подскажите пожалуйста)

Ответы

▲ 2Принят

Оберните ваш if в цикл и добавьте флаг правильного ответа

neverno = True

while neverno:
    a = str(input("Введите 2-й номер."))
    if a == "89857900082":
        print("Все верно!")
        neverno = False
    else:
        print("Именно 2 номер, не 1 и не 3.")

Или без отдельного флага

a = 0

while a != "89857900082":
    a = str(input("Введите 2-й номер."))
    if a != "89857900082":
        print("Именно 2 номер, не 1 и не 3.")
print("Все верно!")
▲ 2

Или так

a = '89857900082'

while input("Введите 2-й номер: ") != a:
    print("Именно 2 номер, не 1 и не 3.")
else:
    print('Все верно')