算法与程序框图知识讲解文档格式.docx

上传人:b****4 文档编号:14098335 上传时间:2022-10-18 格式:DOCX 页数:18 大小:211.50KB
下载 相关 举报
算法与程序框图知识讲解文档格式.docx_第1页
第1页 / 共18页
算法与程序框图知识讲解文档格式.docx_第2页
第2页 / 共18页
算法与程序框图知识讲解文档格式.docx_第3页
第3页 / 共18页
算法与程序框图知识讲解文档格式.docx_第4页
第4页 / 共18页
算法与程序框图知识讲解文档格式.docx_第5页
第5页 / 共18页
点击查看更多>>
下载资源
资源描述

算法与程序框图知识讲解文档格式.docx

《算法与程序框图知识讲解文档格式.docx》由会员分享,可在线阅读,更多相关《算法与程序框图知识讲解文档格式.docx(18页珍藏版)》请在冰豆网上搜索。

算法与程序框图知识讲解文档格式.docx

算法要有明确的开始和结束,当到达终止步骤时所要解决的问题必须有明确的结果,也就是说必须在有限步内完成任务,不能无限制的持续进行.

(4)不唯一性:

求解某一个问题的算法不一定是唯一的,对于一个问题可以有不同的算法.

3、设计算法的要求

(1)写出的算法,必须能解决一类问题(如:

判断一个整数35是否为质数;

求任意一个方程的近似解……),并且能够重复使用.

(2)要使算法尽量简单、步骤尽量少.

(3)要保证算法正确.且计算机能够执行,如:

让计算机计算1×

5是可以做到的.

4、算法的描述:

(1)自然语言:

自然语言就是人们日常使用的语言,可以是汉语、英语或数学语言等.用自然语言描述算法的优点是通俗易懂,当算法中的操作步骤都是顺序执行时比较容易理解.缺点是如果算法中包含判断和转向,并且操作步骤较多时,就不那么直观清晰了.

(2)程序框图:

所谓框图,就是指用规定的图形符号来描述算法,用框图描述算法具有直观、结构清晰、条理分明、通俗易懂、便于检查修改及交流等特点.

(3)程序语言:

算法最终可以通过程序的形式编写出来,并在计算机上执行.

要点诠释:

算法的特点:

思路简单清晰,叙述复杂,步骤繁琐,计算量大,完全依靠人力难以完成,而这些恰恰就是计算机的特长,它能不厌其烦地完成枯燥的、重复的繁琐的工作,正因为这些,现代算法的作用之一就是使计算机代替人完成某些工作,这也是我们学习算法的重要原因之一.

事实上,算法中出现的程序只是用基本的语句把程序的主要结构描述出来,与真正的程序还有差距,所以算法描述的许多程序并不能直接运行,要运行程序,还要把程序按照某种语言的严格要求重新改写才行.

要点二、程序框图

1、程序框图的概念:

程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形.

2、构成程序框的图形符号及其作用

程序框

名称

功能

起止框

表示一个算法的起始和结束,是任何算法程序框图不可缺少的.

输入、输出框

表示一个算法输入和输出的信息,可用在算法中任何需要输入、输出的位置.

处理框

赋值、计算.算法中处理数据需要的算式、公式等,它们分别写在不同的用以处理数据的处理框内.

判断框

判断某一条件是否成立,成立时在出口处标明“是”或“Y”;

不成立时在出口处则标明“否”或“N”.

流程线

算法进行的前进方向以及先后顺序

连结点

连接另一页或另一部分的框图

3、程序框图的构成

一个程序框图包括以下几部分:

实现不同算法功能的相对应的程序框;

带箭头的流程线;

程序框内必要的说明文字.

4、算法的三种基本逻辑结构

(1)顺序结构

顺序结构是最简单的算法结构,语句与语句之间,框与框之间是按从上到下的顺序进行的.它是由若干个依次执行的步骤组成的,它是任何一个算法都离不开的一种基本算法结构.

