您的当前位置:首页正文

1.1.2程序框图与算法的基本逻辑结构

来源:尚车旅游网
华师中山附中高一数学学案(必修三) 编写人:王德鸿 班级 学生姓名 编号:002 日期:2014年5月 1.1.2程序框图与算法的基本逻辑结构

学习目标

(1) 掌握程序框图的概念;会用通用的图形符号表示算法,掌握算法的三个基本逻辑结构 (2) 掌握画程序框图的基本规则,能正确画出程序框图。

(3) 通过模仿、操作、探索,经历通过设计程序框图表达解决问题的过程;学会灵活、正确地画程序框图。 学习重点:经过模仿、操作、探索,经历通过设计程序框图表达求解问题的过程,重点是程序框图的基本概念、基本图形符号和3种基本逻辑结构

学习难点: 难点是能综合运用这些知识正确地画出程序框图。 学习过程

S例1、已知一个三角形的三边长分别是a,b,c,它的面积可用海伦—秦九韶公式计算。

p其中

p(pa)(pb)(pc),abc2。为计算机设计一个算法,输入三角形的三条边长a,b,c,输出三角形的面积S。

abc. 2算法步骤如下:第一步,输入三角形三条边长a,b,c。 第二步,计算p 第三步,计算S解:程序框图为:

p(pa)(pb)(pc). 第四步,输出S.

算法可以用自然语言来表示,但为了使算法的步骤表达得更为直观,我们更经常地用图形方式来表达,这就是程序框图。

程序框图基本概念:

(1)程序构图的概念:程序框图又称流程图,是一种用规定的图形、指向线及文字说明来准确、直观地表示算法的图形。一个程序框图包括以下几部分:表示相应操作的程序框;带箭头的流程线;程序框外必要的文字说明。 (2)构成程序框的图形符号及其作用 程序框 名称 功能 起止框(终端框) 表示一个算法的起始和结束,是任何流程图不 可少的。 表示一个算法输入和输出的信息,可用在算法 输入、输出框 中任何需要输入、输出的位置。 赋值、计算,算法中处理数据需要的算式、公 处理框(执行框) 式等分别写在不同的用以处理数据的处理框内。 判断框 判断某一条件是否成立,成立时在出口处标明“是”或“Y”;不成立时标明“否”或“N”。 流程线 连接程序框 当一个程序框图很大,一页纸写不下时,用来 连接点 连接程序框图的两部分。一般在连接处标上相同的数字序号。 (3)、算法的三种基本逻辑结构:顺序结构、条件结构、循环结构。 一、顺序结构

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

如右示意图中,A框和B框是依次执行的,只有在执行完A框指定的操作后,才能接着执 行B框所指定的操作。 A

B

1

二、条件结构

条件结构:先根据条件作出判断,再决定执行哪一种操作的结构就称为条件结构,如图1所示.执行过程如下:条件成立,则执行A框;不成立,则执行B框.

图1 图2

注:无论条件是否成立,只能执行A、B之一,不可能两个框都执行.A、B两个框中,可以有一个是空的,即不执行任何操作,如图2.

例2、任意给定3个正实数,设计一个算法,判断分别以这3个数为三边边长的三角形是否存在。画出这个算法的程序框图。

解:算法分析:判断分别以这3个数为三边边长的三角形是否存在,只需要验收这3个数当中任意两个数的和是否大于第3个数,这就需要用到条件结构。 程序框图:

华师中山附中高一数学学案 编写人:王德鸿 编号:012 日期:2014年4月

x2,x0x练习:1、给计算机编写一个算法,输入一个自变量的值,求分段函数f(x)2的函数值。 x,x0解:该算法用自然语言表述为

Step1:输入x的值;

2f(x)x2f(x)xx0Step2:进行判断,如果,则, 否则。

Step3: 输出结果。

可以用程序框图表示为:

三、循环结构

循环结构:在一些算法中,也经常会出现从某处开始,按照一定条件,反复执行某一处理步骤的情况,这种结构称为循环结构. 循环结构有两种形式:当型循环结构和直到型循环结构.

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

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

2、判断一元二次函数

ax2bxc0(a0)是否有根。 解:程序框图表示为

3、编写一个程序,求一元二次方程ax2bxc0的根.

2

