算法和算法的表示

整理文档很辛苦,赏杯茶钱您下走!

免费阅读已结束,点击下载阅读编辑剩下 ...

阅读已结束,您可以下载文档离线阅读编辑

资源描述

《信息技术》算法和算法的表示引例:西红柿炒鸡蛋菜谱:西红柿炒鸡蛋第一步:准备两个西红柿和三个鸡蛋,一个碗,一个盆子;第二步:将西红柿清洗干净,切开,放在砧板上;第三步:把三个鸡蛋打在碗里,打散;第四步:点火,向锅里倒少许油,加热至七八成即可;第五步:将鸡蛋倒入锅内,翻炒一分钟左右;第六步:将西红柿倒入锅内,与鸡蛋一同翻炒一到两分钟;第七步:向锅内加少量水,盖上锅盖;第八步:待水煮沸后,再煮两至三分钟;第九步:加适量盐、味精,翻炒;第十步:关火,装盘;菜谱是对厨师做菜方法的描述,乐谱是乐队演奏方法的描述,广播体操图解是对广播体操做法的描述,那么我们如何描述使用计算机解决问题的方法和步骤呢?思考算法算法的概念【课本P4】所谓“算法”就是解题方法和步骤的精确描述。算法描述的是一种有穷的动作序列,即算法是由有限个步骤组成的。在算法中每一步动作的含义应当是明确的(即没有二义性),同时还应该是能行的(即在有限时间内可以做到的)。那么,计算机的算法如何表示呢?算法的表示自然语言计算机语言流程图用人们的日常语言进行算法的描述第一步:1加2得3,记住3;第二步:3加3得6,记住6;第三步:6加4得10,记住10;……用自然语言描述算法通俗易懂,但它的缺点是:⒈比较繁琐冗长⒉容易出现“歧义性”张三要李四把他的笔记本拿来。ifx≥0thenprintxelseprint-x是人们经常用来描述算法的工具,流程图用图框及流程线来表示算法,形象直观流程图基本符号开始结束a=b+cprintca0printaprint-a流程图案例1.把华氏温度值转换成摄氏温度值自然语言描述:1.输入华氏温度值,存入代数(变量)f中2.计算c=(f-32)*5/93.输出摄氏温度值c开始c←(f-32)*5/9输出摄氏温度值c结束输入华氏温度值,存入变量f中顺序结构流程图案例2.比较两个同学的身高,输出较高的那个同学的身高值自然语言描述:1.输入两位同学的身高a,b的值2.比较a和b。如果ab,则把a赋值给变量max;否则,就把b赋值给变量max3.输出结果max开始输入变量a,b的值ab?max←aYmax←bN输出变量max的值结束选择结构流程图案例2.2出租车计价方案:路程在3公里以内按8块钱起步价计算;路程在3公里以上,超出3公里部分按每公里1.5块计算,请你帮出租车司机设计一个计算车费的程序。自然语言描述:1.输入出租车行使路程s2.如果s≤3,则计算m=83.否则m=8+(s-3)*1.54.输出m的值结束m←8s=3?m←8+(s-3)*1.5开始输入变量s值YN输出变量m的值请在你的草稿本上画出流程图!流程图案例3.求n的阶乘(n!=1*2*3*4*…*n-1*n)自然语言描述:1.输入n的值2.f和i被赋以初值13.然后判断i=n是否成立4.如果成立,则执行f=f*i和i=i+1,并回到判断处5.否则结束循环,最后输出变量f的值开始输入变量n的值f←1i←1i≤n结束f←f*ii←i+1Y输出变量f的值Nn!=1*2*3*4*…*n-1*n分析:令f=n!,则f=1*2*3*4*…*(n-1)*n令i1=1,i2=2,i3=3,i4=4,…,in-1=n-1,in=n,则f=i1*i2*i3*i4*…*in-1*in而i2=i1+1,i3=i2+1,i4=i3+1,i5=i4+1,…,in=in-1+1总结:n的阶乘,即f等于多个i的累乘之积,每次i等于上一次i+1,第一个i=1,最后一个i=n循环结构算法的基本执行模式•算法的三种基本执行模式顺序结构选择结构循环结构判断执行YN判断执行NY循环结构判断NY执行1执行2选择结构判断NY执行1执行2

1 / 10
下载文档,编辑使用

©2015-2020 m.777doc.com 三七文档.

备案号:鲁ICP备2024069028号-1 客服联系 QQ:2149211541

×
保存成功