条件语句(新课标A版)

文档属性

名称 条件语句(新课标A版)
格式 zip
文件大小 365.6KB
资源类型 教案
版本资源 人教新课标A版
科目 数学
更新时间 2012-05-22 21:13:20

文档简介

(共27张PPT)
1、输入语句、输出语句和赋值语句对应于算法中的哪种结构?这三种语句的一般格式是什么?
2、什么是条件结构?用程序框图表示这种结构
顺序结构
输入语句
输出语句
赋值语句
INPUT “提示文字”;变量
PRINT “提示内容”;表达式
变量=表达式
满足条件?
语句1
语句2


复习
满足条件?


语句
1、理解基本算法语句—条件语句,及其与条件结构的关系.
2、初步体验如何由程序框图转化为程序语句.
3、通过条件语句的学习,进一步体会算法的基本思想.
学习目标
程序框图
条件语句的一般格式
IF 条件 THEN
语句体(步骤A)
END IF
如果(IF)条件满足,那么(THEN)执行语句体,否则执行END IF之后的语句.
步骤A
满足条件?


学习过程
满足条件?
步骤A
步骤B


程序框图
条件语句的一般格式
IF 条件 THEN
语句体1(步骤A)
ELSE
语句体2(步骤B)
END IF
如果(IF)条件满足,那么(THEN)执行语句体1,否则(ELSE)执行语句体2.
1.IF与END IF要配对使用.
2.END IF是结束条件语句,END则是结束整个程序.
在某些情况下,也可以只使用IF—THEN语句:(即IF—THEN 格式)
IF 条件 THEN
语句
END IF
满足条件?


语句
练习1.编写一个程序,从键盘上输入一个数,若是正数就将其输出。
程序: INPUT “x=” ;x
IF x>0 THEN
PRINT x
END IF
END
练习2.把下列语句的意义翻译成程序框图
(1)
IF x>0 THEN
y=1
ELSE
y=0
END IF
(2)
IF x<0 THEN
x=ABS(x) END IF PRINT“x的绝对值为:”;x
程序框图
算 法
第一步 输入一个实数 . 第二步 判断 的符号.若 ,则输出 ;否则,输出 .

输出
开始
输入
结束

