我是 python 和編碼新手,我正在嘗試學(xué)習(xí)如何使用 for 和 while 函數(shù)。我正在嘗試創(chuàng)建向用戶詢問兩個(gè)值(valueA 和 valueB)的程序。在每個(gè)循環(huán)中,valueA 增加一倍,valueB 增加一百。如果 valueA 大于 valueB,則循環(huán)應(yīng)該停止?;蛘?valueB 或 valueA 大于 10000。a = int(input("Give value a: "))b = int(input("Give value b: "))while (True): print(a, b) a *= 2 b += 100 if a > b: break if a or b > 10000: break這不行..
1 回答

炎炎設(shè)計(jì)
TA貢獻(xiàn)1808條經(jīng)驗(yàn) 獲得超4個(gè)贊
正如對(duì)您的問題的評(píng)論中已經(jīng)提到的,問題是您的第二個(gè) if 語(yǔ)句。嘗試將其更改為
if a > 10000 or b > 10000:
break
然而,更簡(jiǎn)潔的解決方案是將條件包含在已經(jīng)存在于 while 循環(huán)條件中的 if 語(yǔ)句中。這看起來像
a *= 2
b += 100
while (a <= b) and (a <= 10000 or b <= 10000):
print(a, b)
a *= 2
b += 100
添加回答
舉報(bào)
0/150
提交
取消