《121输入语句输出语句和赋值语句》教学案5.docx
《《121输入语句输出语句和赋值语句》教学案5.docx》由会员分享,可在线阅读,更多相关《《121输入语句输出语句和赋值语句》教学案5.docx(17页珍藏版)》请在冰豆网上搜索。
《121输入语句输出语句和赋值语句》教学案5
《1.2.1输入语句、输出语句和赋值语句》教学案5
教学目标:
知识与技能
(1)正确理解输入语句、输出语句、赋值语句的结构.
(2)会写一些简单的程序.
(3)掌握赋值语句中的“=”的作用.
过程与方法
(1)让学生充分地感知、体验应用计算机解决数学问题的方法;并能初步操作、模仿.
(2)通过对现实生活情境的探究,尝试设计出解决问题的程序,理解逻辑推理的数学方法.
情感态度与价值观
通过本节内容的学习,使我们认识到计算机与人们生活密切相关,增强计算机应用意识,提高学生学习新知识的兴趣.
重点与难点
重点:
正确理解输入语句、输出语句、赋值语句的作用.
难点:
准确写出输入语句、输出语句、赋值语句.
学法与教学用具
计算机、图形计算器
教学设想
【创设情境】
在现代社会里,计算机已经成为人们日常生活和工作不可缺少的工具,如:
听MP3,看电影,玩游戏,打字排版,画卡通画,处理数据等等,那么,计算机是怎样工作的呢?
计算机完成任何一项任务都需要算法,但是,我们用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的.因此还需要将算法用计算机能够理解的程序设计语言(programminglanguage)翻译成计算机程序.
程序设计语言有很多种.如BASIC,Foxbase,C语言,C++,J++,VB等.为了实现算法中的三种基本的逻辑结构:
顺序结构、条件结构和循环结构,各种程序设计语言中都包含下列基本的算法语句:
输入语句输出语句赋值语句条件语句循环语句
这就是这一节所要研究的主要内容——基本算法语句.今天,我们先一起来学习输入、输出语句和赋值语句.(板出课题)
语句n
【探究新知】
我们知道,顺序结构是任何一个算法都离不开的基本结构.输入、输出语句和赋值语句基本上对应于算法中的顺序结构.(如右图)计算机从上而下按照语句排列的顺序执行这些语句.
输入语句和输出语句分别用来实现算法的输入信息,输出结果的功能.如下面的例子:
用描点法作函数
的图象时,需要求出自变量与函数的一组对应值.编写程序,分别计算当
时的函数值.
程序:
(教师可在课前准备好该程序,教学中直接调用运行)
INPUT“x=”;x
y=x^3+3*x^2-24*x+30
PRINTx
PRINTy
END
(学生先不必深究该程序如何得来,只要求懂得上机操作,模仿编写程序,通过运行自己编写的程序发现问题所在,进一步提高学生的模仿能力.)
〖提问〗:
在这个程序中,你们觉得哪些是输入语句、输出语句和赋值语句呢?
(同学们互相交流、议论、猜想、概括出结论.提示:
“input”和“print”的中文意思等)
(一)输入语句
在该程序中的第1行中的INPUT语句就是输入语句.这个语句的一般格式是:
INPUT“提示内容”;变量
其中,“提示内容”一般是提示用户输入什么样的信息.如每次运行上述程序时,依次输入-5,-4,-3,-2,-1,0,1,2,3,4,5,计算机每次都把新输入的值赋给变量“x”,并按“x”新获得的值执行下面的语句.
INPUT语句不但可以给单个变量赋值,还可以给多个变量赋值,其格式为:
INPUT“提示内容1,提示内容2,提示内容3,…”;变量1,变量2,变量3,…
例如,输入一个学生数学,语文,英语三门课的成绩,可以写成:
INPUT“数学,语文,英语”;a,b,c
注:
①“提示内容”与变量之间必须用分号“;”隔开.
②各“提示内容”之间以及各变量之间必须用逗号“,”隔开.但最后的变量的后面不需要.
(二)输出语句
在该程序中,第3行和第4行中的PRINT语句是输出语句.它的一般格式是:
PRINT“提示内容”;表达式
同输入语句一样,表达式前也可以有“提示内容”.例如下面的语句可以输出斐波那契数列:
PRINT“TheFibonacciProgressionis:
”;
11235813213455“…”
此时屏幕上显示:
TheFibonacciProgressionis:
11235813213455…
输出语句的用途:
(1)输出常量,变量的值和系统信息.
(2)输出数值计算的结果.
〖思考〗:
在1.1.2中程序框图中的输入框,输出框的内容怎样用输入语句、输出语句来表达?
(学生讨论、交流想法,然后请学生作答)
参考答案:
输入框:
INPUT“请输入需判断的整数n=”;n
输出框:
PRINTn;“是质数.”
PRINTn;“不是质数.”
(三)赋值语句
用来表明赋给某一个变量一个具体的确定值的语句.
除了输入语句,在该程序中第2行的赋值语句也可以给变量提供初值.它的一般格式是:
变量=表达式
赋值语句中的“=”叫做赋值号.
赋值语句的作用:
先计算出赋值号右边表达式的值,然后把这个值赋给赋值号左边的变量,使该变量的值等于表达式的值.
注:
①赋值号左边只能是变量名字,而不能是表达式.如:
2=X是错误的.
②赋值号左右不能对换.如“A=B”“B=A”的含义运行结果是不同的.
③不能利用赋值语句进行代数式的演算.(如化简、因式分解、解方程等)
④赋值号“=”与数学中的等号意义不同.
〖思考〗:
在1.1.2中程序框图中的输入框,哪些语句可以用赋值语句表达?
并写出相应的赋值语句.(学生思考讨论、交流想法.)
【例题精析】
〖例1〗:
编写程序,计算一个学生数学、语文、英语三门课的平均成绩.
分析:
先写出算法,画出程序框图,再进行编程.
算法:
程序:
INPUT“数学=”;a
INPUT“语文=”;b
INPUT“英语=”;c
y=(a+b+c)/3
PRINT“Theaverage=”;y
END
输出y
〖例2〗:
给一个变量重复赋值.
A=10
A=A+10
PRINTA
END
程序:
[变式引申]:
在此程序的基础上,设计一个程序,要求最后A的输出值是30.
(该变式的设计意图是学生加深对重复赋值的理解)
A=10
A=A+15
PRINTA
A=A+5
PRINTA
END
程序:
〖例3〗:
交换两个变量A和B的值,并输出交换前后的值.
分析:
引入一个中间变量X,将A的值赋予X,又将B的值赋予A,再将X的值赋予B,从而达到交换A,B的值.(比如交换装满水的两个水桶里的水需要再找一个空桶)
INPUTA
INPUTB
PRINTA,B
X=A
A=B
B=X
PRINTA,B
END
程序:
〖补例〗:
编写一个程序,要求输入一个圆的半径,便能输出该圆的周长和面积.(
取3.14)
分析:
设圆的半径为R,则圆的周长为
,面积为
,可以利用顺序结构中的INPUT语句,PRINT语句和赋值语句设计程序.
程序:
INPUT“半径为R=”;R
C=2*3.14*R
S=3.14*R^2
PRINT“该圆的周长为:
”;C
PRINT“该圆的面积为:
”;S
END
【课堂精练】
P15练习1.2.3
参考答案:
1.程序:
INPUT“请输入华氏温度:
”;x
y=(x-32)*5/9
PRINT“华氏温度:
”;x
PRINT“摄氏温度:
”;y
END
〖提问〗:
如果要求输入一个摄氏温度,输出其相应的华氏温度,又该如何设计程序?
(学生课后思考,讨论完成)
2.程序:
INPUT“请输入a(a
0)=”;a
INPUT“请输入b(b
0)=”;b
X=a+b
Y=a-b
Z=a*b
Q=a/b
PRINTa,b
PRINTX,Y,Z,Q
END
3.程序:
p=(2+3+4)/2
t=p*(p-2)*(p-3)*(p-4)
s=SQR(t)
PRINT“该三角形的面积为:
”;s
END
注:
SQR()是函数名,用来求某个数的平方根.
【课堂小结】
本节课介绍了输入语句、输出语句和赋值语句的结构特点及联系.掌握并应用输入语句,输出语句,赋值语句编写一些简单的程序解决数学问题,特别是掌握赋值语句中“=”的作用及应用.编程一般的步骤:
先写出算法,再进行编程.我们要养成良好的习惯,也有助于数学逻辑思维的形成.
【评价设计】
1.P23习题1.2A组1
(2)、2
2.试对生活中某个简单问题或是常见数学问题,利用所学基本算法语句等知识来解决自己所提出的问题.要求写出算法,画程序框图,并写出程序设计.
1.2.2-1.2.3条件语句和循环语句(第二、三课时)
教学目标:
知识与技能
(1)正确理解条件语句和循环语句的概念,并掌握其结构的区别与联系.
(2)会应用条件语句和循环语句编写程序.
过程与方法
经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力
情感态度与价值观
了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用.深刻体会到循环语句在解决大量重复问题中起重要作用.减少大量繁琐的计算.通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力.
重点与难点
重点:
条件语句和循环语句的步骤、结构及功能.
难点:
会编写程序中的条件语句和循环语句.
学法与教学用具
计算机、图形计算器
教学设想
【创设情境】
试求自然数1+2+3+……+99+100的和.
显然大家都能准确地口算出它的答案:
5050.而能不能将这项计算工作交给计算机来完成呢?
而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种:
条件语句和循环语句(板出课题)
【探究新知】
(一)条件语句
算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句.它的一般格式是:
(IF-THEN-ELSE格式)
IF条件THEN
语句1
ELSE
语句2
ENDIF
否
当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2.其对应的程序框图为:
(如上右图)
在某些情况下,也可以只使用IF-THEN语句:
(即IF-THEN格式)
IF条件THEN
语句
ENDIF
否
计算机执行这种形式的条件语句时,也是首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句.其对应的程序框图为:
(如上右图)
条件语句的作用:
在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去.需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理.
【例题精析】
〖例1〗:
编写程序,输入一元二次方程
的系数,输出它的实数根.
分析:
先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算法用对应的程序语句表达出来.
INPUT“Pleaseinputa,b,c=”;a,b,c
d=b*b-4*a*c
p=-b/(2*a)
q=SQR(ABS(d))/(2*a)
IFd>=0THEN
x1=p+q
x2=p-q
IFx1=x2THEN
PRINT“Onerealroot:
”;x1
ELSE
PRINT“Tworealroots:
x1”;x1,“andx2”;x2
ENDIF
ELSE
PRINT“Norealroot!
”
ENDIF
END
算法分析:
我们知道,若判别式
,原方程有两个不相等的实数根
、
;若
,原方程有两个相等的实数根
;若
,原方程没有实数根.也就是说,在求解方程之前,需要首先判断判别式的符号.因此,这个过程可以用算法中的条件结构来实现.
又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算
和
之前,先计算
,
.程序框图:
(参照课本
)
程序:
(如右图所示)
注:
SQR()和ABS()是两个函数,分别用来求某个数的平方根和绝对值.
即
,
〖例2〗:
编写程序,使得任意输入的3个整数按从大到小的顺序输出.
INPUT“a,b,c=”;a,b,c
IFb>aTHEN
t=a
a=b
b=t
ENDIF
IFc>aTHEN
t=a
a=c
c=t
ENDIF
IFc>bTHEN
t=b
b=c
c=t
ENDIF
PRINTa,b,c
END
算法分析:
用a,b,c表示输入的3个整数;为了节约变量,把它们重新排列后,仍用a,b,c表示,并使a≥b≥c.具体操作步骤如下.
第一步:
输入3个整数a,b,c.
第二步:
将a与b比较,并把小者赋给b,大者赋给a.
第三步:
将a与c比较.并把小者赋给c,大者赋给a,此时a已是三者中最大的.
第四步:
将b与c比较,并把小者赋给c,大者赋给b,此时a,b,c已按从大到小的顺序排列好.
第五步:
按顺序输出a,b,c.
程序框图:
(参照课本
)
程序:
(如右框图所示)
〖补例〗:
铁路部门托运行李的收费方法如下:
y是收费额(单位:
元),x是行李重量(单位:
kg),当0<x≤20时,按0.35元/kg收费,当x>20kg时,20kg的部分按0.35元/kg,超出20kg的部分,则按0.65元/kg收费,请根据上述收费方法编写程序.
分析:
首先由题意得:
该函数是个分段函数.需要对行李重量作出判断,因此,这个过程可以用算法中的条件结构来实现.
程序:
INPUT“请输入旅客行李的重量(kg)x=”;x
IFx>0ANDx<=20THEN
y=0.35*x
ELSE
y=0.35*20+0.65*(x-20)
ENDIF
PRINT“该旅客行李托运费为:
”;y
END
【课堂精练】
1.
练习2.(题略)
分析:
如果有两个或是两个以上的并列条件时,用“AND”把它们连接起来.
2.
练习1.(题略)
参考答案:
INPUT“请输入三个正数a,b,c=”;a,b,c
IFa+b>cANDa+c>bANDb+c>aTHEN
PRINT“以下列三个数:
”;a,b,c,“可以构成三角形.”
ELSE
PRINT“以下列三个数:
”;a,b,c,“不可以构成三角形!
”
ENDIF
END
(二)循环语句
否
算法中的循环结构是由循环语句来实现的.对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构.即WHILE语句和UNTIL语句.
(1)WHILE语句的一般格式是:
WHILE条件
循环体
WEND
其中循环体是由计算机反复执行的一组语句构成的.WHLIE后面的“条件”是用于控制计算机执行循环体或跳出循环体的.
当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句.因此,当型循环有时也称为“前测试型”循环.其对应的程序结构框图为:
(如上右图)
否
(2)UNTIL语句的一般格式是:
DO
循环体
LOOPUNTIL条件
其对应的程序结构框图为:
(如上右图)
〖思考〗:
直到型循环又称为“后测试型”循环,参照其直到型循环结构对应的程序框图,说说计算机是按怎样的顺序执行UNTIL语句的?
(让学生模仿执行WHILE语句的表述)
从UNTIL型循环结构分析,计算机执行该语句时,先执行一次循环体,然后进行条件的判断,如果条件不满足,继续返回执行循环体,然后再进行条件的判断,这个过程反复进行,直到某一次条件满足时,不再执行循环体,跳到LOOPUNTIL语句后执行其他语句,是先执行循环体后进行条件判断的循环语句.
〖提问〗:
通过对照,大家觉得WHILE型语句与UNTIL型语句之间有什么区别呢?
(让学生表达自己的感受)
区别:
在WHILE语句中,是当条件满足时执行循环体,而在UNTIL语句中,是当条件不满足时执行循环体.
【例题精析】
〖例3〗:
编写程序,计算自然数1+2+3+……+99+100的和.
分析:
这是一个累加问题.我们可以用WHILE型语句,也可以用UNTIL型语句.由此看来,解决问题的方法不是惟一的,当然程序的设计也是有多种的,只是程序简单与复杂的问题.
程序:
i=1
sum=0
WHLIEi<=100
sum=sum+i
i=i+1
WEND
PRINTsum
END
i=1
sum=0
DO
sum=sum+i
i=i+1
LOOPUNTILi>100
PRINTsum
END
WHILE型:
UNTIL型:
〖例4〗:
根据1.1.2中的图1.1-2,将程序框图转化为程序语句.
分析:
仔细观察,该程序框图中既有条件结构,又有循环结构.
INPUT“n=”;n
flag=1
IFn>2THEN
d=2
WHILEd<=n-1ANDflag=1
IFnMODd=0THEN
flag=0
ELSE
d=d+1
ENDIF
WEND
ELSE
IFflag=1THEN
PRINTn;“是质数。
”
ELSE
PRINTn;“不是质数。
”
ENDIF
ENDIF
END
程序:
〖思考〗:
上述判定质数的算法是否还能有所改进?
(让学生课后思考.)
〖补例〗:
某纺织厂1997年的生产总值为300万元,如果年生产增产率为5﹪,计算最早在哪一年生产总值超过400万元.
分析:
从1997年底开始,经过x年后生产总值为300×(1+5﹪)x,可将1997年生产总值赋给变量a,然后对其进行累乘,用n作为计数变量进行循环,直到a的值超过400万元为止.
解:
程序框图为:
程序:
是
a=300
p=1.05
n=1997
DO
a=a*p
n=n+1
LOOPUNTILa>400
PRINTn
END
【课堂精练】
1.
练习2.3(题略)
参考答案:
2.解:
程序:
X=1
WHILEX<=20
Y=X^2-3*X+5
X=X+1
PRINT“Y=”;Y
WEND
END
3.解:
程序:
INPUT“请输入正整数n=”;n
a=1
i=1
WHILEi<=n
a=a*i
i=i+1
WEND
PRINT“n!
=”;a
END
【课堂小结】
本节课主要学习了条件语句和循环语句的结构、特点、作用以及用法,并懂得利用解决一些简单问题.条件语句使程序执行产生的分支,根据不同的条件执行不同的路线,使复杂问题简单化.有些复杂问题可用两层甚至多层循环解决.注意内外层的衔接,可以从循环体内转到循环体外,但不允许从循环体外转入循环体内.
条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题,还有求分段函数的函数值等,往往要用条件语句,有时甚至要用到条件语句的嵌套.
循环语句主要用来实现算法中的循环结构,在处理一些需要反复执行的运算任务.如累加求和,累乘求积等问题中常用到.
【评价设计】
1.P23习题1.2A组3、4
P24习题1.2B组2.
2.试设计一个生活中某个简单问题或是常见数学问题,并利用所学基本算法语句等知识编程.(要求所设计问题利用条件语句或循环语句)