Logo

郎哥编程

学习Python编程,发现数学乐趣

2019-08-14 2173

引导图.png

先和Python交个朋友

Python的全拼是P—Y—T—H—O—N,发音是[?pa?θ?n],汉语解释是蟒蛇的意思。

01.png

我们再来看Python的图标,下图是Python的图标,Python的图标看上去也是蛇。

02.png

是不是很奇怪!Python是一门编程语言,编程语言和蟒蛇有什么关系呢?把编程语言和蟒蛇联系起来的是荷兰人吉多·范罗苏姆,英文读音是Guido van Rossum,他是一名计算机程序员。

03.png

在1989年的圣诞期间,吉多休假在家,吉多不是一个可以闲得住的人。他一直在考虑如何对ABC语言进行改进,ABC语言是由荷兰数学与计算机科学国家研究所研制的编程语言,它主要用于编程教学使用,吉多想对ABC语言进行改进,改进的语言不但能用于教学,而且可以用于应用开发。

04.png

于是他在1989年开始编写Python语言。到1991年第一个Python解释器诞生,吉多整整用了两年左右的时间研发Python语言

05.png

对外发布新的编程语言,需要给编程语言起个名称,当时吉多迷上了英国肥皂剧《Monty Python飞行马戏团》。

06.png

他就从这个肥皂剧的名称中选择了Python。Monty Python是英国六人喜剧团体,他们制作的肥皂剧在七、八十年代特别受欢迎,吸引了众多的粉丝,吉多就是其中的粉丝之一。因此,新的编程语言被吉多命名为Python,也就不足为怪了。

08.jpg

记住,Python的创始人

09.jpg

吉多·范罗苏姆


Python语言是在ABC语言的基础上创建的新的编程语言,由此可见Python语言本身就与数学密切相关。

数值计算与编程

四则运算是基本的数值计算,也是最简单的数值计算。


07.png

复杂的数值计算包括解多元方程组、积分、微分等运算。

09.png


这类复杂计算有时依靠人的脑力很难计算,需要借助于计算机并编写计算程序才能完成。一些运算量比较大的简单四则运算也需要借助程序来完成运算。


10.png

一个运算量越来越大的四则运算

11.png

先做2X1运算,运算的值是2;

再做3X2X1运算,运算的值是6;继续做4X3X2X1运算,运算的值是24;再做5X4X3X2X1运算,运算的值是120;一直到nX(n-1)X(n-2)X3X2X1的运算,这里的n是指自然数1、2、3、4、5、6、……

12.png

类似上面的运算也称为阶乘运算,阶乘运算是所有小于及等于该数的自然数的积。例如自然数6的阶乘运算是:6 X 5 X 4 X 3 X 2 X 1 = 720当n的值超过20时,依靠人力运算已经很困难了,这时就需要借助计算机程序来完成运算了。

12.png

上面的图看不明白,别着急!

图中的factorial(n)是函数,它是用来计算n的阶乘的,可以把函数看作一个黑盒,把n扔进黑盒,黑盒就会输出n的阶乘。


14.png

下面是factorial(n)黑盒的内幕,来看看它是如何计算n的阶乘的。

15.png

factorial(n)黑盒的内幕就是一段Python代码,如果对Python代码完全不了解,暂时可以认为它是外星人语言。计算机也不懂这种外星人语言,更不会执行这种外星人语言。

16.png

如果要让计算机执行外星人语言,就需要一个翻译,负责把外星人语言翻译成机器能识别和执行的语言,这个翻译就是Python解释器

17.png

Python解释器会把外星人语言翻译成二进制语言,虽然我们人类不懂这种二进制语言,但计算机喜欢二进制语言,并且能执行二进制语言。

用二进制语言有点深奥,还是用我们的人类语言。Python解释器会把factorial(n)的代码解释成多条最基本的四则运算。

18.png

编程与数学建模

我们为什么要学习数学,学习数学的目的是什么呢?


19.png

学习数学仅仅是为了认识数字,会写会算吗?我相信大多数读者不会赞同我的回答。我们学习数学不只是要认识数字,会写会算,还要能通过学过的数学知识解决现实中存在的问题,将现实生活中的问题转化为数学问题并予以解决。

20.png

这就要求对现实生活中的问题进行数学建模,并验证模型的正确性。数学模型的实现与验证一般都是通过计算机编程来实现。

21.png

一个完整的数学建模过程主要有四部分组成:

(1) 对现实问题进行描述;

(2) 用适当方法建立数学模型

(3) 采用各种数学和计算机手段求解模型;

(4) 验证模型运行的正确性。

22.png


