2025-2026学年第一学期2.3 用算法解决问题的过程(教学课件)信息技术浙教版(2019)必修1

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

2025-2026学年第一学期2.3 用算法解决问题的过程(教学课件)信息技术浙教版(2019)必修1

资源简介

(共27张PPT)
教材版本册别:浙教版(2019)必修1
高中信息技术
汇报人:Mr.yang
第2章 算法与问题解决
第3节 用算法解决问题的过程(1课时)
学习目录
01.
抽象与建模
02.
设计算法
03.
描述算法
学习目标
1
2
能够根据建立的问题模型,设计合理有效的算法进行解决;
初步掌握根据实际情景,明确问题,进而对问题抽象、建模的方法;
3
能够根据实际需要选择恰当的方式描述算法,提升信息技术学科素养;

课堂导入



“动动有奖”APP系统界面
“动动有奖”是某手机走路计步器程序(程序界面如右图所示),它能根据系统传递给它的走路步数给运动者奖励,运动者可以用累计的“奖金”去换取软件开发商提供的各种体育用品。
APP

课堂导入
每天必须到计步器页面点击“领奖”按钮,才能领取昨日走路奖金;
每天走路满1000步奖励0.3金(不足1000步没有奖励),1000步之后“奖金”按照每2000步再奖励0.1金的规律递增,每天最高奖励不超过3金;
如果连续3天领奖成功,从第4天起走路奖金翻1倍(乘以2),每天最高奖励不超过6金。翻倍期间若有1天没有领奖(即连续每天领奖行为中断),则翻倍权益取消,重新连续3天领奖成功才能继续翻倍。
01
02
03
奖励
规则

课堂导入
下面就在抽象与建模的基础上,尝试设计“动动有奖”的算法。在后续学习了计算机程序设计的知识后,还可以在计算机上实现“动动有奖”算法的程序。
任何一个信息应用系统都是硬件和一系列应用程序的有机结合,上述“动动有奖”APP系统就需要在手机、运动传感器等硬件基础上结合计算机程序来实现。其中计算机程序不仅需要从传感器获得每天的走路步数,还需要根据每天是否成功领奖来确定“奖金”是否翻倍。
抽象与建模
01

抽象与建模
小组
讨论
剖析:“动动有奖计步器程序”的算法实现
走路的总天数、每天走路步数、前一天是否已经领取了奖励。
(1)我们已经知道哪些数据?
走路总天数用n 、每天走路步数用X
前一天是否领取奖励用F表示(1表示领取,0表示未领取)
(2)这些数据如何表示?
这款应用实现领奖的最终统计的是n天后一共获得的奖励金总数,可以用total表示。
(3)最终目的是什么?

抽象与建模
抽象与建模指的是从现实项目的真实情境中提炼出核心的要素并加以确定或假设,最终定义出一个有明确已知条件和求解目标的问题,并用数学符号描述解决该问题的计算模型。
对于本问题,可以依次通过一系列步骤逐步分析出计算模型。

抽象与建模
提炼核心要素并加以确定或假设
本问题的已知数据包含了每天走路的步数,以及每天是否成功领取前一天奖金的标记。因为这些数据在事先都是不确定的,所以需要通过输入将数据传递给算法,不妨用变量X来表示每天走路的步数,用F表示是否成功领取了每天的奖金(1表示成功领取,0表示没有领取)。
为了使建立的问题模型具有一般性,可以认为需要统计的走路天数是不定的,所以用变量 n 来表示这个可变的数据。

抽象与建模
用数学符号描述解决问题的计算模型
明确了问题的已知条件后,需要明确问题的解决目标。这个问题的解决目标比较直接,就是统计 n 天过去后,该用户一共拥有的“奖金”总数。
基于上述分析,可以得出解决该问题的计算模型:
设计算法
02

设计算法
计算模型
设计算法
遵循算法的特征
围绕算法的要素
(2)
(1)
(3)
对任何数据的处理,总体上都需要经历下列三个步骤:
输入
数据
处理
数据
输出处理结果

