表格模板-第六讲、算法和流程图 精品.ppt

上传人:lao****ou 文档编号:14407 上传时间:2022-09-25 格式:PPT 页数:32 大小:529KB
下载 相关 举报
表格模板-第六讲、算法和流程图 精品.ppt_第1页
第1页 / 共32页
表格模板-第六讲、算法和流程图 精品.ppt_第2页
第2页 / 共32页
表格模板-第六讲、算法和流程图 精品.ppt_第3页
第3页 / 共32页
表格模板-第六讲、算法和流程图 精品.ppt_第4页
第4页 / 共32页
表格模板-第六讲、算法和流程图 精品.ppt_第5页
第5页 / 共32页
亲,该文档总共32页,到这儿已超出免费预览范围,如果喜欢就下载吧!
资源描述

《表格模板-第六讲、算法和流程图 精品.ppt》由会员分享,可在线阅读,更多相关《表格模板-第六讲、算法和流程图 精品.ppt(32页珍藏版)》请在第一文库网上搜索。

1、第第2章、程序的灵魂章、程序的灵魂 算法算法/本章学习目标本章学习目标l理解算法的概念理解算法的概念l了解算法的表示方法了解算法的表示方法l掌握流程图的绘制方法掌握流程图的绘制方法l掌握三种基本结构的流程图掌握三种基本结构的流程图l了解结构化程序设计方法了解结构化程序设计方法/内容进度内容进度l算法算法l算法的表示方法l自然语言自然语言l传统流程图传统流程图lN-S流程图流程图l伪代码伪代码l计算机语言计算机语言l各种表示方法的比较各种表示方法的比较l结构化程序设计方法l文档和注释/算法的引入算法的引入l问题:计算矩形的周长问题:计算矩形的周长l第一步:定义三个变量存储长、宽和周长l第二步:提

2、示用户输入矩型的长和宽l第三步:计算周长,两个长加上两个宽l第四步:打印计算结果l算法的定义:算法的定义:l解决问题所使用的一系列合乎逻辑的、简洁的步骤。lengthwidth/算法与程序关系算法与程序关系l著名科学家沃思(著名科学家沃思(Nikiklaus Wirth)的公式:)的公式:l数据结构算法程序l扩充后的公式:扩充后的公式:l数据结构算法程序设计方法语言和环境程序l算法是灵魂,数据结构是加工对象,语言是工具,程序设计方法是使用手段。/算法的特性算法的特性l有穷性有穷性l确定性确定性l有效性有效性l有零个或多个输入有零个或多个输入l有一个或多个输出有一个或多个输出/算法的分析与优化算

3、法的分析与优化l分析程序的算法设计,应先看主流程图,再逐分析程序的算法设计,应先看主流程图,再逐步细化地分析步细化地分析l了解算法是否实现了任务需求,方法是否合理了解算法是否实现了任务需求,方法是否合理l性能上是否存在瓶颈,能否被优化性能上是否存在瓶颈,能否被优化l如果有多个输入条件,处理时是否覆盖了全部如果有多个输入条件,处理时是否覆盖了全部输入条件输入条件l如果有多个输出结果,其输出是否被系统所定如果有多个输出结果,其输出是否被系统所定义和处理义和处理/内容进度内容进度l算法l算法的表示方法算法的表示方法l自然语言l传统流程图传统流程图lN-S流程图流程图l伪代码伪代码l计算机语言计算机语

4、言l各种表示方法的比较各种表示方法的比较l结构化程序设计方法l文档和注释/算法的表示方法算法的表示方法l案例:判断案例:判断20002500年中的每一年是否年中的每一年是否为闰年。为闰年。l闰年的条件:闰年的条件:l能被4整除,但不能被100整除的年份;l能被100整除,又能被400整除的年份;/自然语言自然语言l自然语言描述:自然语言描述:设y为被检测的年份,则算法可表示如下:lS1:2000y;lS2:若y不能被4整除,则输出y“不是闰年”,然后转到S6; lS3:若y能被4整除,不能被100整除,则输出y“是闰年”,然后转到S6;lS4:若y能被100整除,又能被400整除,输出y“是闰

