《程序框图与算法的基本逻辑结构》ppt课件免费下载
以下为幻灯片页面截图,请点击左边“我要下载”按钮免费下载无水印完整文件
要点梳理
1.算法通常是指可以用计算机来解决的某一类问
题的程序或步骤,这些程序或步骤必须是
和 的,而且能够在有限步之内完成.
算法与程序框图
明确
有效
基础知识 自主学习
2.程序框图又称 ,是一种用 、
及 来准确、直观地表示算法
的图形.
通常程序框图由 和 组成,一个或
几个程序框的组合表示算法中的一个步骤;
带方向箭头,按照算法进行的顺序将
连结起来.
3.三种基本逻辑结构
(1)顺序结构是由 组
成的,这是任何一个算法都离不开的基本结构.
流程图
规定的图形
指向线
文字说明
程序框
流程线
流程
线
若干个依次执行的处理步骤
程序框
(2)条件结构是指算法的流程根据给定的条件是否
成立而选择执行不同的流向的结构形式.
其结构形式为
(3)循环结构是指
.反复执行的处理步骤称
为 .循环结构又分为 和
.
其结构形式为
4.算法的五个特征:概括性、逻辑性、有穷性、
不惟一性、普遍性.
从某处开始,按照一定条件反复
执行处理某一步骤的情况
循环体
当型(WHILE型)
直到型(UNTIL型)
基础自测
1.下列关于算法的说法正确的有( )
①求解某一类问题的算法是唯一的;
②算法必须在有限步操作之后停止;
③算法的每一步操作必须是明确的,不能有歧
义或模糊;
④算法执行后产生确定的结果.
A.1个 B.2个 C.3个 D.4个
解析 只有①不正确,算法不是唯一的,其他
都正确.
C
2.关于程序框图的图形符号的理解,正确的有( )
①任何一个程序框图都必须有起止框;②输入
框只能在开始框之后,输出框只能放在结束框
之前;③判断框是唯一具有超过一个退出点的
图形符号;④对于一个程序来说,判断框内的
条件是唯一的
A.1个 B.2个 C.3个 D.4个
解析 任何一个程序都有开始和结束,因而必
须有起止框;输入和输出可以放在算法中任何
需要输入、输出的位置;判断框内的条件不是
唯一的,如a>b,亦可写为a≤b.故只有①③对.
B
3.下列说法不正确的是( )
A.三种基本逻辑结构包含顺序结构、条件结
构、循环结构
B.一个程序框图一定包含顺序结构
C.一个程序框图一定包含循环结构
D.一个程序框图不一定包含条件结构
解析 并不是每个程序框图都有循环结构.
C
4.如图所示的是一个算法的流程图,
已知a1=3,输出的结果为7,则a2
的值是( )
A.9 B.10
C.11 D.12
解析 已知图形是一个顺序结构的
框图,表示的算法的功能是求两数a1、a2的算术
平均数,已知a1=3,输出结果为7,有
解得a2=11.
C
5.阅读右图程序框图(框图中的赋值符
号“=”也可以写成“←”或“:=”),
若输出的S的值等于16,那么在程序框
图中的判断框内应填写的条件是( )
A.i>5? B.i>6?
C.i>7? D.i>8?
解析 即1+1+2+…+i=16,
∴i(i+1)=30,∴i=5.
又i=i+1=6,∴应填i>5?.
A
题型一 算法的设计
已知点P(x0,y0)和直线l:Ax+By+C=0,
求点P(x0,y0)到直线l的距离d,写出其算法
并画出程序框图.
利用点到直线的距离公式可写出算法,
而程序框图利用顺序结构比较简单.
解 算法如下:
第一步,输入x0,y0及直线方程的系数A,B,C.
第二步,计算Z1=Ax0+By0+C.
第三步,计算Z2=A2+B2.
第四步,计算
第五步,输出d.
题型分类 深度剖析
程序框图:
给出一个问题,设计算法应注意:
(1)认真分析问题,联系解决此问题的一般数学
方法;
(2)综合考虑此类问题中可能涉及的各种情况;
(3)将解决问题的过程划分为若干个步骤;
(4)用简练的语言将各个步骤表示出来.
知能迁移1 写出求过两点M(-2,-1)、N(2,3)的
直线与坐标轴围成面积的一个算法.
解 算法:(1)取x1=-2,y1=-1,x2=2,y2=3;
(3)在(2)中令x=0得到y的值m,得直线与y轴交
点(0,m);
(4)在(2)中令y=0得到x的值n,得直线与x轴交
点(n,0);
(6)输出运算结果.
题型二 算法的顺序结构
f(x)=x2-2x-3.求f(3)、f(-5)、f(5),并计
算f(3)+f(-5)+f(5)的值.设计出解决该问题的一
个算法,并画出程序框图.
解 算法如下:
第一步,令x=3.
第二步,把x=3代入y1=x2-2x-3.
第三步,令x=-5.
第四步,把x=-5代入y2=x2-2x-3.
第五步,令x=5.
第六步,把x=5代入y3=x2-2x-3.
第七步,把y1,y2,y3的值代入y=y1+y2+y3.
第八步,输出y1,y2,y3,y的值.
该算法对应的程序框图如图所示:
顺序结构的算法写好后,按顺序依次
画出流程图.在变量赋值时,以后赋的为准,前边
赋过值的变量,有新的数值时,原来的值无效.
知能迁移2 如图所示的框图是解决某个
问题而绘制的程序框图,仔细分析各
图框内的内容及图框之间的关系,回
答下面的问题:
(1)框中x=a的含义是什么?
(2)框中y=-x2+mx的含义是什么?
(3)该程序框图解决的是怎样的一个问题?
(4)若输入的x值为0和4时,输出的值相等,则
①当输入的x值为3时,输出的值为多大?
②要想使输出的值最大,输入的x值应为多少?
③按照这个程序框图,当输入的x的值都大于
2时,x值大的输出的y值反而小,为什么?
解 (1)图框中x=a表示把a值赋给变量x.
(2)图框中y=-x2+mx的含义是:在执行该图框的前
提下,即当x=a时计算-x2+mx的值,并把这个值赋
给y.
(3)该程序框图解决的是求二次函数f(x)=-x2+mx
的函数值的问题.
(4)当输入的x值为0和4时,输出的y值相等,
即f(0)=f(4).
∵f(0)=0,f(4)=-16+4m,
∴-16+4m=0,∴m=4.
∴f(x)=-x2+4x.
①∵f(3)=-32+3×4=3,
∴当输入的x值为3时,输出的y值为3.
②∵f(x)=-x2+4x=-(x-2)2+4,
当x=2时,f(x)max=4,
∴要想使输出的值最大,输入的x值应为2.
③∵f(x)=-(x-2)2+4,
∴函数f(x)在[2,+∞)上是减函数.
∴在[2,+∞)上,x的值越大,对应的函数值y反
而越小,
从而当输入的x值大于2时,x值大的输出的y值反而
小.
题型三 算法的条件结构
已知函数
写出求该函数的函数值的算法及程序框图.
分析算法→写出算法→选择条件结构
→画出程序框图.
解 算法如下:
第一步:输入x;
第二步:如果x>0,则y=-2x;如果x=0,则y=0;
如果x<0,则y=2x;
第三步:输出函数值y.
相应的程序框图如图所示.
利用条件结构解决算法问题时,要引入
判断框,要根据题目的要求引入一个或多个判断框.
而判断框内的条件不同,对应的下一图框中的内容
和操作也相应地进行变化,故要逐个分析判断框内
的条件.
知能迁移3 下图的程序框图,输出的结果是函数
_____的值. ( )
答案 D
题型四 算法的循环结构
(12分)设计算法求
的值,并画出程序框图.
(1)这是一个累加求和问题,共99项相加;
(2)设计一个计数变量,一个累加变量,用循环结
构实现这一算法.
解 算法如下:
第一步:令S=0,i=1; 2分
第二步:若i≤99成立,则执行第三步;
否则,输出S,结束算法; 4分
第三步:
第四步:i=i+1,返回第二步. 6分
程序框图:
方法一 当型循环程序框图:
7分
10分
12分
方法二 直到型循环程序框图
7分
10分
12分
利用循环结构表示算法,第一要确定是
利用当型循环结构,还是直到型循环结构;第二
要选择准确的表示累计的变量;第三要注意在哪
一步开始循环.
知能迁移4 设计一个算法计算1×3×5×…×99,
并画出程序框图.
解 算法如下:
第一步:令S=1,i=1;
第二步:若i≤99成立,则执行第三步;
否则输出S,结束算法;
第三步:S=S×i;
第四步:i=i+2,返回第二步.
程序框图:
方法一 当型循环程序框图
方法二 直到型循环程序框图
思想方法 感悟提高
方法与技巧
1.在设计一个算法的过程中要牢记它的五个特征:
概括性、逻辑性、有穷性、不惟一性、普遍性.
2.编程的一般步骤(1)算法分析:根据提供的问题,
利用数学及相关学科的知识,设计出解决问题
的 算法.(2)画程序框图:依据算法分析,画出
程序框图.(3)写出程序:根据程序框图中的算
法步骤,逐步写出相应的程序语句.
3.算法的思想与数学知识的融合会是新高考命题
的方向,要注意此方面知识的积累.
失误与防范
1.注意起止框与处理框、判断框与循环框的区别.
2.注意条件结构与循环结构的联系.
3.要弄清楚三种基本逻辑结构的构成方式及功能,
以免使用时造成混乱或错误.
一、选择题
1.(2009·天津)阅读右面的程序
框图,则输出的S= ( )
A.14 B.20
C.30 D.55
解析 第一次循环:S=12;第二次循
环:S=12+22;第三次循环:S=12+22+32;
第四次循环:S=12+22+32+42=30.
C
定时检测
2.(2009·浙江)某程序框图如图所示,
该程序运行后输出的k的值是( )
A.4 B.5 C.6 D.7
解析 当k=0,S=0时,执行S=S+2S后S变为S=1.
此时执行k=k+1后k=1.当k=1,S=1时,执行S=S+2S后,S=1+21=3,此时执行k=k+1后k=2.当k=2,S=3时,
执行S=S+2S后,S=3+23=11,此时执行k=k+1后,k=3.当k=3,S=11时,继续执行S=S+2S=11+211,执行k=
k+1后k=4,此时11+211>100,故输出k=4.
答案 A
3.(2009·福建)阅读如图所示的程
序框图,运行相应的程序,输出的
结果是 ( )
A.1 B.2
C.3 D.4
解析 程序运行过程中,S与n数值
变化对应如下表:
D
故S=2时,n=4.
4.若右面的程序框图输出的S是126,
则①应为 ( )
A.n≤5? B.n≤6?
C.n≤7? D.n≤8?
解析 即21+22+…+2n=126,
∴2n=64,即n=6.n=7应是第一次不满足条件,
故选B.
B
5.一个算法的程序框图如下图所示,若该程序输出
的结果为 ,则判断框中应填入的条件是 ( )
A.i<4? B.i<5? C.i≥5? D.i<6?
解析
答案 D
6.(2009·海南·宁夏)如果执行下边的程序框
图,输入x=-2,h=0.5,那么输出的各个数的和等
于 ( )
A.3 B.3.5 C.4 D.4.5
解析 输入x=-2时,y=0,执行x=x+0.5后x=-1.5.
当x=-1.5时,y=0,执行x=x+0.5后x=-1.
当x=-1时,y=0,执行x=x+0.5后x=-0.5.
当x=-0.5时,y=0,执行x=x+0.5后x=0.
当x=0时,y=0,执行x=x+0.5后x=0.5.
当x=0.5时,y=0.5,执行x=x+0.5后x=1.
当x=1时,y=1,执行x=x+0.5后x=1.5.
当x=1.5时,y=1,执行x=1.5+0.5后x=2.
当x=2时,y=1,此时2≥2,因此结束循环.
故输出各数之和为0.5+1+1+1=3.5.
答案 B
二、填空题
7.在如右图所示的程序框图中,当程
序被执行后,输出s的结果是 .
解析 数列4,7,10,…为等
差数列,令an=4+(n-1)×3=40,得
n=13,
∴s=4+7+…+40=
286
8.(2009·安徽)程序框图(即算法流程图)如图
所示,其输出结果是 .
解析 由程序框图知,循环体被执行后a的值依
次为3,7,15,31,63,127.
127
9.如图所示算法程序框图中,令a=tan 315°,
b=sin 315°,c=cos 315°,则输出结果为 .
解析 程序即求a,b,c中的最大值.
a=tan(360°-45°)=-tan 45°=-1,
b=sin(360°-45°)=- ,
c=cos(360°-45°)=cos 45°= ,∴输出 .
答案
三、解答题
10.设计求1+3+5+7+…+31的算法,并画出相应的程
序框图.
解 第一步:S=0;
第二步:i=1;
第三步:S=S+i;
第四步:i=i+2;
第五步:若i不大于31,返回执行第三步,否则
执行第六步;
第六步:输出S值.
程序框图如图:
11.已知函数 写出求该函数的
函数值的算法并画出程序框图.
解 算法如下:
第一步,输入x.
第二步,如果x<0,那么使f(x)=3x-1;
否则f(x)=2-5x.
第三步,输出函数值f(x).
程序框图如下:
12.国庆期间,某超市对顾客实行购物优惠活动,规
定一次购物付款总额:
①若不超过200元,则不予优惠;
②若超过200元,但不超过500元,则按标价价
格给予9折优惠;
③如果超过500元,500元的部分按②条优惠,
超过500元的部分给予7折优惠,设计一个收款
的算法,并画出程序框图.
解 依题意,付款总额y与标价x之间的关系式
为(单位:元)
算法分析:
第一步,输入x值;
第二步,判断,如果x≤200,则输出x,结束算法;
否则执行第三步;
第三步:判断,如果x≤500成立,则计算y=0.9×x,
并输出y,结束算法;否则执行第四步;
第四步:计算y=0.9×500+0.7×(x-500),并输出y,结束算法.
程序框图:
返回