要解决这个问题,可以通过观察法找出闰年出现的规律,利用观察到的规律建立数学模型。


23.png


观察法需要观测大量数据,发现的规律才比较靠谱。这里给出了16个闰年年份,数据量不大,主要是为了说明问题,其次建模后可以通过程序验证模型的正确性。


26.png

通过观察法可以找出年份与闰年的规律:一是年份可以被400整除的是闰年;二是年份被4整除但不能被100整除的是闰年。这样就建立了数学模型,也就是求解模型。

27.png


我们来判断2016年是否是闰年,根据判断闰年的数学模型,首先判断2016是否能被400整除,2016不能被400整除。再判断2016是否能被4整除,并且不能被100整除,我们发现2016能被4整除,但不能被100整除,因此2016是闰年。


28.png


虽然建立了判断闰年模型。但如果让你用模型找出近200年来的闰年,估计你也会皱眉头,运算太麻烦了。
有了Python就好办了,可以为判断闰年的模型编写一个程序,然后执行这个程序就可以很轻松找出近200年来的闰年了。

def leapyear(year):
  if year % 400 == 0:
     return "闰年"
  elif year % 4 == 0 and year % 100 !=0:
     return "闰年"
  return "不是闰年"

数学实验与编程

抽象能力和空间想象能力对学好数学非常重要,尤其对中学、小学高年级的学生们来说,是培养抽象能力和空间想象非常重要的阶段。要提高抽象能力和空间想象能力,数学实验是很重要的方法。


30.png


在我们不识数的时候,爸爸妈妈会让我们数指头,数苹果、数人数等等,这就是数学实验。通过数数我们逐渐理解了1、2、3、4、5、6等数字的概念,数字是个抽象的概念。

说它抽象,是因为数字是看不见、摸不着的,虽然可以把数字的符号写在纸上,但这个数字符号并没有和我们所熟知的自然界的事物联系起来。

通过数数这个数学实验,同学们就会把数字符号和对应的几个苹果、几个手指、几个人等联系起来,也就自然理解了数字的概念。


平移.gif

笑脸当前在A点,现在让笑脸由A点移动到B点。通过动画,学生很容易理解图形平移的概念。这种图形的平移动画就是图形平移的数学实验。

二次函数.gif

学生学习函数时,对函数的理解往往要借助于函数图像,对函数有直观的认识。绘制函数图像就是数学实验,函数图像一般都通过程序来绘制。
编程是学好数学的一个非常重要的工具。同学们在学习数学的过程中,可以通过学到的编程知识,来求解和验证数学模型,也可以构建数学实验,将抽象的数学知识通过动画、图形展现出来,在感知和抽象中架起一座桥梁,用于更好地理解数学概念。

思考与练习

(1)Python语言的创始人是谁?请从下列选项中选择正确的一项。

  A.英国人吉多·范罗苏姆  

  B.加拿大人詹姆斯·高斯林  

  C.美国人丹尼斯·里奇  

  D.美国人拉里·沃尔
(2)吉多·范罗苏姆为什么要把新的编程语言命名为Python?请从下列选项中选择正确的一项。

  A.  因为他喜欢蟒蛇 

  B.  没啥原因,是吉多随意选了一个名字

  C.吉多迷上了英国肥皂剧《Monty Python飞行马戏团》,他从这个肥皂剧的名称中选择了Python

  D. 以上原因都不对
(3)5的阶乘是多少?请从下列选项中选择正确的一项。 

  A.24 

  B.120 

  C.720 

  D.15
(4)20的阶乘结果是多少位数?请从下列选项中选择正确的一项。

  A.18 

  B.20 

  C.21 

  D.19
(5)你能说出判断年份是否是闰年的计算过程吗?

(6)要测量圆形瓶盖的周长,如何测量呢?

代码在线纠错(通义千问 qwen-max)

支持粘贴多个代码文件,提交后由阿里云通义千问自动分析代码漏洞、语法错误、逻辑问题并给出修改建议。
您已解锁 AI 代码纠错功能,可正常使用!

评论区

登录 后发表评论
烟花三月 2021-06-26 12:28

挺好的,孩子学的很开心。

郎宏林 2021-06-26 14:26

<p>很高兴能够帮助孩子成长!</p>

明辉 2021-03-20 17:30

这可不是一般人能学过来的,例如我。。。

郎宏林 2021-03-20 19:47

<p>只要感兴趣,什么都能学会</p>

喵酱 2020-12-10 16:28

厉害,放假就开始学

明月清风 2020-05-21 16:47

有点简单。学的还行。

我要好好学,加油 2020-05-10 11:20

????????????

13030777599 2020-05-10 11:16

我丢,慢慢学,嘿嘿