ساخت ماشین تکرار

سوال

من یه کدی درست کردم میخوام وقتی که ورودی اشتباهه دوباره همون ورودی رو ازمن بخواد اما تو قسمت اخر این عمل اجرا نمیشه نمیدونم مشکل از چیه؟

alamat_ha = [“+”,”-“,”*”,”/”]
checke_a=0
checke_b=1
alamat_ha_dict= {
‘jam’ : “+”,
‘menha’: “-“,
‘zarb ‘:”*”,
‘tagsim’:”/”
}
for shomarande in range (0,99999) :

try:
if checke_a == 0:
a = int (input(“Enter Number 1 : “))

checke_a = 1
alamat = int(input(
“alamat :n1)+n2)-n3)*n4)/n==> ”
))
checke_b == 1
b = int(input(“Enter Number 2 : “))
checke_b=0
else:

alamat = int(input(
“alamat :n1)+n2)-n3)*n4)/n==> ”
))

except ValueError as ve:
print(“Enter Int Number !!!”)
continue

if alamat == 1:
print(f”your answer : {a} {alamat_ha_dict[‘jam’]} {b} = {a + b}”)
if alamat == 2:
print(f”your answer : {a} {alamat_ha_dict[‘menha’]} {b} = {a – b}”)
if alamat == 3:
print(f”your answer : {a} {alamat_ha_dict[‘zarb’]} {b} = {a * b}”)
if alamat == 4:
print(f”your answer : {a} {alamat_ha_dict[‘tagsim’]} {b} = {a / b}”)

 

تو بخش b وقتی ورودی اشتباه میدم دوباره از alamat شروع میشه اما من میخوام هر کدوم رو اشتباه زدم از اون شروع کنه

 

در حال بررسی 0
zamani 3 ماه 3 پاسخ ها 55 دیده شده 0

پاسخ ها ( ۳ )

  1. یا باید به function تبدیلش کنی
    یا از while استفاده کنی
    مثل این:

    import re
    name = input(“What is your name? “).strip()
    while not re.match(‘[A-Za-z ]+’, name):
        name = input(” nInvalid nYou should enter string characters: “)
    else: print(f”Your name is {name}”)

  2. من یمدت همین مشکل رو داشتم
    بعد اومدم با استفاده از def اون کارم به function تبدیل کردم و براش حلقه شرطی while تعیین کردم

  3. سلام بهتر هست از try و exception استفاده کنید

ارسال یک پاسخ