4.2 数值计算 课件-2022—2023学年高中信息技术教科版(2019)必修1(共14张PPT)

资源下载
  1. 二一教育资源

4.2 数值计算 课件-2022—2023学年高中信息技术教科版(2019)必修1(共14张PPT)

资源简介

(共14张PPT)
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
4.2 数值计算
四、计算与问题解决
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
活动1 用WPS表格绘制正弦曲线
利用平时使用的电子表格软件就能绘制函数图像。
方法如下:若以30°为间隔,绘制0~360°之间的正弦函数图像,则首先需要在WPS中完成表格数据的计算。
A B C D
1 x sin(x) sin(-x) sin(2x)/2
2 0 =sin(pi()*A2/180) =sin(pi()*(-A2/180))
3 30
4 60
. . . . . . . . . . . . .
.
.
14 360
任务一 绘制数学函数曲线
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
图像缺点 图像的关键点太少,精度不够,图像不光滑。要提高精度,每隔10度画1个点??
操作步骤:选择数据——插入——x、y散点图——带平滑线的散点图
任务一 绘制数学函数曲线
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
观察图像,会发现要想提高图像的光滑程度,就要减小角度间隔,但间隔增加,工作量也会随之增加:每隔1°画一个点,数据表上就会增加300多行新数据;如果以0.1°为间隔,将有3000多行数据。
在Python中,绘制函数图像一般要用到numpy和matplotlib两个模块,利用这两个模块可以绘制出更精细的函数图像。
计算
绘画
numpy模块 是个科学计算包,其中包含很多数学函数,如三角函数、矩阵计算方法等。
通过arange函数可以创建一个等差数列。例如:arange(0,2*numpy.pi,0.01)表示在0-2pi之间每隔0.01取个值。
matplotlib模块 是python中最出色的绘图库。调用matplotlib.plot函数时,坐标系可以根据数值范围自动生成。show()函数将绘制的图像窗口显示出来。
提示: numpy模块和matplotlib模块要提前安装哦。
模块安装的三种方法:1.把模块文件直接复制到python路径下的/Lib/site-packages文件夹中;2.运行python setup.py install;3.利用安装工具,如pip、easy_install、distribute等;
任务一 绘制数学函数曲线
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
活动2(用Python绘制正弦曲线)借助计算机程序描点,可以达到快速且精确度高的效果。
import numpy as np #导入numpy模块并取个小名为np
import matplotlib.pyplot as plt #导入matplotlib.pyplot并取小名为plt
x=np.arange(0,2*np.pi,0.01) #x在0到2π之间,每隔0.01取一个点
y1=np.sin(x) #用函数解析式计算sin(x)对应的y1值
y2=np.sin(-x) #求sin(-x)对应的y2值
y3=np.sin(2*x)/2 #求sin(2x)/2对应的y3值
plt.plot(x,y1) #绘制sin(x)图像
plt.plot(x,y2) #绘制sin(-x)图像
plt.plot(x,y3) #绘制sin(2*x)/2图像
plt.title('sin(x)') #设置图像标题
plt.xlabel('X') #设置X轴标题
plt.ylabel('Y') #设置Y轴标题
plt.show() #将绘制的函数图像窗口显示出来
input("运行完毕,请按回车键退出...")
优点 绘制的图像比较光滑,精度比较高。
任务一 绘制数学函数曲线
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
课堂练习
补全代码,使用numpy和matplotlib模块,绘制出y=x2-2x+4的图像,x的取值范围是-6<=x<=6,取值间隔为0.001;
_______________________ #导入numpy模块并取名为np
import matplotlib.pyplot as plt
x = np.____________
y=________________
plt.plot(__ , __)
__________________ #绘制函数图像
import numpy as np #加载numpy模块并取名为np
import matplotlib.pyplot as plt #加载matplotlib.pyplot并取名为plt
x=np.arange(-10,12,0.01)
y=x**2-2*x+1
plt.plot(x,y)
plt.title('一元二次方程')
plt.xlabel('X')
plt.ylabel('Y')
plt.show()
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
活动3 (用WPS求解数列)
斐波那契在《计算之书》中提到了一个有趣的兔子问题:假设一对兔子每个月可以生一对小兔子,一对兔子出生后第2个月就开始生小兔子。则一对兔子一年内能繁殖成多少对?10年呢?
从笫3个月起,
每个月大兔子的对数等于上个月大兔子与小兔子的对数之和
(即上个月兔子总对数),
每个月小兔子的对数等于上个月大兔子的对数
(即上上个月兔子总对数)。
也就是说,第五月的兔子总数=第四月兔子总数+第三月兔子总数
任务二 求裴波那契数列
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
活动3 用WPS求解数列
任务二 求裴波那契数列
我们发现,当计算到第74个月的时候,由于数据范围及表示精度的问题,导致结果出错。
借助电子表格软件计算时,只能算到第74个月,而我们需要计算10年即第120个月的兔子数量。
下面,我们借助python语言进行求解。
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
任务二 求裴波那契数列
第1个月和第2个月的兔子对数之和为第3个月的兔子对数
第2个月和第3个月的兔子对数之和为笫4个月的兔子对数…
第118个月和第119个月的兔子对数之和为第120个月的兔子对数
每个月的兔子对数是前两个月的兔子对数之和, 又同时作为下一个月兔子对数的加数。这种重复反馈的过程称为迭代。
活动4 (用Python求解数列)
第n-2个月
第n-1个月
第n个月
第n-1个月
第n个月
第n+1个月
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
任务二 求裴波那契数列
迭代法也称辗转法,是用计算机解决问题的一种基本方法。迭代通常是为了接近并到达所需的目标或结果。每一次对过程的重复被称为一次"迭代”,而每一次迭代得到的结果会被用来作为下一次迭代的初始值。
由于在迭代系列中的每个月份兔子对数只跟前两个月有关,因此在编写程序时,只需两个变量f1记录上上个月的数据,用f2记录上个月的数据。
f1
f2
F1+f2