设计算法
循环控制结构设计算法
同学们思考一下,可以用哪种算法控制结构设计算法?
本问题需要输入的数据是数据数量规模n以及n组Xi,Fi的值。
处理数据时,需要根据计算模型对每组Xi ,Fi (1≤i≤n)依次进行处理。由于每天处理数据的规律是相同的,所以数据处理部分可用循环结构来解决,每执行一次循环体就处理一天的数据。

设计算法
输入总天数n;
01
表示天数的变量i初始化为1;
02
若 i ≤n,则转④,否则转⑦;
03
输入第 i 天的数据(包括第 i 天走路步数 Xi,是否成功领取第 i 天“奖金”的标记 Fi);
04
根据当前输入的数据Xi,Fi,统计该天领取的奖金并累加到总奖金total中;
05
表示天数的变量i增加1,然后转③;
06
输出变量total的值。
07
按照“自顶向下、逐步细化”的结构化程序设计思想,对前面的算法进行如下细化:
描述算法
03

描述算法
为了判断“奖金” 是否翻倍,用变量c保存连续成功领奖的天数。
“动动有奖”
APP的算法
流程图

描述算法
请以小组为单位,尝试分析算法流程图,并完成下列问题。
2.c 的作用是什么
3.如何计算每天奖金“t”。
1.流程图中i 和total 的作用是什么?

算法的描述
常用算法介绍
本例采用模拟策略来设计算法,即根据现实事务的实际流程和要求逐步进行处理,以达到数据处理的目标。计算机科学家根据各种问题的模型特征提出了各种针对性的算法设计策略,如穷举算法、顺序查找算法、对分查找算法、冒泡排序算法、深度优先搜索法以及动态规划等。
拓展链接
小结
04

小结
课堂小练
05

课堂小练
只需知道数据之间相互链接的顺序
探讨与讨论
1.使用算法解决实际问题时,首先应该做的是( )
A.抽象与建模 B.设计算法
C.描述算法 D.编写程序
A
答案:A
详解:本题主要考查算法解决问题。使用算法解决实际问题时,首先应该做的是抽象与建模,其次是描述、设计算法以及编写程序,故本题选A选项。

课堂小练
只需知道数据之间相互链接的顺序
探讨与讨论
2.做匀加速直线运动的物体的瞬时速度计算公式是v=v+at,其中v是初速度,a是加速度,t是时间。设计的算法步骤有:
①用公式计算瞬时速度v=v+at;
②输入初速度v、加速度a和时间t;
③结束;
④输出结果v。
其正确的顺序是( )
A.②①④③ B.①②③④ C.④②③① D.①④②③
A
答案:A
详解:本题考查算法的描述,先输入数据,再用公式计算(处理数据),输出结果,最后结束。本题答案选A。

课堂小练
只需知道数据之间相互链接的顺序
探讨与讨论
3.关于计算机解决问题的过程,以下说法错误的是( )
A.分析问题需要搞清楚需求情况、已知条件和待解问题
B.设计算法需要给出解决问题的详细方法和步骤
C.编写程序必须使用特定的程序语言
D.调试运行程序是检查程序能否按预期的效果执行
答案:C
详解:本题考查计算机解决问题的过程。编写程序不用必须使用特定的程序语言,可以根据需要使用Python、Java、C等。故选C。

课堂小练
只需知道数据之间相互链接的顺序
探讨与讨论
4.下列编制一元二次方程求解程序的步骤正确的是
A.设计算法→分析问题→调试程序→编写程序
B.分析问题→设计算法→编写程序→调试程序
C.编写程序→调试程序→分析问题→设计算法
D.设计算法→编写程序→调试程序→分析问题
答案:B
详解:本题主要考查计算机解决问题的一般过程。计算机解决问题的一般过程:分析问题→设计算法→编写程序→调试程序,故本题选B选项。
高中信息技术浙教版必修1
谢谢!

展开更多......

收起↑

资源预览