计算机专业中除了流程图描述算法怎么描述算法形象

中国领先的IT技术网站
51CTO旗下网站
1.3.2 用流程图描述算法
《C语言常用算法分析》第1章程序之魂--算法,本章主要讲述程序的灵魂--算法,算法同人的灵魂一样,是一个很抽象的名词,人们不会将其与具体的物体建立联系。由算法被称作程序的灵魂,可见其重要性。那么算法到底为何物呢?为什么称算法为程序的灵魂呢?本节为大家介绍用流程图描述算法。
作者:明日科技来源:清华大学出版社| 10:12
1.3.2 用流程图描述算法
简单的算法可以用自然语言来描述,但是较为复杂的算法要如何描述呢?在计算机程序中经常会出现很多多分支选择结构的语句,这样的语句很容易产生歧义。而计算机程序需要每一步都是确切的,因此,流程图成了描述算法最为常见的方法。
1.流程图基本符号
流程图是由一些简单的框图组成表示解题步骤及顺序的方法。美国国家标准化协会(ANSI)规定了一些常用的流程图符号,如图1.2所示。
图1.2& 常用流程图符号
(1)起止框:表示一个算法的开始和结束。
(2)处理框:将要进行的操作内容简洁明了地写到框中。
(3)判断框:在判断框中写入算法中需要判断的条件。满足条件,执行一条路径;不满足条件则执行另一条路径。
(4)输入/输出框:记录从外部输入数据到计算机内部或者从计算机内部中输出数据到计算机外部。
(5)流程线:指向算法即将运行的方向。
2.3种基本控制结构
在程序人员编写程序时,为了满足某些需求,会强制程序在某些地方跳转,即进行控制转移,这样使得程序的可读性降低,使本身让人望而生畏的算法更加复杂、难于理解。为了改善此问题,人们规定了3种基本控制结构,将这3种基本结构作为设计和理解算法的基本单元(如同一栋大楼中的几个单元)。
(1)顺序结构
顺序结构是最为简单的一种基本结构,就是由上至下、按先后顺序依次执行程序语句。顺序结构的流程表示方法如图1.3所示。
(2)选择结构
选择结构也称为分支结构,是根据给定的条件进行判断的一种结构。此结构流程图中必定包括一个判断框,满足条件执行一个处理框,不满足条件执行另一个处理框。选择结构的流程表示方法如图1.4所示。
图1.3& 顺序结构
图1.4& 选择结构
(3)循环结构
循环结构是一种重复某一部分的操作的结构,它可以简化程序的难度,将大工作量拆分成小工作量,并对小工作量进行重复操作,这种方法充分利用了计算机运算速度快、自动化的优点。有两种典型的循环结构:while型循环和do-while型循环。
while型循环采取先判断表达式,后执行语句的方式。当判断框中的表达式为非0值时,执行while语句中的内嵌语句,如此往复,直到表达式为0值,结束循环。while型循环结构的流程表示如图1.5所示。
do-while型循环采用先执行循环体,再判断循环条件是否成立的方式。其执行过程为先执行一次循环体语句,然后判断表达式,当表达式为非0值时,返回重新执行循环体语句,如此循环,直到表达式为0值时跳出循环。do-while循环的流程如图1.6所示。
图1.5 while循环结构
图1.6& do-while循环结构
下面通过累加求和的小实例来体会一下流程图对算法的描述,并学会看和画流程图。
例如,使用流程图表示求1+2+3+4+5+6的算法,流程图如图1.7所示。
图1.7& 流程图
【责任编辑: TEL:(010)】&&&&&&
大家都在看猜你喜欢
热点热点头条头条热点
24H热文一周话题本月最赞
讲师:783691人学习过
讲师:16333人学习过
讲师:12090人学习过
精选博文论坛热帖下载排行
本书根据教育部考试中心2004年最新发布的《全国计算机等级考试大纲》编写,针对计算机等级考试三级网络技术各方面的考点进行讲解和训练。本...
订阅51CTO邮刊君,已阅读到文档的结尾了呢~~
扫扫二维码,随身浏览文档
手机或平板扫扫即可继续访问
【豆丁-精品】-N_S流程图分析及其在算法描述中的应用
举报该文档为侵权文档。
举报该文档含有违规或不良信息。
反馈该文档无法正常浏览。
举报该文档为重复文档。
推荐理由:
将文档分享至:
分享完整地址
文档地址:
粘贴到BBS或博客
flash地址:
支持嵌入FLASH地址的网站使用
html代码:
&embed src='/DocinViewer-4.swf' width='100%' height='600' type=application/x-shockwave-flash ALLOWFULLSCREEN='true' ALLOWSCRIPTACCESS='always'&&/embed&
450px*300px480px*400px650px*490px
支持嵌入HTML代码的网站使用
您的内容已经提交成功
您所提交的内容需要审核后才能发布,请您等待!
3秒自动关闭窗口当前位置: >>
算法描述与设计教案
课型:新课 《算法与程序设计》 (选修)人教版 教学目标: 1.进一步理解什么是;算法,知道算法的多样性 2.能够对设计的算法做简装的评价 3.学会利用自然语言、流程图和伪代码来描述算法 教学内容 1.了解什么是算法及其特征 2.学习三种描述算法语言 教学重点:通过例子设计算法 教学难点:三种描述算法语言的使用 课时数:1 课时 正课讲解 一、算法是“灵魂” 1.算法存在于人们生
活中,如:上街购物、顾客付款、营业员(主)找银等。 2.“韩信点兵问题”有不同的求解过程,就有不同的算法。 有 N 个人,除以 3,5,7,分别余 2,3,2,求 N。 3.算法――解决问题的方法和步骤。 算法是尼克劳斯.沃斯(N.Writh)提出的,他指出:算法+数据结构=程序。 (即算法不能单独构成程序,它必须和数据结构合二为一) 4.算法的发现 时间:公元前 3000 年~公元前 1500 年 地点:巴比伦 巴比伦人求解“算法”的过程:先用解代数方法,再计算实际数目,最后写上一句短句 “这就是一个过程” 。 5.算法的特征 我们曾在必须修课中提过一点算法,如:冒泡排序法。 例:计算 1+2+3+……+100=? 分析: 这个算法有限制范围, 可以在有限时间内完成, 这是算法的第一个特征: 有穷性。 计算此算法可以用纸笔、算盘、运算器 和计算机来完成,且计算过程是多样的,但结果是唯一的。这就是算法的可行性、确定 性。 计算方法: ⑴把这 100 个数按顺序相加。 ⑵用凑数法:1+99=100,2+98=100,3+97=100,……,49+51,最后只剩下 50 和 100。 ⑶令 S=0,使 1≤n≤100,先执行 S=S+n ⑴,再执行 n=n+1 ⑵ n=1,S=0 时,S(0)=1 n=2,S=1 时,S(0)=3 n=3,S=3 时,S(0)=6n=4,S=6 时,S(0)=10 n=5,S=10 时,S(0)=15 n=6,S=15 时,S(0) =21…… 算法的另外一个特征:输入、输出。 练习:水仙花数问题,如 153=1^3+5^3+3^3,分析它应满足什么条件才能使用此 方法? 二、如何描述算法 1.用自然语言描述算法 ⑴自然语言――人们日常生活中使用的语言。 ⑵此种语言的特点:通俗语易懂,缺乏直观性和简洁,且易产生歧义。 使用此种语言的注意事项:描述要求尽可能精确,详尽。 例:用自然语言描述凯撒密码的原理 第 1 步:输入 26 个英文字母,它们分别对应 1~26 个数学。 第 2 步:令 a=1,k=3,n=26。 第 3 步:使 a 的取值范围为 1≤a≤26,F(a)=(a+k) mod n,转第 5 步。 第 4 步:a=a+1,转第 3 步。 第 5 步:输出 F(a)相对应的数字。 第 6 步:把数学转化成相当的字母,输出字母。 第 7 步:累计字母出现顺序,转第 4 步。 练习:现有一串字母“PROGRAM”给它加密,请设计算法,用自然语言描述。 2.用流程图描述算法 ⑴特点:描述算法形象、直观,容易理解。 ⑵流程图符号 3.用伪代码描述算法 特点:描述的算法简、易懂,修改容易,容易转化为程序语言代码。 例:分析课本经 9 页算法描述 第一个条件:y mod 4=0 判断闰年的条件:⑴y 不能被 100 整除;⑵y 能被 400 整除且 y 能被 400 整除。 判断不是闰年的条件:⑴y mod 4=0 且 y mod 100=0,但 y 不能被 400 整除;⑵y 不能被 4 整除。 表示条件判断语句 表示循环处理语句: IF 条件 THEN 执行语句一 Do While 条件循环语句 ELSE 执行语句二 Loop END IF 条件语句中可以包含多个子语句 实践:用表格比较自然语言、流程图和伪代码 3 种描述方法的优缺点。
(3)设计算法。 四、教学难点(1)算法的概念、特征。通过分析一个现实生活中的实际问题,以此来引入算 法的概念、特征。 (2)算法描述的三种方法(自然语言、流程图...算法与算法描述教学设计一、教学目标 (一)知识与技能 1. 充分理解掌握算法的概念及其特点 2. 学会用自然语言来准确地描述算法 3. 认知流程图的六种基本符号,用...《算法和算法的描述》教学设计 算法和算法的描述》高州市第二中学 信息技术科组 卢钦 (一) 课程名称 算法和算法的描述(教材《算法与程序设计》第一章第 2 节...高一英语上册unit1教案1/2 相关文档推荐 算法设计与分析电子教案P2 暂无评价 19...4 算法介绍......教科版 1.2算法的描述与设计教学设计 纯个人原创教科版 1.2算法的描述与设计教学设计 纯个人原创隐藏&& 1.2 算法的描述与设计一、 教材内容、学情分析(1)教...四、教学目标 1、知识与技能 1)通过模仿、操作、探索、学习自然语言来描述算法。 2)通过模仿、操作、探索、经历通过设计算法流程图表达解决问题的过程,在具体问题(...《算法和算法的描述》教学设计 广东省佛山市南海区第一中学郭小喜 一、教材分析: 本节课是高中信息技术选修模块一《算法与程序设计》第一章第二节的内容,主要是...《算法及其实现》教学设计_其它课程_高中教育_教育专区。《算法及其实现》教学...前面已经介绍了利用计算机解决实际问题的过程中, 有两个重要的环节就是设计算 ...《算法设计与分析》课程教案 课程编号: 课程名称:算法设计与分析(The Design and Analysis of Computer Algorithms) 学时:72 学时,其中理论学时 54,上机...算法分析与设计课程教学大纲教案_理学_高等教育_教育专区。《算法设计与分析》...本课程系统 介绍许多经典的非数值算法,算法分析的基本方法,以及算法复 杂性的...
All rights reserved Powered by
copyright &copyright 。文档资料库内容来自网络,如有侵犯请联系客服。1.1算法与程序设计基础:算法与流程图
算法:在计算机中,算法通常是指可以用计算机来解决的某一类问题的程序或步骤,这些程序或步骤必须是明确的和有效的,而且能够在有限步之内完成。算法是程序设计的“灵魂”,算法+数据结构=程序。
算法的五个特征:
①有穷性:一个算法必须保证它的执行步骤是有限的,即它是能终止的。也就是说 执行步骤不能是无限的。
②确定性:算法中的每个步骤必须有确切的含义,而不应当是含糊的、模棱两可的。
③能行性。算法中的每一个步骤都要足够简单,是实际能做的 并能在有限时间内完成的。
④有0个或多个输入。所谓输入是指算法在执行时需要从外界获得数据,其目的是为算法建立某些初始状态。
⑤有一个或多个输出。算法的目的是用来求解问题,问题求解的结果应以一定的方式输出。
算法的描述方法:
1算法的描述:可分多种表达方法,一般用自然语言、流程图、伪代码和程序语言进行描述。
2自然语言描述法:指用人们日常生活中使用的语言(本国语言),用自然语言描述符合我们的习惯,且容易理解。
3流程图描述:也称程序框图,它是算法的一种图形化表示方法。且描述算法形象、直观,更易理解。
流程图表示算法
&用流程图表示法,常用的构件有如图所示。
算法的执行模式
& 算法的执行流程一般可以分为三种基本模式,即顺序模式、分支模式和循环模式。
&(1)顺序模式就是按指令的先后顺序依次执行。
&(2)分支模式就是根据分支条件,判断条件是否成立来选择招待相应分支路径中的指令。
&(3)循环模式就是根据判断条件是否成立来决定要重复执行循环体内的指令,如果不成立则直接执行循环体后面的第一条指令,如果条件成立则执行循环体内的指令,然后再次判断条件是否成立,如果条件成立再次执行循环体内的指令,直至条件不成立跳出循环体为止。
三种基本模式流程示意图如下图所示
已投稿到:
以上网友发言只代表其个人观点,不代表新浪网的观点或立场。最新公告:
本站所有期刊杂志信息均包含杂志社真实投稿电话,以及投稿邮箱,投稿请点击以上期刊栏目选择相应期刊直接联系杂志社。
流程图在算法教学中的探索-计算机应用论文发表_计算机应用论文写
摘 要:摘 要:算法是各种计算机语言教学中的主要内容之一,流程图具有规范表达算法逻辑的作用,画流程图是理工科学生必须掌握的专业技能之一,在教学中如何引导学生画出规范、合理、具有较高质量的流程图是每个计算机专业教师都在探讨的问题,本文,结合教学实践经验总结出以下三点方法供同行交流:一是基础要扎实;二是由浅入深;三是拓展训练。经过认真学习、积极思考、刻苦练习,学生能够在较短的时间内画出高品质的流程图,为学生打下扎实的专业功底。
画流程图要从基础抓起
随着计算机应用的普及,几乎所有的大学都会为理工科学生在本科期间开设各种计算机语言课程,计算机语言教学中必然要讲各种算法,而在算法学习中,流程图是帮助学生理解算法的工具之一,也是计算机专业进行专业交流的工具之一。用流程图描述算法具有逻辑清楚的优点,但在实际教学中由于课时等因素的限制,教师往往在讲流程图时一带而过,现在的绝大部分教材也对流程图不够重视,我们在教学中也发现由于一般期末考试不考流程图,学生对流程图的学习也不重视,这些实在是计算机语言教学中的一大缺憾。
要想重视对流程图教学的重视,首先,教师的作用是极其重要的,因为流程图具有专业基础的地位,如果学生专业基础打得不牢,对今后的专业发展会受到限制,参加工作之后会在专业交流中出现障碍,所以说,画流程图要从基础抓起。有了这样的认识之后,在教学中就要按照画流程图的规范,从标准符号、流程图画法规则、各种标注的使用、图标图号的使用等给学生一整套完整的概念和实例,因为在基础教学期间,由于都是讲单个的流程图,所以对各种标注的使用、图标图号的使用这时还用不上,教师就往往忽视这一部分的讲解,这样做的坏处是学生没有见过各种标注的使用、图标图号的使用,今后在工作中初次见到时会不解,或者使用不规范,造成专业瑕疵。为了避免这种情况,教师要多准备一些实例,给学生以感性认识。
当然对于流程图最基础的还是要打好功底,让学生勤练多画,在练习中反复体会,这也要求教师认真负责地仔细看每位学生画出的流程图是否有错误,有了错误要及时纠正,对于较为普遍出现的问题要在课堂上帮助学生分析原因。
画流程图要由浅入深
当学生有了一定基础之后,随着教学中出现的算法越来越难,要继续引导学生对有一定难度的算法画流程图,千万不要在这时放弃对画流程图的要求。因为现在绝大部分教材只是对流程图进行了简单的介绍,在后继章节中不再讨论流程图,而且一般学校期末考试也不考流程图,所以,如果这时教师不再继续引导学生画具有一定难度的流程图,那么,学生对流程图的掌握可谓“一知半解”。从顺序执行语句到条件分支、从简单分支到多选择分支、从单循环到双循环(甚至多重循环),越是结构复杂的程序(功能复杂必然结构复杂)流程图越能体现逻辑清楚的优越性。
在教学中应掌握循序渐进的原则,对算法简单的流程图要沿着算法思路按照功能顺序自顶向下逐层分解地画;对嵌套层数较多的算法,要先对算法功能和算法语句充分分析之后,再从内向外逐层解剖析;对功能繁杂,且语句复杂的算法要采取分块处理的方法,先将算法尽可能地分割为功能较为独立的小块,再将核心算法独立处理,之后采用功能拼装的方法将流程图整体组装起来,形成完整的流程图;对于更加复杂的算法,教师可给出流程图的大致框架,再引导学生逐步完成。往往当学生们能够按照算法思想完成流程图后那种自豪和满足感会油然而生,在这个过程中,不仅仅是培养了学生的专业能力,也往往增强了他们的专业兴趣和自信。
根据专业不同可拓展流程图的用处
根据不同的年级和不同专业,对算法和流程图的掌握要求是不一样的,所以教师也要根据自己所教学生的特点,在备课时组织不同的流程图备用,并注意算法流程图与其他专业用图在使用中的联系与区别。如算法流程图与数据库中各种数据关系图的联系;算法流程图与递归推导图的联系;算法流程图与判断树的联系;算法流程图与系统模块结构图的联系等等。教师可以结合所教专业的特点,尝试将算法流程图思想推广到处理其他专业知识上,给学生以更加清晰的思路展示所教知识的逻辑结构,使学生养成处理事务时的逻辑思维能力。
总之,由于流程图可以清晰地显示事件处理过程中的各种因素和处理的前后关系,在学习画流程图的过程中有助于培养学生逻辑思维能力,为今后的专业发展打下良好的基础。
(北京物资学院)
作者简介:陈丽梅(―),女,北京人,本科,副教授,研究方向:信息管理;赵明茹(1974-)女,山东人,博士,讲师,研究方向:电子商务。
特别说明:本网站内容都来源于互联网,供浏览者学习、欣赏,使用原则非商业性或非盈利性用途,使用者不得侵犯本网站及相关权利人的合法权利。此外,使用者如对本网站内容用于其他用途时,须征得本网站及相关权力人的许可。
本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站,予以删除。
我们的服务
杂志申请收录邮箱:; 投诉建议邮箱:
国家信息产业备案号码:京ICP备号 京公网安备81号
【免责声明】:本网站所提供的信息资源如有侵权、违规,请及时联系邮箱:
优先推荐期刊
电话:010-}

我要回帖

更多关于 floyd算法流程图 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信