《基本算法语句-条件语句》文字素材6(人教A版必修3)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

1.2.2条件语句

算法中的条件结构由条件语句来表达。

一、基本条件语句

(1)两个分支的条件结构

例21. 给计算机编写一个程序,输入一个自变量x的值,输出分段函数22,0(),0xxfxxx的函数值.

解: 程序框图 QuickBASIC程序语句

QuickBASIC语言中的符号。

数学运算 等于 不等于 大于 小于 大于等于 小于等于

程序符号 = <> > < >= <=

[探究] 比较程序框图和QuickBASIC程序语句,回答下列问题。

(1)条件结构和那一段语句对应?条件语句以什么开始,以什么开始

输入x

2yx0x成立输出y

结束 2yxYesNoINPUT “x=”;

IF x>=0 THEN

y = x + 2

ELSE

y = x^2

END IF

PRINT “y =” ; y

END 结尾?

__________________________________________________________________________________________________________________________________

(2)判断框中的“条件”在条件语句中处于什么位置?

__________________________________________________________________________________________________________________________________

(3)“Yes”分支中的步骤在条件语句中处于什么位置?

__________________________________________________________________________________________________________________________________

(4)“No”分支中的步骤在条件语句中处于什么位置?

__________________________________________________________________________________________________________________________________

(5)当x=5的时候,计算机会执行哪些语句?

__________________________________________________________________________________________________________________________________

(6)当x=-5的时候,计算机会执行哪些语句?

__________________________________________________________________________________________________________________________________

条件语句的一般形式

条件结构框图 条件语句

当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件成立,就执行THEN之后的语句体,否则执行ELSE之后的语句体。

(2)一个分支的条件结构

当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件成立,就执行THEN之后的语句体,否则条件语句结束,执行END

IF之后的语句 二、条件结构的嵌套 步骤2 步骤1 YesNo满足条件?步骤 YesNo满足条件?IF 条件 THEN

语句

ENF IF IF 条件 THEN

语句体1

ELSE

语句体2

ENF IF 例22.函数1(0)0(0)1(0)xyxx,编写一个程序,输入x的值,输出y的值

解:用程序框图表示为

用QuickBASIC 语言可写为

INPUT

“x =” ; x

IF x>0 THEN

y = 1

ELSE

IF x=0 THEN

y = 0

ELSE

y = -1 开始

输入x

2yx0x?输出y 1yYesNo1y0x?0yYesNo外层选择结构

内层选择结构

外层IF语句 内层IF语句 END IF

END IF

PRINT “ y=”; y

END

该程序中有两个IF语句,大IF语句中嵌套了一个小IF语句。

[思考] 请将程序框图和相应的语句对应起来。

_________________________________________________________________________________________________________________________________

例23 编写一个程序,求一元二次方程20axbxc的根.

分析:24bac,

当0时方程有两个不相等的实根12,22bbxxaa;

当0时,方程有两个相等的实根122bxxa;

当0时,方程没有实根。

解:程序框图为

由程序框图写出QuickBASIC 程序

INPUT a,b,c

D=b^2-4*a*c

IF D>=0 THEN

IF D>0 THEN

x1=(-b+sqr(D))/2*a

x1=(-b-sqr(D))/2*a

PRINT “x1=”;x1,”x2=”;x2 1222bxabxa开始

输入2yx0成立?结束 YesNo0成立?YesNo24bac输出:没有实2bxa输出x 12,xx输出输出:没有实根 ELSE

x=-b/2*a

PRINT “x=”;x

END IF

ELSE

PRINT “No root.”

END IF

END

[思考]比较程序框图和程序语句,回答下列问题。

(1)在程序框图中找出外层条件结构和内层条件结构。

__________________________________________________________________________________________________________________________________

(2)在程序语句中找出外层条件语句和内层条件语句。

__________________________________________________________________________________________________________________________________

(3)找出程序框图和程序语句的对应关系。

__________________________________________________________________________________________________________________________________

(4)试给a,b,c取不同的值,使程序沿着三条不同的路线由开始走到结束。

__________________________________________________________________________________________________________________________________

例24. 排序

编写一个程序,使得任意输入的3个整数按从大到小的顺序输出。

算法分析:

我们用a,b,c表示输入的三个整数,比较三个整数,把最大的整数存入变量a中,次大的整数存入b中,最小的整数存入c中。

Step1:输入三个整数a,b,c;

Step2:将a与b比较,如果a

Step3:将a与c比较,如果a

(第2步和第3步后,a中存储的已经是最大的整数)

Step4:将b与c比较,如果b

(第4步后,b中存储的是次大的整数,c中存储的是最小的整数)

Step5:按顺序输出a,b,c。

注意:交换两个变量的值要用例20的“空桶法”。

解:程序框图为

根据程序框图,写出计算机程序为:

开始

输入a,b,c

输出a,b,c

结束 YesNo?bataabbtYesNo?cataacctYesNo?cbtbbccta b t

4 6 5 INPUT “a,b,c=”;a,b,c

IF b>a THEN

t=a

a=b

b=t

END IF

IF c>a THEN

t=a

a=c

c=t

END IF

IF c>b THEN

t=b

b=c

c=t END IF 第5行

第10行

第15行 PRINT a,b,c

END

[探究]

(1)假设输入的数据是4,6,5,在右面填入相应的数字。

(2) 程序运行到第5行可以达到的目的是:

__________________________________________________________________________________________________________________________________

(3) 程序运行到第10行可以达到的目的是:

__________________________________________________________________________________________________________________________________

(4) 程序运行到第15行可以达到的目的是:

__________________________________________________________________________________________________________________________________

[练习]

1.读程序,说出该程序的功能。

INPUT “Please input an inter:”;x

IF 9

相关文档
最新文档