编写一个程序,计算并输出1到100的和
方法一:循环累加法(适合编程练习)
total = 0
for num in range(1, 101):total += num
print("1到100的和为:", total)
原理:通过循环逐个累加数字,时间复杂度O(n)
方法二:数学公式法(最高效)
n = 100
result = n * (n + 1) // 2 # “//”是整数除法运算符,它会返回商的整数部分,去掉小数部分
print("1到100的和为:", result)
原理:使用等差数列求和公式,时间复杂度O(1)
执行结果:
两种方法差异:
- 循环法更直观体现编程思维
- 公式法计算效率更高(尤其大数时)
- 当计算1到n的和时,公式法时间复杂度为常数级,而循环法是线性级
建议初学编程者先掌握循环实现,理解算法过程后,再学习数学优化方法。