《算法简介及程序基本结构.pptx》由会员分享,可在线阅读,更多相关《算法简介及程序基本结构.pptx(21页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、例例1.有有50个学生个学生,要求将他们之中成绩在,要求将他们之中成绩在80分以上者打印出来。分以上者打印出来。用用n表示学号,表示学号,n1代表第一个学生学号,代表第一个学生学号,ni代表第代表第i个学生学号。个学生学号。用用g代表学生成绩,代表学生成绩,gi 代表第代表第i个学生成绩,算法可表示如下:个学生成绩,算法可表示如下:S1:1i S2:如果:如果gi 80,则打印,则打印 ni 和和gi ,否则不打印,否则不打印S3:i+1 i S4:如果如果 i 50,返回返回S2,继续执行;继续执行;否则,算法结束。否则,算法结束。2.2 简单算法举例简单算法举例(用自然语言描述法)用自然语
2、言描述法)第1页/共21页例例2 将学生百分成绩按分数段分级的程序。将学生百分成绩按分数段分级的程序。该算法的核心部分是对输入的每一个数进行比较判断,该算法的核心部分是对输入的每一个数进行比较判断,以确定属于的级别。若学生成绩分布是均匀的,算法描述以确定属于的级别。若学生成绩分布是均匀的,算法描述如下:如下:S1:1i S2:a60 a70 a80 a90 不及格中等良好优秀及格YNYNYNYN输入10000个数据,则需进行31500次比较。S3:i+1 iS4:如果如果i 10000,返回返回S2;否则,算法结束。否则,算法结束。转S3转S3转S3转S3转S3第2页/共21页分数分数0596
3、069707980899099比例比例0.050.150.40.30.10 不及格Y a90 a80 a70 aii50输出gi 和 nii+1=ii50结束YNN输入ni和gi i+1=igi=80N1=iY第8页/共21页2.4.3 2.4.3 程序的三种基本结构和程序的三种基本结构和改进的流程图(改进的流程图(N-SN-S结构流程图)一、顺序结构 BA (a)AB (b)先执行A操作,再执行B操作,两者是顺序执行关系。N-S结构流程图第9页/共21页二、选择结构当P条件为真时,执行A模块,否则执行B模块。APB真假(a)P真假AB(b)第10页/共21页三、循环结构当P条件成立时,反复执
4、行A,直到P为假。1.当型循环结构当型循环结构PA假真(a)当P为真A(b)当P为真第11页/共21页2.2.直到型循环结构直到型循环结构先执行A操作,再判断P是否为假,若P为假,再执行A,直到P为真为止。AP假真(a)A直到P为真 (b)第12页/共21页1=i输入ni和和gii+1=i直到i501=i gi=80真假输出ni和和gii+1=i直到i50开始1=ii50输出gi 和 nii+1=ii50结束YNN输入ni和gi i+1=igi=80N1=iY第13页/共21页2.4.5 用伪代码表示算法:用介于自然语言和计算机语言之间用伪代码表示算法:用介于自然语言和计算机语言之间的文字和符
5、号来描述算法的文字和符号来描述算法 BEGIN 1 =i while(i 50)input ni和和gi i+1=I 1 =i while(i 50)if(gi =80)print ni和和gi i+1=i END 第14页/共21页2.4.6 用计算机语言表示算法 例4:求 1-1/2+1/3 1/4+1/99 1/100。S1:1 signS2:1 sumS3:2 denoS4:(-1)*sign signS5:sign*(1/deno)termS6:sum+term sumS7:deno+1 denoS8:若若deno 100 返回返回S4;否则算法结束。;否则算法结束。main()in
6、t sign=1;float deno=2.0,sum=1.0,term;while(deno=100)sign=-sign;term=sign/deno;sum=sum+term;deno=deno+1;printf(“%f”,sum);第15页/共21页2.4 2.4 结构化程序设计方法结构化程序设计方法1.自顶向下2.逐步细化3.模块化设计4.结构化编码第16页/共21页第17页/共21页第18页/共21页读输入 输入处理;return 输入;编辑输入 编辑输入处理;return 编辑好的输入;第19页/共21页结果格式化 结果格式化处理;return 格式化结果;显示结果 显示结果处理;第20页/共21页感谢您的观看!第21页/共21页