(共21张PPT)
信息技术 必修1 :数据与计算
第三章 算法基础
3.1 体验计算机解决问题的过程
知识回顾
第二章 知识与数字化学习
2.1 知识与智慧
智慧
知识
信息
数据
达到预定目标而运用知识
解决问题的创新思维能力
对获取或积累的信息进行系统
化地提炼、研究和分析的结果
经过加工处理、具有意义的数据
客观事物的符号记录
第二章 知识与数字化学习
2.2数字化学习与创新
数字化工具是指能够采集、获取、检索、表示、传输、存储和加工多媒体数字化资源的设备装置。
数字化工具 按功能分类
知识回顾
第二章 知识与数字化学习
2.2数字化学习与创新
数字化资源是指经过数字化工具处理,可以在多媒体计算机上或网络环境下运行的,且可以实现共享的多媒体材料。
数字化资源 按呈现方式分类
数字图形、图像、视频、音频、文本等
多媒体应用软件、网站、信息系统等
计算机模拟、数据文件、数据库等
知识回顾
第二章 知识与数字化学习
2.2数字化学习与创新
知识回顾
项目范例
设计从A市到B市耗时最少的旅行路线方案
第三章 算法基础
当从A市到B市没有直达的交通工具时(不考虑水上交通工具),人们可以利用铁路公司、汽车客运公司和航空公司公布的信息,设计出耗时最少的旅行路线。
图3-1 中国高铁
设计从A市到B市耗时最少的旅行路线方案
体验人工解决问题
体
验
分析题解决步骤:
1.用穷举法列出从A市经B1市的各班次的耗时,及相应可中转的B1市到B市的各班次的等待时长及行程耗时;
2.算出各组合的总耗时;
3.找到耗时最少的路线。
表3-1-1 从A市经B1市到B市的交通情况
3.1.1
人工解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
A
B1
B
M1
M7
N1
N9
从A市经B1市到B市的交通情况分析结果
表3-1-2 从A市经B1市到B市可组合班次情况
体验人工解决问题
体
验
3.1.1
人工解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
如果从A市到B市中转的城市有k个,且分别有不同的交通工具及班次:
组合班次有S=M1 ×N1+M2 ×N2+…… +Mk ×Nk
分
析
A
B1
…
Bk
B
当数据量很大,人工处理效率很低时,我们可以借助计算机工具,通过编制计算机程序来解决问题。
3.1.1
人工解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
分析问题
设计算法
编写程序
调试运行程序
计算机程序解决问题的过程
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
【分析问题】
利用大数据挖掘技术的爬虫程序获取
从A市到B市途径中转城市B1、B2……
所有交通班次数据,经过数据清洗后,
形成结构化数据(如图)
分析问题的需求情况、已知条件和需要解决的问题
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
【设计算法】
问题分析清楚后,需要给出解决问题的详细方法和步骤
(1)分别算出能够从A市经B1 ,B2 ,…,Bk市中转到达B市且中转时间不少于1个钟的所有班次,并计算所用的时间;
(2)分别找出能够从A市经B1 ,B2 ,…,Bk市中转到达B市中耗时最少的班次,共k条线路;
(3)取k条线路中耗时最少的班次为最佳路线。
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
【设计算法】
7h
11h
6:10h
8:40h
10:40h
最佳路线为:
7h
6:10h
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
【设计算法】
最佳路线为:
6:10h
8h
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
【编写程序】路线方案程序代码(部分)
m=99
for i in range(1,rs1):
t14 = table_1.cell(i,4).value
t12 = t14-table_1.cell(i,2).value
for j in range(1,rs2):
t22 = table_2.cell(j,2).value
if t14 - t22>=1/24:
m1=t12+(t22-t14)+(table_2.cell(j,4).value-t22)
if m>m1:
m=m1
r1=i
r2=j
##A到Bk到站时间点
##A到Bk花费时间
## Bk到B发车时间
##中转候车时间
##总时间
##对比花费时间
##记录更短时间
##记录更短时间路线
##A到Bk路线循环
## Bk到B路线循环
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
【调试运行程序】
程序调试是将编制的程序投入实际运行前,用手工或 编译程序等方法进行测试,修正语法错误和逻辑错误的过程。这是保证计算机信息系统正确性的必不可少的步骤。
求解问题的方式 相同点 不同点
人工求解问题 分析问题、设计算法、得出结果、验算结果 每次只能对特定的问题进行解答,运算速度慢,不需要借助计算机工具。
用计算机求解问题 编写程序、调试程序、运行速度快,通用性强。
人工求解与计算机求解问题的方式的异同:
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
【活动】利用Magic Scratch 绘图
画图效果:
分析问题:
1、边长相等
2、内角为60度
设计算法:
开始
设置画笔
(颜色、大小、位置)
移动画笔20步长
向右旋转画笔60度
满6次?
否
结束
是
任务:尝试利用魔法编程绘画出六边形
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程
【思考】
如果想绘制出不同的图,要怎么办??
第三章 算法基础
3.1体验计算机解决问题的过程
【活动】利用Magic Scratch 绘图
画图效果:
分析问题:
1、边长相等
2、内角为60度
3、外一个比内一个边长增加x
设计算法:
开始
设置画笔
(颜色、大小、位置)
移动画笔x步长
向右旋转画笔60度
满6次?
否
是
任务:尝试利用魔法编程在六边形基础上修改绘出上图
设置值x=10
X的值增加10
满10次?
结束
是
否
3.1.2
计算机解决问题的过程
【思考】
如果想绘制出不同的图,要怎么办??
3.1.2
计算机解决问题的过程
第三章 算法基础
3.1体验计算机解决问题的过程