Python自学教程第2期-求100以内奇数和
前言:Python是一门需要不断实践练习的编程语言,本文档将AI大学堂学员交流群的Python每周练习进行汇总,希望各位小伙伴能够多进行实践练习,逐渐爱上这门神奇的编程语言,掌握它并在生活中能够使用它。
1 解题思路
对100以内的奇数求和,有四种常见的解题方法:
用range函数遍历100以内的奇数,然后用sum函数求和
for 循环嵌套if语句,将100以内的奇数相加求和
while循环将100以内的奇数相加,并打印求和
用递归方法求和
2 解题方法
方法一: sum函数
首先用range函数创建了一个整数列表,range(1, 100, 2)表示取值为1-100(不包括100)的整数,步长为2,输出的值为1,3,5……99
然后用sum函数对100以内的奇数求和
最后用print函数将求和结果打印出来
这行代码充分体现了Python 语言的简洁性!!!
方法二: for循环
第1行: 设置一个变量count, 初始赋值为0
第3行: 用for循环遍历100以内所有的整数
第4-6行: 用if语句判断100以内的数是否为奇数,是奇数就相加(if i % 2 == 0,continue的含义是当数字为偶数时退出本次循环)
第8行: 用print函数打印其和
这是我们在Python基础交互课第六章循环部分讲过的知识点,忘记了的小伙伴可以再学习下课程哦~
方法三: while循环
第1-2行: 设置一个变量count ,初始赋值为0,变量number初始赋值为1
第4-6行: 设定while循环的运行条件(number < 100)及执行语句(count += number;number += 2)
第8行: 用print函数打印其和
方法四: 递归求和
先看下什么是递归:
递归(Recursion)
递归是一种解决问题的思路,其精髓在于将问题分解为规模更小的相同问题,直到问题规模小到可以用非常简单直接的方式来解决,其算法方面的明显特征就是:在算法流程中调用自身。
也可以说在函数内部调用自己的函数被称之为递归
递归算法三定律:
必须要有结束条件(最小规模问题的直接解决)
必须能向结束条件演进(减小问题规模)
必须调用自身(解决减小了规模的相同问题)
在这段代码中,
第1行: 用def定义 sum 函数,传入参数 x
第2-3行: 设定这个设定递归算法的结束条件(if x > 99,return 0)
第4-6行: 在算法流程中调用sum函数自身,通过 return函数执行语句
第7行: 为x赋值为1,用print函数打印运算结果
上述四种方法的运行结果为:
3 视频解析
更多视频讲解,请查看AI大学堂Python基础教程,关注讯飞AI大学堂官网(http://www.aidaxue.com)