Прверить в програаме ввод данных на int?

Рейтинг: 0Ответов: 0Опубликовано: 26.02.2023

Программа простая, у меня проблемы с циклами не могу понять как что куда подставить. В общем есть программа, Орёл_Решка доходя до этой строки нужно проверить и принять значение int,

elif st == 'y':
    y = int(input("Введите количество раз  подбрасывания монетки: "))

что бы программа не вылетала. Я побывал через try исключения, но меня выкидывает до начала цикла While True: и начинается всё сначала со строки

st = str(input("Подбросить монетку? y - да, n - нет "))

В общем как можно сделать в этом блоке сразу на корректность введённых данных. P.S так как я недавно начал изучать программирование многое не понимаю, пробовал ещё через свою написанную функцию это сделать, тоже всё коряво и не работает как нужно. Если есть простые способы буду рад увидеть. Вот код программы

import random
while True:
x = 0
st = str(input("Подбросить монетку? y - да, n - нет "))
if st == 'n':
    break
elif st != 'y':
    print("Выберите да - y или нет - n")
    continue
elif st == 'y':
    y = int(input("Введите количество раз  подбрасывания монетки: "))
    x = 0
    orel = 0
    reshka = 0
    for x in range(y):
        coin = random.randint(0, 1)
        if coin == 1:
            reshka += 1
            x += 1
            coin = random.randint(0, 1)
        elif coin == 0:
            orel += 1
            x += 1
            coin = random.randint(0, 1)
print(f"\nОрел выпал раз(а) {orel}, решка раз(а) {reshka} ")
procent = 100/(orel + reshka)
orel *= procent
reshka *= procent
print(f"\nОрёл  {orel:.3f} %         Решка  {reshka:.3f} %")
print("Пока")

Ответы

Ответов пока нет.