当前位置:首页 >> 其它课程 >>

1.2.2基本算法语言(第二课时)


1.2 基本算法语句 1.2.2 条件语句

问题提出

1.输入语句、输出语句和赋值语句 的一般格式分别是什么? 输入语句: INPUT “提示内容”;变量 输出语句: PRINT “提示内容”;表达式 赋值语句: 变量=表达式

2.对于顺序结构的算法或程序框图, 我们可以利用输入语句、输出语句和赋 值语句写出其

计算机程序.对于条件结构 的算法或程序框图,要转化为计算机能 够理解的算法语言,我们必须进一步学 习条件语句.

知识探究(一):条件语句(1)

下图是算法的条件结构用程序框图表示 的一种形式,它对应的条件语句的一般 格式设定为: IF 条件 THEN 语句体 END IF 你能理解这个算法 语句的含义吗?
满足条件?




步骤A

IF

条件 THEN 语句体 END IF

满足条件?




步骤A

当计算机执行上述语句时,首先对 IF后的条件进行判断,如果(IF)条件 符合,那么(THEN)执行语句体,否则 执行END IF之后的语句.

条件语句(2) 下图是算法的条件结构用程序框图表示 的另一种形式,它对应的条件语句的一 般格式设定为:

IF

条件 THEN 语句体1 ELSE 语句体2 END IF

满足条件?




步骤1

步骤2

你能理解这个算法语句的含义吗?

IF

条件 THEN 语句体1 ELSE 语句体2 END IF

满足条件?




步骤1
步骤2

当计算机执行上述语句时,首先对IF 后的条件进行判断,如果(IF)条件 符合,那么(THEN)执行语句体1, 否则(ELSE)执行语句体2.

例1:求实数x的绝对值有如下一个算法: 第一步,输入一个实数x. 第二步,判断x的符号.若x<0,则x=-x; 否则,x=x. 第三步,输出x. 该算法的程序框图如何表示?

开始 输入x x<0? 是 x=-x 输出x 结束 否

程序语言
开始 输入x

x<0?
是 x=-x 输出x 结束



INPUT x IF x<0 THEN x=-x END IF PRINT END x

例1(2):求实数x的绝对值又有如下一 个算法: 第一步,输入一个实数x. 第二步,判断x的符号.若x≥0,则输出 x;否则,输出-x. 该算法的程序框图如何表示?

开始 输入x x≥0? 是 输出x 否

输出-x

结束

程序语言
开始
输入x x≥0? 是 输出x 结束 否

INPUT “x=”;x

IF x>=0 THEN PRINT x
ELSE PRINT END IF END -x

输出-x

练习1 阅读下面的程序,你能说明它是 一个什么问题的算法吗? INPUT “a,b=”;a,b IF a>b THEN x=a 对实数 a , b a=b 按从小到大 b=x 排序 . END IF PRINT a,b END

练习2:阅读下面的程序,你能说明它是 一个什么问题的算法吗? INPUT “x=”;x IF x>=1 THEN 求分段函数 y=x∧2+3*x ? x ? 3 x, x ? 1 y?? ELSE ? x ? 4, x ? 1 y=x-4 的函数值. END IF PRINT y END
2

理论迁移

开始 输入a,b,c △ = b2 - 4 a c △ ≥0 ? 是
p= b 2a

例1 将下列 解一元二次方 程ax2+bx+c=0的 程序框图转化 为程序.




q=

V 2a

△=0? 否 x1=p+q x2=p-q 输出“方程没有 实数根”

输出x1=x2=p

输出x1,x2 结束

解法一:相应的QBASIC程序:IF---THEN语句
INPUT “a,b,c=”;a,b,c d=b^2-4*a*c IF d>0 THEN x1 =(-b+SQR(d))/(2*a) x2 =(-b-SQR(d))/(2*a) PRINT “两个不等实数根:”;x1,x2 END IF IF d=0 THEN x = -b/(2* a) PRINT “一个实数根:”;x END IF IF d<0 THEN PRINT “没有实数根.” END IF END

叠加结构

解法二:QBASIC程序:IF---THEN---ELSE语句
INPUT “请输入一元二次方程的系数a,b,c=”;a,b,c d=b*b-4*a*c IF d >= 0 THEN p = -b / (2 * a) q = SQR(d)) / (2 * a) x1 = p + q x2 = p - q IF d=0 THEN

嵌套

PRINT “只有一个实根x1=x2 =”;p ELSE PRINT “有两个实根x1=,x2=”;p+q,p-q END IF
ELSE PRINT “没有实根” END IF END

例7 编写程序,使得任意输入3个整数按大到小的顺序输出.

算法分析:3个数两两比较,确定大小.按a、b、c 输入,要按a、b、c输出,关键要找到最大值,将 它赋值给a,中值赋给b,最小值赋给c.
第一步 第二步 第三步 第四步 第五步 输入3个整数a、b、c 将a与b比较,并把小者赋给b,大的赋给a; 将a与c比较,并把小者赋给c,大的赋给a 将b与c比较,并把小者赋给c,大的赋给b 按顺序输出a,b,c.

开始

输入a,b,c 是 b>a?


t=a a=b b=t

c>a? 否



t=a a=c c=t


c>b? 否

t=b
b=c c=t

输出a,b,c 结束

INPUT 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 PRINT a,b,c END

练习.设计一个程序,要求输入三 个数a,b,c,输出其中最大的数. 程序如下:
INPUT “a,b,c=”;a,b,c big=a IF b>big THEN big=b END IF IF c>big THEN big=c END IF PRINT “max is: ”;big END

