python3:求1,3,5,7,9····99的和

# 先看看1~99的求和

sum = 0
for i in range(1,100):
    sum += i
print(sum)
# 方法一
print(sum(range(1,100,2)))

# 方法二
sum = 0
for i in range(1,100,2):
    sum += i
print(sum)

# 方法三
i, s = 1, 0
while i<100:
    s += i
    i += 2
print(s)

因为是初学者图一和图二还是有必要的,因为我在此发现了range的第三参数,或者说我通过使用加深了这一印象

其次多方法的思考会明白为什么老板会喜欢那些头脑灵光的了,老大和老二都有解决的办法,表面看都是好样的,但是人家老二的方法可以给公司省钱省力,你说老板会提升谁,别在那哼哼说我TMD也熬夜了啊,说多了

接着,就是while这里我还没不熟练,结果不是2500而是2600,正好多了100,并且在开始写代码的时候我思考会不会用到break,在心里想先不用试试会不会出错,得出结果证明不用break,因为正好多了100所以猜测是不是s += i和i += 2写翻了,其实思考这是很显然的错误,题目是从1开始加,而写反的结果是每次加的是3,5,7,9·····101,所以结果是2600

  • 6
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 这个问题中使用了Python的字符串表示方法,其中反斜杠和数字组合表示特定的字符或符号。在这个字符串中,数字1到3、5到7、9以及省略号(表示连续的数字)被用来表达一个数字序列。我们无法确定这个问题的具体含义,因为缺乏上下文信息。 ### 回答2: 题目要我们输出1-3、5-7、9-11……99,可以发现每个区间的数值都是3,因此可以采用一个循环结构来输出每个区间的数。 我们可以用一个for循环从1到99遍历每个数字,然后判断它是否在需要输出的区间内,如果在就输出。 具体来说,我们可以用以下的代码实现: ``` for i in range(1, 100): if i % 3 == 1 or i % 3 == 2: print(i, end=" ") else: continue ``` 这里我们用了取模运算符%来判断每个数字是不是在区间内。针对这个题目,如果一个数字模3的结果是1或2,那么它就在需要输出的区间内,我们就可以把它输出。而如果模3的结果是0(即数字能够被3整除),那么它就不在需要输出的区间内,我们就直接跳过。 另外,我们用了end参数来指定每个数字输出后的结尾字符,这里我们用了空格来把输出的数字隔开。 输出结果如下: ``` 1 2 3 5 6 7 9 10 11 13 14 15 17 18 19 21 22 23 25 26 27 29 30 31 33 34 35 37 38 39 41 42 43 45 46 47 49 50 51 53 54 55 57 58 59 61 62 63 65 66 67 69 70 71 73 74 75 77 78 79 81 82 83 85 86 87 89 90 91 93 94 95 97 98 99 ``` ### 回答3: 题目要输出从1到99的奇数,但是需要跳过2和4的倍数。这个问题可以用Python编写一个循环来解决。将循环的计数器初始化为1,每次迭代增加2,所以只循环奇数。在循环内部,使用if语句来检查计数器是否是2或4的倍数,如果是,则跳过这些数,否则将其打印出来。具体代码实现如下: ```python for i in range(1, 100, 2): if i % 2 == 0 or i % 4 == 0: continue print(i) ``` 在这个循环中,range函数的第一个参数指定了循环的起点,第二个参数指定了循环的终点(不包括这个数),第三个参数指定了循环步长为2,这样就只循环奇数。 if语句检查i是否是2或4的倍数。如果i % 2 == 0,这说明i是2的倍数,所以continue语句会跳过此时的循环,直接执行下一次循环。同样道理,如果i % 4 == 0,说明i是4的倍数,同样跳过此次循环。如果i既不是2也不是4的倍数,则打印出i。 执行这个代码片段会生成以下输出: ```python 1 3 5 7 9 11 13 15 17 19 21 23 25 27 29 31 33 35 37 39 41 43 45 47 49 51 53 55 57 59 61 63 65 67 69 71 73 75 77 79 81 83 85 87 89 91 93 95 97 99 ``` 因此,以上的代码可以成功的跳过2和4的倍数,输出1到99之间的奇数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值