py7,循环语句——Python 中数学简单应用

liftword5个月前 (12-14)技术文章51

数学如浩瀚星空,规律隐匿其中。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 到mn的乘法口诀表(这里mn可以自行设定)。如图

外层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 到mn的乘法口诀表(这里mn可以自行设定)。如图

外层的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 循环则可依条件持续更新变量并求和。在迭代求解方程近似值时,它们皆能依据数学规则重复运算,调整参数,仅在循环起始与终止条件的设置形式、迭代推进方式的语法呈现上稍有不同。

相关文章

python 中的第一个 hello world 程序输出

程序运行:print("hello world")我使用的是Python程序3.7.0 版本介绍下print 概念print 字面意思打印,将文本输出内容打印出来输入: print(&...

python的循环语句

练习案例:求1-100的和 需求:通过while循环,计算从1累加到100的和 提示: 1.终止条件不要忘,设置为确保while循环100次 2.确保累加的数字,从1开始,到100结束i=1 y=0...

Python 之 openpyxl 库 设置 Excel 单元格自动换行,自动对齐

openpyxl 写入数据到 Excel 单元格中,设置自动换行,以及设置左对齐,设置上中下的居中对齐...

手把手教会你使用Python进行jieba分词

来源:Python爬虫与数据挖掘作者:黄伟前言大家好,我是黄伟。上周我们分享了词云,手把手教你使用Python打造绚丽的词云图,这次我们来看看分词。我们从之前学习过的wordcloud可以得知它只能进...