5、年” ,然后转到S6;lS5:输出y“不是闰年”,然后转到S6;lS6:y+1y;lS7:当y2500时, 返回S2继续执行,否则结束。/自然语言自然语言l使用自然语言描述算法的优缺点:使用自然语言描述算法的优缺点:l优点:l通俗易懂通俗易懂l缺点:l文字冗长文字冗长l含义不太严格,容易出现歧义含义不太严格,容易出现歧义/内容进度内容进度l算法l算法的表示方法算法的表示方法l自然语言自然语言l传统流程图lN-S流程图流程图l伪代码伪代码l计算机语言计算机语言l各种表示方法的比较各种表示方法的比较l结构化程序设计方法l文档和注释/传统流程图传统流程图l用一些图框表示指令或活动的各种操作流程用一些

6、图框表示指令或活动的各种操作流程lANSI规定的常用流程图符号:规定的常用流程图符号:起始框起始框输入输入/输出框输出框判断框判断框处理框处理框流程线流程线连接点连接点注释框注释框/三种基本结构三种基本结构顺序结构顺序结构 选择结构选择结构ABPYNAB/三种基本结构三种基本结构 循环结构循环结构PAY当型(当型(while)循环结构)循环结构NPAYN直到型(直到型(until)循环结构)循环结构/应用举例应用举例l优点:优点:l比较清晰,可以解决任何复杂的问题l缺点:缺点:l流程图比较长,基本结构之间的流程线多余/内容进度内容进度l算法l算法的表示方法算法的表示方法l自然语言自然语言l传统

7、流程图传统流程图lN-S流程图l伪代码伪代码l计算机语言计算机语言l各种表示方法的比较各种表示方法的比较l结构化程序设计方法l文档和注释/N-S流程图流程图l美国学者美国学者I.Nassi和和B.shneiderman提出提出l流程图符号:流程图符号:AB顺序结构顺序结构PYNAB选择结构选择结构当当P成立成立A当型循环结构当型循环结构A直到直到P成立成立直到型循环结构直到型循环结构/应用举例应用举例y+1=y打印打印“非非闰年闰年”l优点:优点:l直观易懂l缺点:缺点:l画起来比较麻烦,不易修改/内容进度内容进度l算法l算法的表示方法算法的表示方法l自然语言自然语言l传统流程图传统流程图lN

8、-S流程图流程图l伪代码l计算机语言计算机语言l各种表示方法的比较各种表示方法的比较l结构化程序设计方法l文档和注释/伪伪代代码码BEGIN(算法开始)(算法开始)2000ywhile yyEND(算法结束算法结束)/内容进度内容进度l算法l算法的表示方法算法的表示方法l自然语言自然语言l传统流程图传统流程图lN-S流程图流程图l伪代码伪代码l计算机语言l各种表示方法的比较各种表示方法的比较l结构化程序设计方法l文档和注释/#include void main() int y=2000; while (y=2500) if(y%4)=0) if(y%100!=0) printf( %d 年是闰

9、年年是闰年n,y); else if(y%400=0) printf( %d 年是闰年年是闰年n,y); else printf( %d 年是非闰年年是非闰年n,y); elseprintf( %d 年是非闰年年是非闰年n,y); y=y+1; 计算机语言计算机语言/内容进度内容进度l算法l算法的表示方法算法的表示方法l自然语言自然语言l传统流程图传统流程图lN-S流程图流程图l伪代码伪代码l计算机语言计算机语言l各种表示方法的比较l结构化程序设计方法l文档和注释/表示方法表示方法优优 点点缺缺 点点自然语言自然语言通俗易懂通俗易懂文字冗长,文字冗长, 含义不含义不太严格,容易出现歧太严格,容

