必修1 4.3 非数值计算 课件 第1课时(共11张PPT)

文档属性

名称 必修1 4.3 非数值计算 课件 第1课时(共11张PPT)
格式 zip
文件大小 155.1KB
资源类型 试卷
版本资源 教科版(2019)
科目 信息技术(信息科技)
更新时间 2020-09-30 16:30:30

图片预览

文档简介

(共11张PPT)
教科版高中信息技术
第4单元
计算与问题解决
必修1
数据与计算
4.3
非数值计算
第1课时
课堂导入
运行利用python编写的“猜数字”游戏,计算机在1-1000中随机产生一个数,试试看你要猜多少次才能猜中。
猜数字
程序代码和运行结果截图:
二分查找(折半查找):
二分查找又叫折半查找,将数列有序排列,采用跳跃式查找数据;以递增数列为例,先以中点位置的元素作为比较对象,如果要找的元素值小于该中点元素,则将待查序列缩小为左半部分,否则为右半部分;每一次比较后都可以将查找区间缩小一半。
二分查找法是一种高效的查找方法。它可以明显减少比较次数,提高查找效率。在一个有n个元素的有序序列中,利用二分查找大约需要log2n次。
如何实现?
请学生思考:利用自然语言如何描述?利用程序如何实现?
统计二分查找次数的源代码和程序运行截图:


1、理解二分查找思想,运用二分算法解决实际问题


1、尝试用二分法求
x3-
x2
+
x
-
1
=
0在[-5,5]区间的解。
参考答案:
def
f(x):
#定义方程
return
x
3-x
2+x-1
a=float(input("请输入解区间的左边界:"))
b=float(input("请输入解区间的右边界:"))
while
abs(b-a)>1e-6:
x0=(a+b)/2
if
f(a)
f(x0)<0:
b=x0
if
f(b)
f(x0)<0:
a=x0
if
f(x0)==0:
break
print("解为:",x0)
input("运行完毕,请按回车键退出...")
程序源代码和运行界面截图:
拓展知识
1、凡治众如治寡,分数是也。(摘自《孙子兵法》)
2、查找的基本算法有:顺序查找、二分查找,分块查找、哈希查找等。
3、当while循环中执行break语句时,循环会马上终止。
4、python中的sort(
)可以用于数据排序。
例如,以下语句:
x=[4,6,2,1,5,9]
x.sort(
)
可以将列表x按从小到大的顺序排列。
THANKS