請讓使用者依序輸入數字,直到輸入q停止。(題目要求)
Float=1.00
Int=1
x=input()
while x!= 'q':
if x==int(x):
Int=Int*int(x)
else:
Float=Float*float(x)
x=input()
else:
if round(Float,2)>Int:
print("Float>Int")
elif round(Float,2)<Int:
print("Float<Int")
else:
print("Float=Int")
請大家幫偶看要怎麼改,謝謝!
給你一段不完整且有Bug的程式碼
當作參考
自己試著理解並修改成正確的程式碼
如果直接照抄給老師,後果請自負。
intList, floatList = [], []
intResult, floatResult = 1, 1
x = ""
while x != "q":
#輸入數字
x = input()
#分類
if x.replace('.', '', 1).isdigit() == False:
break
elif float(x).is_integer():
intList.append(int(x))
#全部 int 的乘積
for value in intList:
intResult = intResult * value
#判斷 float 跟 int 誰的所有乘積比較多
if (floatResult > intResult):
print (floatResult, intResult, "Float > Int")
elif (floatResult < intResult):
print (floatResult, intResult, "Float < Int")
else:
print (floatResult, intResult, "Float = Int")
輸出sample: