В текущей версии вашего кода все ваши операторы if
находятся за пределами for
l oop, что означает, что они будут выполняться только для последнего пользовательского ввода (discount
), так как это будет быть значением discount
, которое сохраняется после завершения l oop.
Это можно увидеть на примере:
Please enter your deposit amount: 1
Please enter your deposit amount: 2
Please enter your deposit amount: 3
Please enter your deposit amount: 4
Please enter your deposit amount: 5
Please enter your deposit amount: 6
Please enter your deposit amount: 7
You have 0 deposit over or equal to 1000 dollars.
You have 0 deposit between 500 and 999 dollars.
You have 0 deposit between 100 and 499 dollars.
You have 1 deposit below 100 dollars.
Your balance is : 7
Вместо этого вам нужно сделать отступ в if
утверждений таковы, что они находятся внутри for count in range(7)
l oop. Вам также необходимо проверить содержимое ваших операторов if
, поскольку они не увеличивают счетчик ammount1000orover
, как вы ожидаете. Вы можете использовать оператор +=
, чтобы упростить их, например:
for count in range(7):
deposit = int(input("Please enter your deposit amount: "))
if deposit >= 1000:
ammount1000orover += 1
total=total + deposit
if deposit >= 500 and deposit <= 999:
amount500to999 += 1
total += deposit
if deposit >= 100 and deposit <= 499:
amount100to499 += 1
total += deposit
if deposit >= 0 and deposit <= 99:
less99 += 1
total += deposit
Тогда результат будет таким, как вы ожидаете:
Please enter your deposit amount: 10001
Please enter your deposit amount: 501
Please enter your deposit amount: 101
Please enter your deposit amount: 11
Please enter your deposit amount: 2
Please enter your deposit amount: 3
Please enter your deposit amount: 4
You have 1 deposit over or equal to 1000 dollars.
You have 1 deposit between 500 and 999 dollars.
You have 1 deposit between 100 and 499 dollars.
You have 4 deposit below 100 dollars.
Your balance is : 10623