算法的概念及描述、控制结构、解决问题的过程 课件 2022-2023学年高中信息技术浙教版(2019)必修1_第1页
算法的概念及描述、控制结构、解决问题的过程 课件 2022-2023学年高中信息技术浙教版(2019)必修1_第2页
算法的概念及描述、控制结构、解决问题的过程 课件 2022-2023学年高中信息技术浙教版(2019)必修1_第3页
算法的概念及描述、控制结构、解决问题的过程 课件 2022-2023学年高中信息技术浙教版(2019)必修1_第4页
算法的概念及描述、控制结构、解决问题的过程 课件 2022-2023学年高中信息技术浙教版(2019)必修1_第5页
已阅读5页,还剩27页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第2章算法与问题解决浙教版(2019版)信息技术(高中)必修1

数据与计算2.1算法的概念及描述

学习目标123算法的概念。算法的特征。算法的要素。算法的描述。431里脊肉切厚一点的大片。2肉中加少许盐、料酒腌一下。3葱、姜、胡萝卜切细丝。4碗中加三小勺醋、两小勺糖、一小勺生抽兑成汁。5淀粉加适量水、一小勺食用油,调成比较稠的糊,倒入肉片中,用手抓匀。6锅中放多一些油,油烧至七成热时,将肉片一片片放入油里,中火炸制,炸到稍上色时捞出,等油烧热后,重新入油锅中炸一遍,炸至金黄捞出。7锅内留少许底油,放入葱姜丝、胡萝卜丝煸炒出香味。8倒入炸好的肉片。烹入碗汁,翻炒均匀。9烹入碗汁,翻炒均匀。古代的算法主要指的是“算术”,即数值的算术运算。随着科学技术的发展,算法的内涵和外延逐渐发生变化。古代的算法广义地讲,算法指的是解决问题或完成任务的一系列步骤。既包括传统意义上计算任务,也可以是生活中各种事物的处理。广义算法

计算机领域内,算法指的是用计算机解决问题的步骤。是为了解决问题而让计算机执行的有序、无歧义的,有限步骤的集合。1、

算法的定义计算机算法拓展链接穷举算法也称枚举算法,指的是在求解过程中,先按照一定的顺序一一列所有可能的解,然后用条件判断列举出的可能解是否为正确解。穷举法一般适合解决解集为离散的且范围明确的问题。“鸡翁一,值钱五;鸡母一,值钱三;鸡雏三,值钱一;百钱买鸡百,问翁、母、雏各几何?”这是我国古代数学家在《算经》中提出的经典问题。同时,他还在书中给出了解决该问题的算法“鸡翁每增四,鸡母每减七,鸡雏每益三,即得"。百钱买百鸡穷举算法2算法的特征图2.1.1高一新生报到流程著名数学家华罗庚曾经提出“烧水泡茶问题”,水壶和杯子未洗,水未烧,但是要泡茶喝,我们该怎么办?给出你的解决方案,写明步骤过程。(提示:考虑一下那些事情是可以同时完成的)2、算法的特征√

有穷性

算法必须能在执行有限个步骤之后终止。√

确定性算法中的每一次运算都有明确的定义,具有无二义性,并且可以通过计算得到唯一的结果。√

0个或多个输入项一个算法有0个或多个输入。所谓0个输入是指本身给出了初始条件。√

1个或多个输出项算法一定要有输出。任何算法都不能“无功而返”。√

可行性算法中执行的任何运算都可以在有限的时间内完成。3、算法的要素数据运算控制

转移

用算法解决问题时,必须明确参与运算的初始数据、运算时产生的中间数据以及代表问题解决的结果数据。在对数据进行运算时,必须明确每一步的运算是什么、对哪些数据进行运算等。在算法执行过程中,有时需要根据数据或运算结果的特点进行不同的处理,这时就需要运用控制转移来执行不同的操作。习题练习9例1:下列关于算法的概念及描述,说法正确的是(

)A.算法就是数学运算方法B.算法的第一个执行步骤必须是数据输入C.算法的一个步骤可以被执行多次D.算法只能用自然语言进行描述C10观看视频“机器人工作原理”很多设备的“自动”功能,都是内部算法控制的结果。比如,在夏天把空调温度设定在26℃(如图2.1.4所示),每当空调内部的温度传感器测得室内温度小于或等于26℃时,算法就会“告诉”空调已经到达目标温度,可以暂停工作,空调就会“自动”暂时关闭压缩机的运行。这样,既确保了室内温度,又实现了节能环保。还有很多设备用算法来帮助设备实现自动化。与同学讨论交流,哪些设备来用算法实现了自动化?并尝试说出这些设备实现自动化控制的算法。问题与讨论:2.1.2算法的描述1、用自然语言描述算法图2.1.5停车场中的车位探测解决本问题的算法可以用自然语言描述如下。(1)输入变量flag的值。(2)若flag的值为1,则设置指示灯为绿色,输出“空车位”;否则,设置指示灯为红色,输出“非空车位”。2、用流程图描述算法图形名称功能开始/结束符表示算法的开始或结束输入/输出表示数据的输入或输出处理框表示数据的运算处理判断框表示算法中的条件判断流程线表示算法中的流向连接点表示算法中的转接“N-S图”是由美国学者纳西(Nassi)和斯奈德曼(Shneiderman)提出的一种在流程图中完全去掉流程线,全部算法写在一个矩形框内的算法描述方式。相比于原来的流程图描述,结构性显得更好,也更有助于高效地编写程序。前面车位探测中的算法,可用N-S图表示成如下形式。输入flag的值指示灯绿色指示灯红色输出“空车位”输出“非空车位”Flag=1?是否拓展链接:3、用伪代码描述算法伪代码指的是一种比较直观简洁的、符号接近计算机程序代码的算法描述方式,其风格很像计算机程序设计语言,但又不是真正的可以被计算机理解的代码。伪代码的表示方法没有统一、严格的规定,只要定义合理、表达正确即可。格式1:If条件then(语句序列1)Else(语句序列2)格式2:If条件then(语句序列1)格式:while条件

