def multiplication_table(number):
multiplier = 1
while multiplier <= 5:
result = ___
if ___ :
break
print(str(number) + "x" + str(multiplier) + "=" + str(result))
___ += 1
multiplication_table(3)
multiplication_table(5)
multiplication_table(8) 我应该填空的。
def multiplication_table(number):
multiplier = 1
while multiplier <= 5:
result = number * multiplier
if multiplier > 5:
break
print(str(number) + "x" + str(multiplier) + "=" + str(result))
multiplier += 1
multiplication_table(3)
multiplication_table(5)
multiplication_table(8) 当我运行这个程序时,我可以让multiplication_table正确运行,而第三个则运行全部5个数字*乘法器。我尝试了几个变量,但它们都忽略了输入到25,所以我把它输入到不被读取的位置,这样我就能理解这个问题了:
def multiplication_table(number):
multiplier = 1
while multiplier <= 5:
result = number * multiplier
if multiplier > 5 and result >= 25:
break
print(str(number) + "x" + str(multiplier) + "=" + str(result))
multiplier += 1
multiplication_table(3)
multiplication_table(5)
multiplication_table(8)或者我会得到“没有输出”,但我不明白为什么:
def multiplication_table(number):
multiplier = 1
while multiplier <= 5:
result = number * multiplier
if result >= 25:
break
print(str(number) + "x" + str(multiplier) + "=" + str(result))
multiplier += 1
multiplication_table(3)
multiplication_table(5)
multiplication_table(8)发布于 2022-11-02 23:54:29
我想以你的问题不十分清楚的事实作为我的回答的开头。在提供任何代码片段或任何尝试的解决方案之前,首先应该充分定义问题,并解释可接受的答案所包含的内容。不管怎样,我会回答你们三次尝试中的每一次:
if multiplier > 5。这实际上一事无成!than循环条件已经保证,如果multiplier不小于或等于5,则循环将结束。因此,您的if条件永远不会为真。and语句的左侧将永远不会为真。3x1=3 3x2=6 3x3=9 3x4=12 3x5=15 5x1=5 5x2=10 5x3=15 5x4=20 8x1=8 8x2=16 8x3=24
我相信您不认为这是正确的解决方案,因为程序跳过了"5x5",这将使等于和不超过 25。
发生这种情况是因为您的条件是破坏if result >= 25。
二进制运算符>=表示大于OR等于。"5x5“是25,等于25,所以程序脱离了循环。
您要寻找的运算符是>,它只意味着大于。
https://stackoverflow.com/questions/74296658
复制相似问题