python 1200例——【5】奇数求和
第一种解法
可以使用一个简单的循环来求100以内所有奇数的和。代码如下:
# 初始化一个变量来存储奇数和
odd_sum = 0
# 使用for循环遍历1到100之间的所有数字
for i in range(1, 101):
# 判断数字是否为奇数
if i % 2 != 0:
# 如果是奇数,将其加到奇数和中
odd_sum += i
# 输出奇数和
print("100以内奇数的和为:", odd_sum)
在这个代码中,我们首先初始化一个变量odd_sum
为0,它将用于存储所有奇数的和。然后,我们使用range(1, 101)
来创建一个包含1到100的数字的列表。接着,我们使用for
循环遍历这个列表。对于列表中的每个数字,我们使用if
语句来判断它是否为奇数。如果数字除以2的余数不等于0,那么它就是奇数。如果是奇数,我们就将它加到odd_sum
中。最后,我们使用print()
函数输出所有奇数的和。
当这个代码运行时,它将输出以下结果:
100以内奇数的和为: 2500
这是因为1到100之间的所有奇数是1, 3, 5, …, 99,它们的和是2500。
第二种解法
使用sum和range函数,代码如下:
print(sum(range(1, 100, 2)))
range(1, 100, 2)
:这是range
函数的调用,它会生成一个序列。在这个例子中,它生成了一个从1开始,到99结束(不包括100),步长为2的序列,也就是所有奇数的序列。sum(...)
:这是sum
函数,它会接受一个可迭代对象(例如列表、元组、集合等)并返回其中所有元素的和。在这个例子中,它接收了range(1, 100, 2)
生成的奇数序列,并返回这些奇数的和。print(...)
:这是print
函数,它会打印其参数的值。在这个例子中,它打印了sum(range(1, 100, 2))
的结果,也就是所有奇数的和。
第三种解法
使用列表推导式的写法:
# 生成1到100之间的所有奇数列表
odd_numbers = [i for i in range(1, 101) if i % 2 != 0]
# 计算奇数和
odd_sum = sum(odd_numbers)
# 输出结果
print("100以内奇数的和为:", odd_sum)
在这个代码中,我们首先使用列表推导式生成1到100之间的所有奇数列表odd_numbers
。然后,我们使用sum()
函数计算这个列表中所有数字的和,并将结果存储在odd_sum
变量中。最后,我们使用print()
函数输出所有奇数的和。
range函数
range()
是 Python 中的一个内置函数,用于生成一系列的数字。它有几种不同的使用方式,下面我将详细解释这些使用方式。
- 不带参数的
range()
不带参数的 range()
会报错误。
for i in range():
print(i)
- 一个参数的
range()
当只有一个参数时,range()
会生成一个从 0 开始到该参数减一的整数序列。
for i in range(5):
print(i)
这段代码会打印出从 0 到 4 的整数,即 0, 1, 2, 3, 4。
3. 两个参数的 range()
当有两个参数时,range()
会生成一个从第一个参数开始到第二个参数减一的整数序列。
for i in range(1, 5):
print(i)
这段代码会打印出从 1 到 4 的整数,即 1, 2, 3, 4。
4. 三个参数的 range()
当有三个参数时,range()
会生成一个从第一个参数开始到第二个参数减一的整数序列,但是每个生成的整数都会被第三个参数整除。
for i in range(0, 10, 2):
print(i)
这段代码会打印出从 0 到 8 的所有偶数,即 0, 2, 4, 6, 8。
- 步长和起始点
除了使用步长和结束点,你还可以使用步长和起始点来生成序列。例如:
for i in range(2, 11, 3):
print(i)
这段代码会打印出从 2 开始到 10 的所有步长为 3 的整数,即 2, 5, 8。
6. 负步长
使用负步长可以从结束点开始向前生成序列。例如:
for i in range(10, -1, -2):
print(i)
这段代码会打印出从 10 到 -1 的所有奇数步长的整数,即 10, 8, 6, 4, 2,0。
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。 如若内容造成侵权/违法违规/事实不符,请联系我的编程经验分享网邮箱:veading@qq.com进行投诉反馈,一经查实,立即删除!