见示意图和实例:

顺序结构在程序框图中的体现就是用流程线将程序框自上而下地连接起来,按顺序执行算法步骤.如在示意图中,A框和B框是依次执行的,只有在执行完A框指定的操作后,才能接着执行B框所指定的操作.

(2)条件结构

如下面图示中虚线框内是一个条件结构,此结构中含有一个判断框,算法执行到此判断给定的条件P是否成立,选择不同的执行框(A框、B框).无论P条件是否成立,只能执行A框或B框之一,不可能既执行A框又执行B框,也不可能A框、B框都不执行.A框或B框中可以有一个是空的,即不执行任何操作.

见示意图

条件结构中的条件要准确,不能含混不清,要清楚在什么情况下需要作怎样的判断,用什么条件来区分.

(3)循环结构

在一些算法中要求重复执行同一操作的结构称为循环结构.即从算法某处开始,按照一定条件重复执行某一处理过程.重复执行的处理步骤称为循环体.

循环结构有两种形式:

当型循环结构和直到型循环结构.

①当型循环结构,如左下图所示,它的功能是当给定的条件P成立时,执行A框,A框执行完毕后,返回来再判断条件P是否成立,如果仍然成立,返回来再执行A框,如此反复执行A框,直到某一次返回来判断条件P不成立时为止,此时不再执行A框,离开循环结构,继续执行下面的框图.

②直到型循环结构,如右下图所示,它的功能是先执行重复执行的A框,然后判断给定的条件P是否成立,如果P仍然不成立,则返回来继续执行A框,再判断条件P是否成立,依次重复操作,直到某一次给定的判断条件P成立为止,此时不再返回来执行A框,离开循环结构,继续执行下面的框图.

循环结构中使用什么样的条件控制循环的开始和结束,要清楚满足某个条件的变量的次数与循环次数的联系与区别.

误区提醒

1、框图中的流程线不能出现交叉的现象.若有交叉,则程序语句无法写出;

2、各种框图有其固定的格式和作用,不要乱用.如条件结构中不要忘了“是”与“否”,流程线不要忘记画箭头;

3、条件分支结构的方向要准确;

4、循环结构中,计数变量要赋初值,计数变量的自加不要忘记,自加多少不能弄错.另外计数变量一般只负责计数任务;

5、循环结构中循环的次数要严格把握,区分“<”与“≤”等.循环变量的取值与循环结构(当型与直到型)有关,需区分清楚.另外,同一问题用两种不同的结构解决时,其判断条件恰是相反的;

6、程序框图不要出现死循环(无限步的循环).

【典型例题】

类型一:

算法的概念

例1.下列对算法的理解不正确的是()

A.算法有一个共同特点就是对一类问题都有效(而不是个别问题)

B.算法要求一步步执行,且每一步都能得到唯一的结果

C.算法一般是机械的,有时要进行大量重复的计算,它的优点是一种通法

D.任何问题都可以用算法来解决

【答案】D

【解析】算法是解决问题的精确的描述,但是并不是所有问题都有算法.

【总结升华】算法一般是机械的,有时需要进行大量的重复计算,只要按部就班去做,总能算出结果.通常把算法过程称为“数学机械化”,数学机械化的最大优点是它可以借助计算机来完成.实际上处理任何问题都需要算法,如:

中国象棋有中国象棋的棋谱、走法、胜负的评判准则;

而国际象棋有国际象棋的棋谱、走法、胜负的评判准则;

再比如申请出国有一系列的先后手续,购买物品也有相关的手续…….

举一反三:

【变式1】我们已学过的算法有求解一元二次方程的求根公式,加减消元法求二元一次方程组的解,二分法求出函数的零点等,对算法的描述有:

①对一类问题都有效;

②算法可执行的步骤必须是有限的;

③算法可以一步一步地进行,每一步都有确切的含义;