开始
输入a,b,c big=a

否 b>big
big=b 否 c>big big=c





输出big 结束

小结与作业
1、条件结构的程序表示 IF 条件 THEN 语句1 ELSE 否 语句2 END IF IF 条件 THEN 语句 END IF
满足条件?

满足条件? 是

语句1

语句2

语句

2、条件语句一般用在需要对条件进行判断的算法设计中,如 判断一个数的正负,确定两个数的大小等问题,还有求分段 函数的函数值等,往往要用条件语句,有时甚至要用到条件 语句的嵌套. 作业:P29.练习1,2,3,4.

开始

练习1.该程序框图所表示的算法是作用是 什么?并根据程序框图写出相应的程序.
INPUT “请输入三个正数a,b,c”;a,b,c

输入正数a,b,c

IF a+b>c,and a+c>b,and b+c>a THEN PRINT “存在这样的三角形.”

a+b>c,a+c > b, b+c > a是否同时成立?



ELSE PRINT “不存在这样的三角形.” END IF


存在这样的 三角形

END 不存在这样 的三角形

结束

程序框图: 开始 输入重量G

G<=50?



练习2、某快递公司规定甲、乙两 地之间物品的托运费用根据下面的 方法计算:物品重量在50千克以内, 托运费为每千克 0.53 元,超过的 话,超过部分每千克0.85元,试画出 计算费用f的程序框图,并写出相应 的QBASIC程序.
对应的QBASIC程序


M=0.53*G 输出运费M M=50*0.53+0.85*(G-50) INPUT “输入重量G=”;G

结束

IF G<=50 THEN M=0.53*G ELSE M=50*0.53+0.85*(G-50) END IF PRINT “运费为:”;M END

练习3:编写求一个数是偶数还是奇数的程序,从 键盘上输入一个整数,输出该数的奇偶性.
程序:INPUT “x=”;x
y= x MOD 2
IF y=0 THEN PRINT “x is an even number” ELSE PRINT “x is an odd number”

END IF
END

练习4:闰年是 指年份能被4整 除但不能被100 整除,或者能被 400整除的年份. 编写一个程序, 判断输入的年份 是否为闰年.

INPUT “请输入一个年份x=”;x b=x MOD 4 c=x MOD 100 d=x MOD 400 IF b=0 AND c<>0 THEN PRINT “输入的年份x是闰年” ELSE IF d=0 THEN PRINT “输入的年份x是闰年” ELSE PRINT “输入的年份x不是闰年” END IF END IF END

小结作业

1.条件语句有两种形式,应用时要根据 实际问题适当选取.
2.编写含有多个条件结构的程序时,每 个条件语句执行结束时都以END IF表示.

练习:P29练习:1,2,3,4.

作业:P33:A组1,B组3.


相关文章:
《1.2 基本算法语句》第二课时
1.2 基本算法语句》第二课时 数学必修三,第一章算法,分课时习题数学必修三...算法的是( ) A、流程图 B、伪代码 C、 数据库 D、 自然语言 4、算法: ...
《1.2 基本算法语句》一课一练2
1.2 基本算法语句》一课一练2_高三数学_数学_...语言 4、算法: S1 输入 n S2 判断 n 是否是 2...哪个算法更高效?为什么? 第二步 水烧开后,洗刷...
1.2 基本算法语句
语言. 本节我们共同研究程序设计语言中的一些基本算法语 句. 1.程序是算法的...对 兔子饲养到第二个月进入成年,第三个月生对小兔,以后每个月生对小兔...
1.2基本算法语句
1 教学用具 黑板 教学方法 指导自学 课时安排 3 1.2 基本算法语句 1、输入...第一步,用自然语言表述算法步骤. 第二步, 确定每个算法步骤所包含的逻辑结构,...
2.基本算法语句(教师)
2.基本算法语句(教师)_六年级数学_数学_小学教育_教育专区。高中数学必修 3---第基本算法语句(二) 之前的内容中,我们已经学习了自然语言法和程序框法;但...
1.2. 基本算法语句(1)
试设计适当的算法求出这名学生三科的平均 分. 二、学生活动 1.学生讨论,教师...A=(a+b+c)/3 输出 A 结束 2.怎样将以上算法转换成计算机能理解的语言呢?...
(教案1)1.2基本算法语句
2010 学年高一必修 3 教案 科目:数学 编写:杨晓玲 第一课时 1.2.1 输入、...各种程序设计语言中都包 含下列基本算法语句: 输入语句 输出语句 赋值语句 ...
1.2基本算法语句
抚顺四中高一数学新课标同步训练 编辑:尹凤林 1.2 基本算法语句 二.同步训练 ...0 6.若输入 8 时,则下列程序执行后输出的结果是 0.7 7.在程序语言中,...
1.2基本算法语句(教学反思)
1.2 基本算法语句 (教学反思) 数学组 蔡云巧 课型:汇报课算法语句是继“程序框图”之后学习的内容,是解决某一个(或一类)问题的 算法的程序实现. 学习算法的...
1.2基本算法语句
1.2基本算法语句 .主备人:赵仁海 晏倩 主备人: 计算机程序语言中的基本语句..."求一元二次方程 ax2+bx+c=0 的根"的算法,这个程序运行后第一步: 要求...
更多相关标签:
c语言基本算法 | c语言最基本的算法 | 1.2基本算法语句 | 基本不等式第二课时 | 2.1整式第二课时ppt | 14.3.2公式法第二课时 | 1.2.4绝对值第二课时 | 2.1整式第二课时教案 |