表弟:这数学规律题该怎么解决呢?使用Python你会发现很简单

前段时间表弟给我一个数学题目,要我帮他解决。我看了看,换做我以前确实还得花点功夫,现在会python了,我轻松就解决了,先来看看题目是什么吧!
表弟:这数学规律题该怎么解决呢?使用Python你会发现很简单_第1张图片

分析:

这里有我自己整理了一套最新的python系统学习教程,
包括从基础的python脚本到web开发、爬虫、数据分析、
数据可视化、机器学习等。小编这里推荐加小编的python学习群:895,817, 687

这一道题在一般的规律题的基础上加入了两个点:

①牵涉到简单的整式运算。

②用S1,S2,S3,S4,S5…分别来表示每一项,有误导考生将其与等差等比数列的前n项和中的“Sn”混淆的动机,以增大考题难度。

③单项表达式需要依赖上一项的结果,加大考题难度。

三、常规解题思路:

第一步:根据第一项表达式,分别计算出后面每一项的表达式,直到发现规律。

第二步:分析规律,总结规律,根据规律求出目标项。

具体操作:

一、分别求出前面的每一项:方便找到规律

S1 = 1/a

S2 = -s1-1 = -(1/a)-1 = -(a+1)/a

S3 = 1/s2 = -a/(a+1)

S4 = -s3-1 = a/(a+1) -1 = -1/(a+1) 初见端倪

S5 = 1/s4 = -(a+1) = -a-1 有点意思

S6 = -s5-1 = -(-a-1)-1 = a 若隐若现

S7 = 1/s6 = 1/a 恍然大悟

S8 = …

二、 分析规律

很明显,第8项为: -(a+1)/a,第9项为: -a/(a+1),第10项为:-1/(a+1),第11项…即后面项的表达式均为前6项的循环。

以此类推,要求出2018项,只需要确定出2018项在循环的过程中处于前六项的哪一项即可。

方法:2018除6再取余,余数为2,则说明循环完若干轮后还落单了两次,对照前六次中,第二项为-(a+1)/a,故答案即为-(a+1)/a

三、 代码实现

接下来我们用程序来实现:

方法一:

为了模拟运算2018次,故我们最外层用while实现不停地去循环,while里面则用for遍历这重复的六个结果。

代码如下:
表弟:这数学规律题该怎么解决呢?使用Python你会发现很简单_第2张图片
效果:
表弟:这数学规律题该怎么解决呢?使用Python你会发现很简单_第3张图片
这种方法虽是真实的模拟了2018次循环遍历,但着实麻烦,接下来我们用取模(即取余数)的方式来实现以上功能。

方法二:

代码:
表弟:这数学规律题该怎么解决呢?使用Python你会发现很简单_第4张图片
效果:
表弟:这数学规律题该怎么解决呢?使用Python你会发现很简单_第5张图片
怎么样,瞬间省去了2016次运算,而且代码也精简了,是不是很酷。

但我们的计算机可是最不怕辛苦了,而且最擅长的就是重复的去做运算,所以,遇到类似的数学题,我们还可以丢给计算机。

你可能感兴趣的:(Python)