10、易出现歧义义流程图流程图比较清晰,可以解决任何比较清晰,可以解决任何复杂的问题复杂的问题流程图比较长,基本流程图比较长,基本结构之间的流程线多结构之间的流程线多余余N-S流程图流程图直观易懂直观易懂画起来比较麻烦,不画起来比较麻烦,不易修改易修改伪代码伪代码书写比较自由,容易表达书写比较自由,容易表达思想,容易修改思想,容易修改不太直观,容易出现不太直观,容易出现逻辑上的错误逻辑上的错误计算机语言表示计算机语言表示直接在计算机上可以运行,直接在计算机上可以运行,得到结果得到结果必须严格遵守所用语必须严格遵守所用语言的语法规则言的语法规则各种表示方法比较各种表示方法比较/绘制流程图应该注意的事项

11、绘制流程图应该注意的事项l一个流程图只有一个流程图只有一个一个入口点和入口点和一个一个出口点;出口点;l主要画出问题的逻辑处理过程,无需将每一步都画的很详主要画出问题的逻辑处理过程,无需将每一步都画的很详细;细;l如果算法很复杂,则可以先画出大的逻辑关系,再把一些如果算法很复杂,则可以先画出大的逻辑关系,再把一些关键处理步骤细化成的流程图关键处理步骤细化成的流程图;l流程图在流程图在跨页跨页时,需要在流程线上标时,需要在流程线上标注出号码注出号码,以便在下,以便在下一页找出对应关系一页找出对应关系;l让编程人员或读者能够容易读懂流程图。让编程人员或读者能够容易读懂流程图。/内容进度内容进度l算

12、法l算法的表示方法l自然语言自然语言l传统流程图传统流程图lN-S流程图流程图l伪代码伪代码l计算机语言计算机语言l各种表示方法的比较各种表示方法的比较l结构化程序设计方法结构化程序设计方法l文档和注释/结构化程序设计方法结构化程序设计方法lC语言是结构化程序设计方法语言是结构化程序设计方法l优点:优点:l程序便于编写、阅读、修改、维护l程序可靠性较好,质量较高l主要有两种:主要有两种:l自顶向下、逐步细化、模块化设计、结构化编码l把一个复杂问题的求解过程分阶段进行,每个阶段处理的问题把一个复杂问题的求解过程分阶段进行,每个阶段处理的问题都控制在人们容易理解和处理的范围内。例如,建筑楼房。都控

13、制在人们容易理解和处理的范围内。例如,建筑楼房。l优点:程序结构周全、层次分明、容易设计,读者易理解,且优点:程序结构周全、层次分明、容易设计,读者易理解,且修改方便。修改方便。l自下而上、逐步积累l先处理细节和小的地方,然后再组织起来形成系统。先处理细节和小的地方,然后再组织起来形成系统。l缺点:很难考虑周全,往往只注意细节,而容易忽略全局,不缺点:很难考虑周全,往往只注意细节,而容易忽略全局,不符合一般人的思路。符合一般人的思路。/应用举例应用举例l机票预定系统机票预定系统预订机票系统预订机票系统客户信息管理客户信息管理机票查询机票查询机票打印机票打印/应用举例应用举例l逐步细化逐步细化客

14、户信息管理客户信息管理客户信息录入客户信息录入客户查询客户查询机票打印机票打印得到用户信息得到用户信息打印机票打印机票按按订订单单查查询询按按姓姓名名查查询询姓姓名名ID性性别别日日期期始始发发站站终终点点站站/机票查询机票查询有航班有航班无航班无航班打印无航班信息打印无航班信息有座位有座位无座位无座位退出退出不交订金不交订金交订金交订金等待退票等待退票调用机票打印调用机票打印有有无无退回订金退回订金调用机票打印调用机票打印应用举例应用举例/l算法算法l算法的表示方法算法的表示方法l自然语言l传统流程图lN-S流程图l伪代码l计算机语言l各种表示方法的比较l结构化程序设计方法结构化程序设计方法本章内容总结本章内容总结

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 技术资料 > 统计图表

copyright@ 2008-2022 001doc.com网站版权所有   

经营许可证编号:宁ICP备2022001085号

本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有,必要时第一文库网拥有上传用户文档的转载和下载权。第一文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知第一文库网,我们立即给予删除!



客服