见示意图:

循环体 循环体

满足条件? 满足条件? 否 是 否 是

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

循环体:反复执行的处理步骤称为循环体. 注意:

1、循环结构要在某个条件下终止循环,这就需要条件结构来判断。因此,循环结构中一定包含条件结构,但不允许

“死循环”。

2、在循环结构中都有一个计数变量和累加变量。计数变量用于记录循环次数,累加变量用于输出结果。计数变量和

累加变量一般是同步执行的,累加一次,计数一次。 例3、设计一个计算123100的算法 解:该算法用程序框图可表示为:

华师中山附中高一数学学案(必修三) 编写人:王德鸿 班级 学生姓名 编号:002 日期:2014年5月 练习:设计一个计算246解:程序框图为:

100的算法,为了真正理解该程序,请在下表中填入相应的数字。

开始 i____ 课堂小结:

本节课主要讲述了程序框图的基本知识,包括常用的图形符号、算法的基本逻辑结构,算法的基本逻辑结构有三种,即顺序结构、条件结构和循环结构。其中顺序结构是最简单的结构,也是最基本的结构,循环结构必然包含条件结构,所以这三种基本逻辑结构是相互支撑的,它们共同构成了算法的基本结构,无论怎样复杂的逻辑结构,都可以通过这三种结构来表达。

在具体画程序框图时,要注意的问题:流程线上要有标志执行顺序的前头;判断框后边 的流程线应根据情况标注“是”或“否”;在循环结构中,要注意根据条件设计合理的计数变 量、累加变量等,特别要条件的表述要恰当、精确。

S____ ii___课后作业:

SS ii100? YesNo输出 结束

例4、下面是描述描述一个饿汉吃饼的情况,如果饥饿的话就吃一张饼,直到吃饱为止。分别用当型和直到型两种循环结构进行描述。

当型 直到型

开始 开始 n 0n 0nn 1吃一张饼 吃一张饼 nn 1饿吗? 不饿了? NoYesNoYes输出:n 输出:n n 结束 结束 四.程序框图的画法

设计一个算法的程序框图通常需要经过以下步骤: 第一步,用自然语言表述算法步骤(又称算法分析)。

第二步,确定每一个算法步骤所包含的逻辑结构,并用相应的框图表示,得到该步骤的程序框图。 第三步,将所有步骤的程序框图用流程线连接起来,并加上终端框,得到表示整个算法的程序框图。

3

1、下面的程序框图(如图所示),能判断任意输入的数x的奇偶性:其中判断框内的条件是 ( )

A.m=0 B.x=0 C.x=1 D.m=1

开始 输入a,b,c

xa 是

bx

xb

否 xc 第1题 输出x 结束

2、右面的程序框图,如果输入三个实数a,b,c,要求输出这三个数中最大的数,那么在空白的判断框中,应该填入下面四个选项中的( )

A.cx

B.xc C.cb D.bc

3、设计一个计算123100的算法,画出程序框图。

华师中山附中高一数学学案 编写人:王德鸿 编号:012 日期:2014年4月

4、程序框图(即算法流程图)如图所示,其输出结果是 . 5、阅读右图 所示的程序框图,运行相应的程序,输出结果是 . 6、阅读右图的程序框图,则输出的S= .

第6题 第7题 第8题 7、已知某程序框图如图所示,则执行该程序后输出的结果是__________________。 8、执行右图所示的程序框图,输出结果y的值是_________. 9、随机抽取某产品n件,测得其长度分别为a1,a2,,an,则图3所示的程序框图输出的s

第7题 第8题 第9题 10、阅读图所示的程序框图,若输入m4,n6,则输出a= ,i= 。 (注:框图中的赋值符号“=”也可以写成“←”或“:=”) 11、执行如图所示的程序框图,若P=0.8,则输出的n= 。

4

第10题 第11题 12、设计一个求任意数的绝对值得算法,并划出程序框图。

13、设计一个算法,求1222321002的值.,画出程序框图。

1,x014、函数y0,x0,编写一个算法,输入x的值,输出y的值

1,x0解: 此框图是嵌套选择结构,外层选择结构的“Yes”分支很简单,“No”分支中又包含了一个条件结构。

因篇幅问题不能全部显示,请点此查看更多更全内容