py7,循环语句——Python 中数学简单应用
数学如浩瀚星空,规律隐匿其中。Python 循环语句似精准星图,指引探秘之路。从数列通项求解,到几何图形勾勒,再到数学模型推演,循环语句皆大显身手。借其之力,代码化身智慧魔杖,轻触数学核心,于简洁高效间,开启编程与数学交融的奇妙征程,探寻无尽可能。
for循环基本语法
for循环用于遍历可迭代对象(如列表、元组、字符串、字典等)中的元素。下面看一下例子
这里 x 列表存储了加法、乘法、除法三种运算的结果,通过for循环依次取出每个结果并输出相关说明。格式就是for 变量 in 可迭代对象: print(变量)。
range()函数与for循环结合
range()函数常用于生成一个整数序列,与for循环结合可以实现指定次数的循环。下面从几个例子说明
- 例题1、计算从 1 到 n 的整数平方和,如图
range(1, n + 1)生成了从 1 到n的整数序列,for循环遍历这个序列,每次将当前整数的平方累加到 y 变量中,最后输出平方和。这个代码,写多少次方的和都是可以的。
- 例题2、已知一个等差数列首项a1 ,公差d ,项数n ,我们可以用for循环结合range()函数来计算它的和。如图
这里range(n)生成了从 0 到n - 1的整数序列,在循环中根据等差数列通项公式an = a1 + (n - 1)d(这里n是当前项数,从 0 开始计数所以是a1 + i * d)计算出每一项的值,再累加到sum_of_series中得到和。要注意收集运算符,这里举例说明一下+=,如a+=b就相当于a=a+b。
- 例题3、计算从 1 到 n 之间所有 m的倍数的整数和。如图
range(m, n, m)生成了从 m 开始,步长为 m,到 n 之前结束的整数序列,通过for循环遍历这个序列并累加得到和。
- 例题4、打印一个从 1 乘 1 到m乘n的乘法口诀表(这里m和n可以自行设定)。如图
外层for循环控制行数,从 1 到m,内层for循环控制每行乘法式子的个数,从 1 到n,在循环体中输出乘法式子并通过end="\t"设置格式,每行结束后通过print()换行。
while循环
Python 里,while循环意义非凡。可依条件灵活重复代码,在数学迭代、逻辑处理等方面作用关键,实用性与适应性极强。下面的例,将用上面的题目,为了更好的对比学习。
- 例题1、计算从 1 到 n 的整数平方和,如图
例题2、已知一个等差数列首项a1 ,公差d ,项数n ,我们while循环与break语句来计算它的和。如图
首先初始化等差数列首项a1、公差d、项数n以及用于求和的 x 与计数的 i 。while True循环里,依通项公式a1 + i * d算出当前项并累加到 x ,i 递增。当i达n时,break跳出循环,最后输出x即数列总和。
- 例题3、计算从 1 到 n 之间所有 m的倍数的整数和。如图
首先定义了n表示范围上限,m表示要找的倍数,x用于累加符合条件的整数,初始化为0,i作为计数器从1开始。在while循环中,每次判断i是否是m的倍数。如果i除以m的余数不为0,说明不是m的倍数,就执行continue语句,跳过本次循环剩余部分(即不会执行累加操作),直接进入下一次循环,同时i递增。若i是m的倍数,就将其累加到x中,然后i再递增。循环一直执行到i超过n为止,最后输出从1到n之间所有m的倍数的整数和。
- 例题4、打印一个从 1 乘 1 到m乘n的乘法口诀表(这里m和n可以自行设定)。如图
外层的while循环通过变量i来控制行数,只要i小于等于m,就会进入内层循环进行每一行的乘法口诀打印。内层的while循环通过变量j来控制每行中乘法式子的个数,只要j小于等于n,就会打印出i与j的乘法式子,并且通过end="\t"设置每个式子之间的间隔为一个制表符,使得输出格式较为整齐。当内层循环结束(即一行的乘法式子都打印完)后,通过print()进行换行,然后外层循环的i增加1,准备打印下一行。当外层while循环正常结束(也就是i超过了m)时,就会执行else子句中的内容,这里就是输出一句提示信息 “乘法口诀表已完整打印。” 表示乘法口诀表已经按照设定的范围完整地打印出来了。
用for循环画五角星
用while循环画五角星
作者小语
在 Python 里,for 循环与 while 循环共性显著。于数学计算领域,二者均可大展身手。比如计算数列求和,for 循环能依序列索引逐一累加,while 循环则可依条件持续更新变量并求和。在迭代求解方程近似值时,它们皆能依据数学规则重复运算,调整参数,仅在循环起始与终止条件的设置形式、迭代推进方式的语法呈现上稍有不同。