算法及其描述-粤教版(2019)高中信息技术必修1_第1页
算法及其描述-粤教版(2019)高中信息技术必修1_第2页
算法及其描述-粤教版(2019)高中信息技术必修1_第3页
算法及其描述-粤教版(2019)高中信息技术必修1_第4页
算法及其描述-粤教版(2019)高中信息技术必修1_第5页
已阅读5页,还剩19页未读 继续免费阅读

下载本文档

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

文档简介

1、第二节 算法及其描述李英琼编制计算机程序解决问题的全过程分析问题设计算法编写程序调试运行检测结果编程重要的是逻辑思路,确定解决问题的详细方法和步骤,即设计算法。算法是指在有限步骤内求解某一问题所使用的一组定义明确的规则,是能够被机械执行的动作或者指令的有穷集合。算法的特征数据输入:一个算法有零个或多个输入;确定性:算法执行的每一步必须有确切的定义,不可含混不清;有穷性:一个算法在执行有穷步之后必须结束;数据输出:一个算法有一个或多个输出,即最后的结果可行性:算法中执行的任何计算步骤都可以被分解成基本的可执行的操作步骤,即每个基本步骤都可以在有限时间内完成。高一数学模块三中1.2基本算法语句P2

2、4例题3 A=10 A=A+15 PRINT A ENDP24例题4 INPUT A,B PRINT A,B X=A A=B B=X PRINT A,B END0个输入,1个输出。2个输入,4个输出。农夫过河的步骤: 、农夫带着羊先过河; 、农夫回来后再将蔬菜带过河; 、将蔬菜渡完河时,把羊再带回来; 、把羊放下将狼乘船过河 最后农夫回来再带着羊乘船过河1、自然语言描述自然语言就是人们平时交流使用的语言,如果汉语、英语、日语等。算法的描述:提出问题:用自然语言描述“求两个正整数中值较大的数”的方法。分析问题:(已知什么?要求什么?)设计算法:(如何从已知到结果)第一步:输入两个正整数a,b;第

3、二步:如果a大于b,则将a的值赋给max,否则将b的值赋给max;第三步:打印:”最大值为“max.牛刀小试12、流程图描述图形符号名 称功 能终端框(起止框)表示一个算法的起始和结束输入、输出框表示一个算法输入和输出的信息处理框(执行框)赋值、计算判断框判断条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”流程线连接程序框提出问题:用流程图描述“求两个正整数中值较大的数”的算法。开始输入a,b max=a ab max=b输出最大值max结束YN牛刀小试2思考:计算机能够帮助我们求解吗?用伪代码描述算法就是用介于自然语言和计算机语言之间的文字和符号来描述算法。易于理解

4、,便于向计算机程序设计语言过渡。易易于理解,便于向计算机程序设计语言过渡。于理解,便于向计算机程序设计语言过渡。现有100钱,公鸡5文钱一只,母鸡3文钱一只,小鸡一文钱3只要求:公鸡、母鸡,小鸡都要有,把100文钱花完,买的鸡的数量正好是100。问:一共能买多少只公鸡,多少只母鸡,多少只小鸡?百钱百鸡算法代码一for x in range(1,20): for y in range(1,30): z = 100 - x - y if 5 * x + 3 * y + z / 3 = 100 and z % 3 = 0: print(公鸡 + str(x) + 只, + 母鸡 + str(y) +

5、 只, + 小鸡 + str(z) + 只)for cock in range(1,101): # 公鸡 for hen in range(1,101): #母鸡 for chick in range(1,101): #小鸡 if cock * 5 + hen * 3 + chick = 100: if cock + hen + chick * 3 = 100: print(公鸡有%d只t母鸡有%d只t小鸡有%d只%(cock,hen,chick * 3)百钱百鸡算法代码二代码运行结果:公鸡有4只母鸡有18只小鸡有78只公鸡有8只母鸡有11只小鸡有81只公鸡有12只母鸡有4只小鸡有84只分析归

6、纳算法三种描述方法的优劣。算法描述方法优势不足自然语言表示法 流程图表示法 伪代码表示法 分析归纳算法三种描述方法的优劣。算法在计算机解决问题过程中的地位和作用求两个正整数的最大公约数。(1)、(12、16) (2)、(2678945、465)2、更相减损术:(1)、(12、16)(12、4) (8、4) (4、4)(2)、(2678945、465) (2678485、465) (2678020、465) (2677555、465) (2677090、465)1、辗转相除法:(1)、(12、16)(12、4) (4) (2)、(2678945、465) (465、80) (80、65) (65

7、、15) (15、5) (5)结论:对于第二组数据,“辗转相除法”算法的效率明显高于“更相减损术”。解决同一个问题的算法不是唯一的,选择不同的算法编写的程序,计算机运行的效率会有很大的差异。因此算法的设计在应用计算机解决问题的过程中有着十分重要的作用。算法的三种基本控制结构阅读课本52页内容,结合下图,分析三种基本控制结构主要作用。算法的三种基本结构语句1语句2顺序结构表示程序中各个步骤按照出现的先后顺序依次执行。程序的三种基本结构选择结构表示程序的处理步骤出现了分支,需要按照某一个特定的条件选择其中一个分支执行,有单选择,双选择,多选择。条件语句1语句2YN程序的三种基本结构循环结构表示反复执行某些操作直到判断条件为假或者为真时才结束循环。条件条件语句组YNYN语句组课堂练习1、用计算机解决某个问题,问题分析清楚后,给出解决这个问题的( ),这个过程称为设计算法。A、编程语言B、程序代码C、方法和步骤D、加密措施2、用流程图表示条件“AB”是否成立,要用到以下哪个图形?()A 平行四边形 B 菱形 C 圆角矩形 D直角矩形CB复习归纳:算法的概念:

温馨提示

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

评论

0/150

提交评论