Python求1-2+3-4+5...99的所有数的和

第一种:
number = 1
result = 0

while number < 100:
    # number为偶数时 -=
    if number % 2 == 0:
        result -= number

    # number为奇数时 +=
    else:
        result += number

    number += 1

print(result)

 第二种:

给start赋值为1,sum赋值为0,当start的赋值小于100的时候while循环为真
temp的赋值等于start和2的余数,如果temp的赋值等于1,sum的赋值就等于
sum加start的赋值(余数为1,start就是奇数),否则sum的赋值就等于sum减start的
赋值(余数不为1就为0,start就是偶数),start重新赋值
等于start加1,一直加到start的赋值等于99,while循环为假!打印sum
"""
start = 1
sum = 0
while start <100:
    temp = start % 2
    if temp ==1:
        sum = sum + start
    else:
        sum = sum - start
    #print(start)
    #sum = sum + 1
    start += 1
print(sum)

 我认为:这是一种小学的算法

最快的方法实现,直接使用公式

1是不变的,可以变的是最后一个数的取值为N

n为奇数时,n/2,取整数,即可取得数组的数量

数组的数量都是-2+3,-4+5,每次的结果都是1

我认为应该这样写:

n = 99
if isinstance(n/2, int) == True:
    s = 1 + int(n/2) + n
    print(s)
else:
    if isinstance(n/2, int) != True:
        s = 1 + int(n/2)
        print(s)

 源码应当以最快的速度得到理解,需要被传递时。非传递应该以简短为主

上一篇:MAT分析器查看jvm dump文件


下一篇:flask第二十六篇——模板【控制语句】【2】