Я делаю код для школьного проекта, и я попытался включить цикл while, но оператор if, который находится внутри этого цикла, не распознается, и программа не распознает переменную Correct_Weight под каждым утверждением, и вместо этого она принимает это как 0, что вызывает деление на нулевую ошибку.Пока цикл не распознает оператор и переменные?
код это:
Coin_Grams = 0
Correct_Weight = 0
Difference = 0
Total_Coins_Removed = []
Total_Coins_Added = []
Coins_To_Remove = 0
Coins_To_Add = 0
Number_Of_Bags_Checked = 0
Continue = "y"
print ("Welcome to our program!")
while Continue == "y":
Type_Of_Coin = input("Please enter the type of coin in the bag")
break
if Type_Of_Coin == "1 pence":
Coin_Grams = 3.56
Correct_Weight = Coin_Grams * 100
elif Type_Of_Coin == "2 pence":
Coin_Grams = 7.12
Correct_Weight = Coin_Grams * 50
elif Type_Of_Coin == "5 pence":
Coin_Grams = 3.25
Correct_Weight = Coin_Grams * 100
elif Type_Of_Coin == "10 pence":
Coin_Grams = 6.50
Correct_Weight = Coin_Grams * 50
elif Type_Of_Coin == "20 pence":
Coin_Grams = 5.00
Correct_Weight = Coin_Grams * 50
elif Type_Of_Coin == "50 pence":
Coin_Grams = 8.00
Correct_Weight = Coin_Grams * 20
elif Type_Of_Coin == "1 pound":
Coin_Grams = 9.50
Correct_Weight = Coin_Grams * 20
elif Type_Of_Coin == "2 pounds":
Coin_Grams = 12.00
Correct_Weight = Coin_Grams * 10
else:
print ("Type of coin is wrong please try again")
Current_Weight = int(input("How much does the bag weight?"))
Difference = Current_Weight - Correct_Weight
print ("The difference is" ,Difference, "grams")
if Difference <= 0:
Coins_To_Add = abs(Difference)/Coin_Grams
Total_Coins_Add.append(Coins_To_Add)
print ("You need to add" ,round(Coins_To_Add), "coins")
elif Difference >= 0:
Coins_To_Remove = Difference/Coin_Grams
Total_Coins_Removed.append(Coins_To_Remove)
print ("You need to remove" ,round(Coins_To_Remove), "coins")
else:
print ("You don't need to remove or add any coins")
Number_Of_Bags_Checked = Number_Of_Bags_Checked + 1
Continue = input("Do you have any more bags to check? please answer as y or n")
print ("\n")
if Continue == "n":
print("\n")
print (Number_Of_Bags_Checked,"bags have been checked")
print ("\n")
print (Total_Coins_Removed,"coins have been removed in total")
print ("\n")
print (Total_Coins_Added,"coins have been added in total")
и ошибка заключается в следующем:
Что это за безусловный 'break' в вашем цикле while? – Mat
Вы выполняете 'break' справа в верхней части цикла. –
Пожалуйста, разместите сообщения об ошибках * в своем вопросе как текст *. Невозможно найти скриншот. –