④是一种通法,只要按部就班地做,总能得到结果.以上算法的描述正确的有().

A.1个B.2个C.3个D.4个

【答案】D

【变式2】下列哪个不是算法的特征()

A.抽象性 B.精确性    C.有穷性    D.唯一性

【答案】D.

类型二:

算法的描述

例2.写出求解二元一次方程组的一个算法.

【解析】

因为是二元一次方程组,所以a1、a2不能同时为0.

第一步,假设a1≠0(若a1=0,可将第一个方程与第二个方程互换),

,得到.

即方程组化为

第二步,若a1b2-a2b1≠0,解③得④

第三步,将④代入①,整理得.

第四步,输出结果x、y.

如果a1b2-a2b1=0,从③可以看出,方程组无解或有无穷多组解.

【总结升华】一般化,得到求二元一次方程组的高斯消去算法步骤:

第一步:

计算;

第二步:

若,则原方程组无解或有无穷多组解,否则().

第三步:

输出计算的结果、或者无法求解的信息.

举一反三:

【变式1】试描述求解三元一次方程组的算法步骤.

【解析】

算法1:

第一步,①+③,得x=5.④

第二步,将④分别代入①式和②式可得.

第三步,⑥-⑤,得y=-4.⑦

第四步,将⑦代入⑤可得z=11.

第五步,得到方程组的解为.

算法2:

第一步,①+②,得2x-y=14.④

第二步,②-③,得x-y=9.⑤

第三步,④-⑤,得x=5.⑥

第四步,将⑥代入⑤式,得y=-4.⑦

第五步,将⑥和⑦代入①式,得z=11.

第六步,得到方程组的解为.

【变式2】鸡兔同笼问题:

一群小兔一群鸡,两群合到一群里,要数腿48,要数脑袋17,多少小兔多少鸡?

【解析】算术算法:

小兔的只数:

小鸡的只数:

17-7=10.

应用解二元一次方程组的方法来求解鸡兔同笼问题的步骤.

设有小鸡x只,小兔y只,则有

将方程组中的第一个方程两边乘-2加到第二个方程中去,得到,得到y=7;

将y=7代入

(1)得x=10.

类型三:

算法的设计

例3、给出求1+2+3+4+5的一个算法.

【解析】本题可以按照逐一相加的程序进行,也可以运用公式直接计算,还可以用循环方法求和.

算法1

计算1+2,得到3;

将第一步中的运算结果3与3相加,得到6;

将第二步中的运算结果6与4相加,得到10;

第四步:

将第三步中的运算结果10与5相加,得到15.

算法2

取=5;

输出运算结果.

算法3

使;

第五步:

如果,则返回第三步,否则输出.

【总结升华】①一个问题的算法可能不唯一;

②若将本例改为“给出求的一个算法”,则上述算法2和算法3表达较为方便.

【变式1】写出求的一个算法.

【答案】

使,;

第六步:

【变式2】求1×

11的值,写出其算法.

第一步,先求1×

3,得到结果3;

第二步,将第一步所得结果3再乘以5,得到结果15;

第三步,再将15乘以7,得到结果105;

第四步,再将105乘以9,得到945;

第五步,再将945乘以11,得到10395,即是最后结果.

算法2:

用P表示被乘数,i表示乘数.

第一步,使P=1;

第二步,使i=3;

第三步,使P=P×

i;

第四步,使i=i+2;

第五步,若i≤11,则返回到第三步继续执行;

否则算法结束.

类型四:

顺序结构的应用

例4.设计算法,求两底半径分别为1和4,且高为4的圆台的表面积及体积,并画出程序框图.

【解析】先求出斜高,再分别求出两个底面面积和侧面面积,则表面积与体积可得.

【答案】算法如下:

第一步,令r1=1,r2=4,h=4;

第二步,计算斜高;

第三步,令,,;

第四步,计算圆台的表面积S

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

当前位置:首页 > 职业教育 > 职业技术培训

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1