Python While Statement with greater than/less than signs

2024-10-01 17:31:14 发布

您现在位置:Python中文网/ 问答频道 /正文

print ("Hello, this is a change return program, coded by A person")
cost = float(input("How much did the object cose (in £s, eg 0.50 for 50p)?"))
given = float(input("How much money did you pay (in the same format)?"))
change = given - cost
twentypounds = 0
tenpounds = 0
fivepounds = 0
twopounds = 0
onepound = 0
fiftypennies = 0
twentypennies = 0
tenpennies = 0
fivepennies = 0
twopennies = 0
onepenny = 0
print(change)
while change >= 20:
    change = change - 20
    twentypounds + 1
print(twentypounds)

while change >=10 and <20 :
    change = change - 10
    tenpounds + 1
print(tenpounds)

while change 10> and >= 5:
    change = change - 5
    fivepounds + 1
print(fivepounds)

while change <5 and >= 2:
    change = change - 2
    twopounds + 1
print(twopounds)

while change <2 and >= 1:
    change = change - 1
    onepound + 1
print(onepound)

while change <1 and >= 0.5:
    change = change - 0.5
    fiftypennies + 1
print(fiftypennies)

while change <0.5 and >= 0.2:
    change = change - 0.2
    twentypennies + 1
print(twentypennies)

while change <0.2 and >= 0.1:
    change = change - 0.1
    tenpennies + 1
print(tenpennies)

while change  <0.1 and >= 0.05:
    change = change - 0.05
    fivepennies + 1
print(fivepennies)

while change <0.05 and >= 0.02:
    change = change - 0.02
    twopennies + 1
print(twopennies)

while change <0.02 and >= 0.01:
    change = change - 0.01
    onepennies + 1
print(onepenny)


print("The Change Value is now:", change, "  This is for debugging only")
twenty_pounds = twentypounds * 20
ten_pounds = tenpounds * 10
five_pounds = fivepounds * 5
two_pounds = twopounds * 2
one_pound = onepound * 1
fifty_pennies = (fiftypennies * 50) / 100
twenty_pennies = (twentypennies * 20) / 100
ten_pennies = (tenpennies * 10) / 100
five_pennies = (fivepennies * 5) / 100
two_pennies = (twopennies * 2) / 100
one_penny = (onepenny * 1) / 100
total_change = twenty_pounds + ten_pounds + five_pounds + two_pounds + one_pound + fifty_pennies + twenty_pennies + ten_pennies + five_pennies + two_pennies + one_penny
print("Your Total Change is:", total_change)

当它起作用时,它只返回0.0次,现在总是给我无效的语法,我尝试过交换符号,然后也交换数字,但是在任何情况下都没用,有什么办法解决这个问题吗?在


新代码:(仍然不工作,尽管现在没有语法错误,只返回0(尽管第4行的数字发生了变化)

^{pr2}$

现在代码只打印: (更改正确) 0.0,0.0,0.0等。。。在

代码现在起作用了,谢谢你的回答!在


Tags: andischangeprintwhilepoundspenniesonepound
2条回答

您的问题与change >=10 and <20有关。这是没有道理的,因为它没有具体说明什么应该与20相比较。如果将表达式完全写成change >= 10 and change < 20,则代码应该可以正常工作。或者,可以更简洁地写为10 <= change < 20。在

==是一个比较 =是作业

您在应该使用==的地方使用了==

相关问题 更多 >

    热门问题