0

私はいくつかの宿題をしていて、これについて頭を悩ませています..私は愚かであるか、これを行うには疲れすぎています..出力を正しく取得して優先順位を付けることができましたが、浮動小数点数を入力すると、クレイジー..全体的な目標は、動作する浮動小数点値を入力できるようにすることです..私は数学的な解決策について頭を悩ませることができないようです.

price = input("Enter Price ")
cash = input("Enter Cash ")
coins = [100, 50, 20, 10, 5, 1, 0.5]
change = cash-price
i = 0
while i<len(coins):
    print int(change/coins[i]),str(" X "),coins[0+i]
    if change>0:
        change = change-((change/coins[i])*coins[i])
    else:
        change = max(change,0)
    i=i+1

ありがとう !

4

1 に答える 1

0

私は数学をチェックするのが面倒ですが、変更から減算するときに浮動小数点を削除するのを忘れているようです。そのため、部分的なコインは現在の全額のように扱われ、すべてがゼロになります。追加しましたint

price = input("Enter Price ")
cash = input("Enter Cash ")
coins = [100, 50, 20, 10, 5, 1, 0.5]
change = cash-price
i = 0
while i<len(coins):
    print int(change/coins[i]),str(" X "),coins[0+i]
    if change>0:
        change = change-(int(change/coins[i])*coins[i])
    else:
        change = max(change,0)
    i=i+1
于 2012-11-01T20:39:41.867 に答える