[精选]第六讲、算法和流程图.pptx

[精选]第六讲、算法和流程图.pptx

ID:62445519

大小:179.38 KB

页数:33页

时间:2021-05-06

[精选]第六讲、算法和流程图.pptx_第1页
[精选]第六讲、算法和流程图.pptx_第2页
[精选]第六讲、算法和流程图.pptx_第3页
[精选]第六讲、算法和流程图.pptx_第4页
[精选]第六讲、算法和流程图.pptx_第5页
资源描述:

《[精选]第六讲、算法和流程图.pptx》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、第2章、程序的灵魂——算法/本章学习目标理解算法的概念了解算法的表示方法掌握流程图的绘制方法掌握三种基本结构的流程图了解结构化程序设计方法/内容进度算法算法的表示方法自然语言传统流程图N-S流程图伪代码计算机语言各种表示方法的比较结构化程序设计方法文档和注释/算法的引入问题:计算矩形的周长第一步:定义三个变量存储长、宽和周长第二步:提示用户输入矩型的长和宽第三步:计算周长,两个长加上两个宽第四步:打印计算结果算法的定义:解决问题所使用的一系列合乎逻辑的、简洁的步骤。lengthwidth/算法与程序关系著名科学家

2、沃思(NikiklausWirth)的公式:数据结构+算法=程序扩充后的公式:数据结构+算法+程序设计方法+语言和环境=程序算法是灵魂,数据结构是加工对象,语言是工具,程序设计方法是使用手段。/算法的特性有穷性确定性有效性有零个或多个输入有一个或多个输出/算法的分析与优化分析程序的算法设计,应先看主流程图,再逐步细化地分析了解算法是否实现了任务需求,方法是否合理性能上是否存在瓶颈,能否被优化如果有多个输入条件,处理时是否覆盖了全部输入条件如果有多个输出结果,其输出是否被系统所定义和处理/内容进度算法算法的表示方法

3、自然语言传统流程图N-S流程图伪代码计算机语言各种表示方法的比较结构化程序设计方法文档和注释/算法的表示方法案例:判断2000~2500年中的每一年是否为闰年。闰年的条件:能被4整除,但不能被100整除的年份;能被100整除,又能被400整除的年份;/自然语言自然语言描述:设y为被检测的年份,则算法可表示如下:S1:2000→y;S2:若y不能被4整除,则输出y“不是闰年”,然后转到S6;S3:若y能被4整除,不能被100整除,则输出y“是闰年”,然后转到S6;S4:若y能被100整除,又能被400整除,输出y“

4、是闰年”,然后转到S6;S5:输出y“不是闰年”,然后转到S6;S6:y+1→y;S7:当y≤2500时,返回S2继续执行,否则结束。/自然语言使用自然语言描述算法的优缺点:优点:通俗易懂缺点:文字冗长含义不太严格,容易出现歧义/内容进度算法算法的表示方法自然语言传统流程图N-S流程图伪代码计算机语言各种表示方法的比较结构化程序设计方法文档和注释/传统流程图用一些图框表示指令或活动的各种操作流程ANSI规定的常用流程图符号:起始框输入/输出框判断框处理框流程线连接点注释框/三种基本结构顺序结构选择结构ABPYNA

5、B/三种基本结构循环结构PAY当型(while)循环结构NPAYN直到型(until)循环结构/应用举例优点:比较清晰,可以解决任何复杂的问题缺点:流程图比较长,基本结构之间的流程线多余/内容进度算法算法的表示方法自然语言传统流程图N-S流程图伪代码计算机语言各种表示方法的比较结构化程序设计方法文档和注释/N-S流程图美国学者I.Nassi和B.shneiderman提出流程图符号:AB顺序结构PYNAB选择结构当P成立A当型循环结构A直到P成立直到型循环结构/应用举例y+1=>y打印“非闰年”优点:直观易懂缺点

6、:画起来比较麻烦,不易修改/内容进度算法算法的表示方法自然语言传统流程图N-S流程图伪代码计算机语言各种表示方法的比较结构化程序设计方法文档和注释/伪代码BEGIN(算法开始)2000=>ywhiley<=2500{ify能被4整除ify不被100整除printy:”是闰年”elseify能被400整除printy:”是闰年”elseprinty:”非闰年”endifendifelseprinty:”非闰年”endify+1=>y}END(算法结束)/内容进度算法算法的表示方法自然语言传统流程图N-S流程图伪代码

7、计算机语言各种表示方法的比较结构化程序设计方法文档和注释/#includevoidmain(){inty=2000;while(y<=2500){if((y%4)==0){if(y%100!=0)printf("%d年是闰年",y);elseif(y%400==0)printf("%d年是闰年",y);elseprintf("%d年是非闰年",y);}elseprintf("%d年是非闰年",y);y=y+1;}}计算机语言/内容进度算法算法的表示方法自然语言传统流程图N-S流程

8、图伪代码计算机语言各种表示方法的比较结构化程序设计方法文档和注释/表示方法优点缺点自然语言通俗易懂文字冗长,含义不太严格,容易出现歧义流程图比较清晰,可以解决任何复杂的问题流程图比较长,基本结构之间的流程线多余N-S流程图直观易懂画起来比较麻烦,不易修改伪代码书写比较自由,容易表达思想,容易修改不太直观,容易出现逻辑上的错误计算机语言表示直接在计算机上可以运行,得到结果必

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。