输出
INPUT x
IF x>=0 THEN
PRINT x
ELSE
PRINT - x
END IF
END
程 序
例1 设计一个程序,求实数 的绝对值.
例2 编写程序,输出两个不相等的实数a、b的最大值.
算法一:
第一步,输入a, b的数值.
第二步,判断a,b的大小关系,若a>b,则输出a的值,否则,输出b的值.
程序框图
程序如下:(“IF—THEN—ELSE”语句)
INPUT “a,b”;a,b
IF a>b THEN
PRINT a
ELSE
PRINT b
END IF
END
算法二:
第一步,输入a,b的数值.
第二步,判断a,b的大小关系,若b>a,
则将b的值赋予a;否则,直接执行第三步.
第三步,输出a的值,结束.
(程序框图如下图)
程序如下:(“IF—THEN”语句)
INPUT “a,b”;a,b
IF b>a THEN
a=b
END IF
PRINT a
END
练习 编写求一个数是偶数还是奇数的程序,从键盘上输入一个整数,输出该数的奇偶性。
程序:INPUT “x=”;x
y= x MOD 2
IF y=0 THEN
PRINT x ; “该数是偶数”
ELSE
PRINT x ; “该数是奇数”
END IF
END
程序: INPUT “x=”;x
IF x>0 AND x<=20 THEN
y=0.35﹡x
ELSE
y=0.35﹡20+0.65﹡(x-20)
PRINT “y=”;y
END IF
END
探究交流:火车托运行李的收费方法如下:
y是收费,x为行李重量,当0<x≤20(千克)时,按每千克0.35元收费。当x>20(千克)时,20千克的部分按0.35元的单价收费,超出20千克的部分,则按0.65元的单价收费。请根据上述收费方法编写程序。
(0(x > 20)
某市公用电话(市话)的收费标准为:
3分钟之内(包括3分钟)收取0.30元;
超过3分钟部分按0.10元/分钟加收费.
设计一个程序,根据通话时间计算话费.
练习
TNPUT “通话时间”;t
IF t<=3 and t>0 THEN
c=0.30
ELSE
c=0.30+0.10*(t-3)
END IF
PRINT “通话费用”;c
END
例4.编写程序,使得任意输入3个整数按从大到小的顺序输出.
算 法
第四步,将b与c比较,并把小者赋给c,大者赋给b
第一步,输入3个整数
第二步,将 与b比较,并把小者赋给b,大者赋给
第三步,将 与c比较,并把小者赋给c,大者赋给
第五步,按顺序输出
INPUT “a,b,c=”;a,b,c
程序
开始
t=a,a=b,b=t
t=a,a=c,c=t
t=b,b=c,c=t
输入a,b,c
输出a,b,c
b>a
c>a
c>b



结束
程序框图



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
PRINT a,b,c
END
高等数学中经常用到符号函数,符号函数的定义为y=
试编写程序输入x的值,输出y的值.
(嵌套结构)
程序框图
解:程序一
程序如下:
INPUT x
IF x>0 THEN
y=1
ELSE
IF x=0 THEN
y=0
ELSE
y=-1
END IF
END IF
PRINT y
END
(嵌套结构)
程序二
程序框图(右图):
程序如下:
INPUT x
IF x>0 THEN
y=1
END IF
IF x=0 THEN
y=0
END IF
IF x<0 THEN
y=-1
END IF
PRINT y
END
(叠加结构)
例5.编写程序,输入一元二次方程 的系数,输出方程的实数根.
算 法
第一步:输入三个系数
第二步:计算
第四步:判断
是否成立.若是,则输出
否则,计算
并输出
第三步:判断
是否成立.若是,则计算
否则,输出“方程没有实数根”,结束算法.
程序框图
开始
输入
输出
结束

输出

方程没有实数根



输入a,b,c
开始
=b2-4ac
≥0

p=-b/2a
=0
x1=p+q
x2=p-q
输出x1,x2
无解
输出p
结束


程 序
p= – b/(2*a)
q=SQR(d)/(2*a)
IF d>=0 THEN
IF d=0 THEN
PRINT “xl,x2=”;p+q,p-q
END IF
ELSE
PRINT “No real root.”
END IF
END
INPUT “a,b,c=”;a,b,c
PRINT “x1=x2”;p
ELSE
d=b^2-4*a*c
满足条件?
步骤A


程序框图
条件语句的一般格式
IF 条件 THEN
语句体
END IF
满足条件?
步骤A
步骤B


IF 条件 THEN
语句体1
ELSE
语句体2
END IF
P29)练习1程序
INPUT “a,b,c=“;a,b,c IF a+b>c AND a+c>b AND b+c>a THEN PRINT “YES” ELSE PRINT “NO” END IF END
P29)练习2程序
INPUT “Please input an integer:”;x
IF 9a=x\10
b=x MOD 10
x=10 b+a
PRINT x
END IF
END
P29)练习3程序
INPUT “Please input an integer:“;a
IF a MOD 2=0 THEN
PRINT “Even.”
ELSE
PRINT “Odd.”
END IF
END
P29)练习4程序 INPUT “Please input a year:“;y b=y MOD 4 c=y MOD 100 d=y MOD 400 IF b=0 AND C<>0 THEN PRINT “Leap year.” ELSE IF d=0 THEN PRINT “Leap year.” ELSE PRINT “Not leap year.” END IF END IF END(共22张PPT)
1.1.2 程序框图与算法 的基本逻辑结构
第二课时
问题提出
1.用程序框、流程线及文字说明来表示算法的图形称为程序框图,它使算法步骤显得直观、清晰、简明.其中程序框有哪几种基本图形?它们表示的功能分别如何?
终端框 (起止框)
输入、输出框
处理框 (执行框)
判断框
流程线
2.顺序结构是任何一个算法都离不开的基本逻辑结构,在一些算法中,有些步骤只有在一定条件下才会被执行,有些步骤在一定条件下会被重复执行,这需要我们对算法的逻辑结构作进一步探究.
知识探究(一):算法的条件结构
思考1:在某些问题的算法中,有些步骤只有在一定条件下才会被执行,算法的流程因条件是否成立而变化.在算法的程序框图中,由若干个在一定条件下才会被执行的步骤组成的逻辑结构,称为条件结构,用程序框图可以表示为下面两种形式:
满足条件?
步骤A
步骤B


