编写一个读取一系列正整数的Python程序,并写出小于25的所有整数的乘积以及大于或等于25的所有整数的总和。使用0作为标记值。
def main():
user_input = 1
while user_input != 0:
user_input = int(input("Enter positive integers, then type 0 when finnished. "))
if (user_input) < 25:
product = 1
product = (user_input) * product
else:
(user_input) >= 25
sum = 0
sum = (user_input) + sum
print('The product off all the integers less than 25 is ', product, "and the sum of all the integers greater than 25 is ", sum, ".")
main()
这是我到目前为止所拥有的。这是我的计算机科学课程的第一个python代码。
我的主要障碍是前哨值必须为零,而我的user_input乘以产品,这只是将所有内容归零。
答案 0 :(得分:0)
您可以随时检查sentinel值是否为0,如果是,只需将值添加到其中。
答案 1 :(得分:0)
对您的代码进行一些小修改。
elif
sum
重命名为不与python builtin sum
product
总计在退出时乘以零。代码:
def main():
sum_total, product = 0, 1
user_input = 1
while user_input != 0:
user_input = int(input("Enter positive integers, then type 0 when finnished. "))
if 0 < user_input < 25:
product *= user_input
elif user_input >= 25:
sum_total += user_input
print("The product off all the integers less than 25 is ", product)
print("The sum of all the integers greater than 25 is ", sum_total)