num1 = int(input("Please enter the first number: "))
num2 = int(input("Please enter the second number: "))
numbers = []
even = 0
odd = 0
for x in range(num1, num2 + 1):
numbers.append(x)
if(x % 2 == 0):
even += x
elif(x % 2 == 1):
odd += x
print("Even Sum =", even)
print("Odd Sum =", odd)
到目前为止,如果第一个数字低于第二个数字,我可以在用户输入输入时找到总和。我一直试图通过将输入放入列表来解决它。
例如: 请输入第一个数字:3 请输入第二个数字:9
但是当我先输入较低的数字时 - 请输入第一个数字:8 请输入第二个数字:2
它输出 - 甚至Sum = 0 奇数和= 0
到目前为止,我已经尝试了所有知识,但似乎无法弄明白。任何建议/意见将不胜感激。感谢
答案 0 :(得分:1)
您可以添加一个if语句来检查num1是否大于num2。如果num1大于num2,则将num1更改为num2,将num2更改为num1。
num1 = int(input("Please enter the first number: "))
num2 = int(input("Please enter the second number: "))
##-----------##
if num1 > num2:
num1,num2 = num2,num1
这将解决您的问题。
答案 1 :(得分:0)
这是一个解决方案,假设您要保留num1 / num2,
的值num1 = int(input("Please enter the first number: "))
num2 = int(input("Please enter the second number: "))
numbers = []
even = 0
odd = 0
start,end = (num1,num2) if num1 < num2 else (num2,num1)
for x in range(start, end + 1):
numbers.append(x)
if x%2 == 0:
even += x
else:
odd += x
print("Even Sum =", even)
print("Odd Sum =", odd)