(循环体)条件判断语句循环语句Flag车位探测结果;#将测得的车位当前状态值输入给变量flagIfflag=1then

(指示灯绿色输出“空车位”)Else

(指示灯红色

输出“非空车位”)4、用计算机程序设计语言描述算法前面车位探测中的算法可以用C++程序设计语言描述如下:

voidMainWindow::on_pushButton_clickedO{intflag=ui->lineEdit->textO.toIntO;if(flag==1)(ui->label_4->setStyleSheet("color:green;");ui->label_4->setText("绿色");ui->label_5->setText("空车位”);}else{ui->label_4->setStyleSheet("color:red;");ui->label_4->setText("红色”);ui->label_5->setText("非空车位”);}}该程序的运行结果分别如图2.1.7和图2.1.8所示。该算法还可以用Python程序设计语言描述如下:flag=int(input(“输入车位状态值:"))ifflag==1:print("绿色”)print("空车位")else:print("红色”)print("非空车位")计算机程序设计语言计算机程序设计语言经历了“机器语言一汇编语言一高级语言”的发展历程。机器语言中的指令由“0”“1”二进制码组成,机器执行效率高但可读性、维护性差。为了提升编程的效率,科学家用特定的符号(助记符)来表示各个机器指令,发明了汇编语言。科学家后来又发明了高级语言,用接近人类日常用语的符号来表示各类指令。常见的高级语言有Basic、C、C++、Java、Python、Ruby等。拓展链接图2.1.10智能电饭煲烧饭算法流程图继续高热烧饭变为低热保温思考与练习第2章算法与问题解决浙教版(2019版)信息技术(高中)必修1

数据与计算2.2算法的控制结构

学习目标123顺序结构分支结构循环结构(1)顺序结构:算法中各个步骤按照先后顺序依次执行的结构。案例:网上购买火车票时,必须严格按照顺序依次进行各个步骤。如下图所示。网上购票算法第一个操作第二个操作第三个操作顺序结构抽象(2)分支结构(选择结构):先进行条件判断,再根据判断结果分别执行不同处理的控制结构。案例:判断一元二次方程ax2+bx+c=0是否存在实数根。抽象分支1分支(条件)结构条件满足?分支2是否(3)循环结构:在条件控制下,某些操作步骤需要重复执行(循环)的控制结构。案例:(超市收银系统)收银时,收银员用扫描仪逐个扫描商品上的条形码,随着一连串的“滴”声,收银员可以快速地完成顾客所购商品的费用结算。抽象图2.2.5循环结构算法流程图程序设计中的“累加器”“累加器”指的是算法执行过程中对同类事物或数据进行统计计算的实现技术。上述算法中的Sum+X就起到了累加的作用。算法的三种控制结构顺序结构选择结构(又称分支结构)循环结构计算结果:②处的判断条件:计算结果:35r=1?15智能农业大棚通过传感器、控制器、网络设施和计算机程序等来实现大棚的自动化管理(如图2.2.8).例如,自动温度控制系统中的温度传感器每隔一定时间采集大棚中的温度,一旦温度超过预设的最高温度40℃,控制系统会启动通风和喷水系统实现降温;如果温度低于预设的最低温度18℃,控制系统会启动加热器,给大棚升温。思考与练习:图2.2.8智能农业大棚(1)自动温度控制系统进行温度控制的算法用流程图描述如图2.2.9所示,请完善该流程图,在①、②处填入合适的内容。图2.2.9智能农业大棚温控系统的算法流程图温度超过预设的最高温度?温度低于预设的最低温度?2.3算法解决问题的过程第一步:抽象与建模

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论