Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/loops/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
List 如何找到While循环的值之和_List_Loops_While Loop_Sum - Fatal编程技术网

List 如何找到While循环的值之和

List 如何找到While循环的值之和,list,loops,while-loop,sum,List,Loops,While Loop,Sum,我的程序是这样设置的:我要求用户输入起始值,然后输入结束值。然后,代码应该获取这些值,并在“while循环”中,输出起始值和结束值之间的每个整数。此外,如果输入的起始值大于结束值,则会切换这些值。最后,输出的值,包括起始值和结束值,应该进行汇总,但我不太确定如何实现这一点。任何帮助都将不胜感激 我的代码如下: starting = int(input('Enter starting number: ')) ending = int(input('Enter ending number: '))

我的程序是这样设置的:我要求用户输入起始值,然后输入结束值。然后,代码应该获取这些值,并在“while循环”中,输出起始值和结束值之间的每个整数。此外,如果输入的起始值大于结束值,则会切换这些值。最后,输出的值,包括起始值和结束值,应该进行汇总,但我不太确定如何实现这一点。任何帮助都将不胜感激

我的代码如下:

starting = int(input('Enter starting number: '))
ending = int(input('Enter ending number: '))
total = 0

while starting < ending + 1:
    print(starting)
    starting = starting + 1

while starting > ending + 1:
    print(ending)
    ending = ending + 1

for itervar in [int(starting) - int(ending)]:
  total = total + itervar

print('Sum is ' + str(total))
start=int(输入('输入起始编号:'))
ending=int(输入('输入结束编号:'))
总数=0
开始<结束+1时:
打印(开始)
开始=开始+1
开始>结束+1时:
打印(结束)
结束=结束+1
对于[int(开始)-int(结束)]中的itervar:
总计=总计+itervar
打印('总额为'+str(总计))

两个更改将有助于您的代码

  • 如果开始\结束值需要反转,只需使用元组语法即可
  • 先求和,因为开始变量稍后会更改
请尝试以下代码:

starting = int(input('Enter starting number: '))
ending = int(input('Enter ending number: '))
total = 0

if starting > ending:
   starting, ending = ending, starting  # reverse start\end

for itervar in range(starting,ending+1):  # do sum first
  total = total + itervar
  
while starting < ending + 1:  # print list in order, low to high
    print(starting)
    starting = starting + 1

print('Sum is ' + str(total))
Enter starting number: 5
Enter ending number: 1
1
2
3
4
5
Sum is 15