序列求和

问题描述
求1+2+3+…+n的值。
输入格式
输入包括一个整数n。
输出格式
输出一行,包括一个整数,表示1+2+3+…+n的值。
样例输入
4
样例输出
10
样例输入
100

注意

使用暴力解法也可以,但是当n很大的时候运行时间会增加,这里考虑使用函数求解,等差数列的求解公式s=n(a1+an)/2,而不是暴力解法,代码如下:
公式解法:

def sum():
    n = int(input())
    return n*(1+n)/2
s = int(sum())
print(s)

暴力解法
for循环

n = int(input())
sum = 0
for i in range(n+1):
    sum += i
print(sum)

while循环

def accsum():
    n = int(input())
    i = 1
    sum = 0
    while i <= n:
        sum += i
        i += 1
    return sum
sum = accsum()
print(sum)

你可能感兴趣的:(蓝桥杯)