迭代计算的示意图
迭代算法三个关键步骤:
①确定迭代变量,如f1、f2;②建立迭代关系式;③对迭代过程进行控制。
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
课堂小结
人们对计算机的最初应用大多是数值计算,如函数的计算、方程的求解、数列求和等都属于数值计算。
numpy模块:科学计算包
numpy模块的常用函数:arange(开始参数,结束参数,间隔参数)
numpy.py 就是Π
matplotlib模块是Python中的绘图库。
函数plot(x,y)绘制出关于x,y的函数图像
函数show()显示函数图像
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
迭代:当前第n项是第n-1项和第n-2项之和,又同时作为第n+1项的加数。这种重复反馈的过程称为迭代。
迭代的三个关键步骤:
(l)确定迭代变量
(2)建立迭代关系式;
(3)对迭代过程进行控制
f1
f2
F1+f2



课堂小结
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276
课后作业
尝试用辗转相除法求解两个正整数的最大公约数。
num1=int(input('请输入第一个正整数:'))
num2=int(input('请输入第二个正整数:'))
m=max(num1,num2)
n=min(num1,num2)
r=m % n
while r!=0:
m=n
n=r
r=m % n
print('这两个数的最大公约数为:',n)
input("运行完毕,请按回车键退出...")
惊艳你的
世界
The future is coming and The future is coming
THANKS
THANKS
e7d195523061f1c0c2b73831c94a3edc981f60e396d3e182073EE1468018468A7F192AE5E5CD515B6C3125F8AF6E4EE646174E8CF0B46FD19828DCE8CDA3B3A044A74F0E769C5FA8CB87AB6FC303C8BA3785FAC64AF5424764E128FECAE4CC72BD54E486F2F2A60F51B8A1D54097D49F626B96969F5CCE921267A92A2F22AC8A839D5EE3DCAA21587D0441DCE9CD8276

展开更多......

收起↑

资源预览