满足条件?
步骤A


你如何理解这两种程序框图的共性和个性?
思考2:判断“以任意给定的3个正实数为三条边边长的三角形是否存在”的算法步骤如何设计?
第二步,判断a+b>c,b+c>a,c+a>b是否同时成立.若是,则存在这样的三角形;否则,不存在这样的三角形.
第一步,输入三个正实数a,b,c.
思考3:你能画出这个算法的程序框图吗?
开始
输入a,b,c
a+b>c,b+c>a,c+a>b是否同时成立?

存在这样的三角形
结束

不存在这样的三角形
知识探究(二):算法的循环结构
思考1:在算法的程序框图中,由按照一定的条件反复执行的某些步骤组成的逻辑结构,称为循环结构,反复执行的步骤称为循环体,那么循环结构中一定包含条件结构吗?
思考2:某些循环结构用程序框图可以表示为:
循环体
满足条件?


这种循环结构称为直到型循环结构,你能指出直到型循环结构的特征吗?
在执行了一次循环体后,对条件进行判断,如果条件不满足,就继续执行循环体,直到条件满足时终止循环.
思考3:还有一些循环结构用程序框图可以表示为:
循环体
满足条件?


这种循环结构称为当型循环结构,你能指出当型循环结构的特征吗?
在每次执行循环体前,对条件进行判断,如果条件满足,就执行循环体,否则终止循环.
思考4:计算1+2+3+…+100的值可按如下过程进行:
第1步,0+1=1.
第2步,1+2=3.
第3步,3+3=6.
第4步,6+4=10.
……
第100步,4950+100=5050.
我们用一个累加变量S表示每一步的计算结果,即把S+i的结果仍记为S,从而把第i步表示为S=S+i,其中S的初始值为0,i依次取1,2,…,100,通过重复操作,上述问题的算法如何设计?
第四步,判断i>100是否成立.若是,则输出S,结束算法;否则,返回第二步.
第一步,令i=1,S=0.
第二步,计算S+i,仍用S表示.
第三步,计算i+1,仍用i表示.
思考5:用直到型循环结构,上述算法的程序框图如何表示?
开始
i=1
i>100?

输出S
结束
S=0
i=i+1
S=S+i

思考6:用当型循环结构,上述算法的程序框图如何表示?
开始
i=1
结束
输出S


S=0
S=S+i
i≤100?
i=i+1
例1 设计一个求解一元二次方程ax2+bx+c=0的算法,并画出程序框图表示.
理论迁移
算法分析:
第一步,输入三个系数a,b,c.
第二步,计算△=b2-4ac.
第三步,判断△≥0是否成立.若是,则计 算 ;否则,输出“方程没有 实数根”,结束算法.
第四步,判断△=0是否成立.若是,则输出 x1=x2=p,否则,计算x1=p+q,x2=p-q, 并输出x1,x2.
程序框图:
开始
输入a,b,c
△= b2-4ac
△≥0?
△=0?

x1=p+q
输出x1,x2
结束


x2=p-q
输出x1=x2=p

输出“方程没有实数根”
例2 某工厂2005年的年生产总值为200万元,技术革新后预计以后每年的年生产总值都比上一年增长5%.设计一个程序框图,输出预计年生产总值超过300万元的最早年份.
第三步,判断所得的结果是否大于300. 若是,则输出该年的年份; 否则,返回第二步.
第一步, 输入2005年的年生产总值.
第二步,计算下一年的年生产总值.
算法分析:
(3)控制条件:当“a>300”时终止循环.
(1)循环体:设a为某年的年生产总值,t为年生产总值的年增长量,n为年份,则t=0.05a,a=a+t,n=n+1.
(2)初始值:n=2005,a=200.
循环结构:
开始
n=2005
a=200
t=0.05a
a=a+t
n=n+1
a>300?
结束
输出n


程序框图:
(3)条件结构和循环结构的程序框图各有两种形式,相互对立统一.
条件结构和循环结构的基本特征:
小结作业
(1)程序框图中必须有两个起止框,穿插输入、输出框和处理框,一定有判断框.
(2)循环结构中包含条件结构,条件结构中不含循环结构.
作业:
P20习题1.1A组:2,3.