1.2.1 输入语句、输出语句和赋值语句
教学要求:正确理解输入语句、输出语句、赋值语句的结构. 让学生充分地感知、体验应用计算机解决数学问题的方法;并能初步操作、模仿. 通过实例使学生理解3种基本的算法语句(输入语句、输出语句和赋值语句)的表示方法、结构和用法,能用这三种基本的算法语句表示算法,进一步体会算法的基本思想.
教学重点:会用输入语句、输出语句、赋值语句.
教学难点:正确理解输入语句、输出语句、赋值语句的作用.
教学过程:
一、新课导入:
1. 提问:学习了哪些算法的表示形式?(自然语言或程序框图描述 )
算法中的三种基本的逻辑结构?(顺序结构、条件结构和循环结构)
2. 导入:我们用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的. 因此还需要将算法用计算机能够理解的程序设计语言翻译成计算机程序. 程序设计语言有很多种. 如BASIC,Foxbase,C语言,C++,J++,VB,VC,JB等.
各种程序设计语言中都包含下列基本的算法语句:输入语句、输出语句、赋值语句条件语句和循环语句.今天,我们一起用类BASIC语言学习输入语句、输出语句、赋值语句. 基本上对应于算法中的顺序结构.
二、讲授新课:
1. 教学三种语句的格式及功能:
① 出示例1:编写程序,计算一个学生数学、语文、英语三门课的平均成绩.
(分析算法→框图表示→ 教师给出程序,学生试说说对各语句的理解.)
② 对照例1的程序,学习三种语句的格式与功能.
语句、格式、功能 说明
输入语句INPUT格式:INPUT “提示内容”;变量功能:从键盘输入值给变量. 程序运行到INPUT语句时会暂停,屏幕上出现一个问号,等待你从键盘输入一些数据,输入后按回车,程序把这些数据依次赋值给变量表中的变量,然后继续往下执行. 格式中有“;”与“,”分隔的区别
输出语句PRINT格式:PRINT “提示内容”;表达式功能:在屏幕上输出常量、变量或表达式的值,可以输出数值计算的结果. 表达式可以是常量、变量、计算公式或系统信息. 一个语句可以输出多个表达式,之间用“,”或“;”分隔. 如果表达式是引号引起来的字符串,则原样输出.如果PRINT语句后没有任何内容,则表示输出一个空行.
赋值语句LET格式:LET 变量=表达式功能:计算表达式的值,将此值赋给“=”左边的变量. “LET”可以省略,“=”的右侧必须是表达式,左侧必须是变量. 一个赋值语句只能给一个变量赋值,但在一个语句行中可以写出多个赋值语句,中间是“:”分隔. 赋值号“=”与数学中的等号不完全一样,常重复赋值
2. 教学例题:
① 出示例2:用描点法作函数y=x3+3x2-24x+30的图象时,需要求出自变量和函数的一组对应值. 编写程序,分别计算当x=-5,-4,-3,-2,-1,0,1,2,3,4,5时的函数值
② 出示例3:给一个变量重复赋值. (程序见P16)
③ 出示例4:交换两个变量A和B的值,并输出交换前后的值.
(教法:先分析算法→画出框图→编写程序→分析各语句→变式→小结:先写算法,再编程)
3. 小结:输入、输出和赋值语句的格式;赋值“=”及表达式;编写简单程序解决数学问题.
三、课后作业:习案5
INPUT “Maths=”;a
INPUT “Chinese=”;b
INPUT “English=”;c
d=(a+b+c)/3
PRINT “The average=”;d
END
1.2.2条件语句
一、三维目标:
1、知识与技能
(1)正确理解条件语句的概念,掌握其结构。
(2)会应用条件语句编写程序。
2、过程与方法
经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力
3、情感态度与价值观
了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用。通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。
二、重点与难点
重点:条件语句的步骤、结构及功能。难点:会编写程序中的条件语句。
四、教学设计
(一)练习
1. 将两个数交换,使,下面语句正确一组是 ( B )
A. B. C. D.
2. 计算机执行下面的程序段后,输出的结果是( B )
PRINT ,
A. B. C. D.
3. 下列给出的赋值语句中正确的是( B )
A. B. C. D.
4. 阅读右边的程序,然后判断下列哪个是程序执行后的结果( D)
A、5 B、15 C、11 D、14
【创设情境】
试求自然数1+2+3+……+99+100的和。
显然大家都能准确地口算出它的答案:5050。而能不能将这项计算工作交给计算机来完成呢?而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种:条件语句和循环语句(板出课题)
【探究新知】
(一)条件语句
算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句。它的一般格式是:(IF-THEN-ELSE格式)
当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2。其对应的程序框图为:(如上右图)
在某些情况下,也可以只使用IF-THEN语句:(即IF-THEN格式)
计算机执行这种形式的条件语句时,也是首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句。其对应的程序框图为:(如上右图)
条件语句的作用:在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理。
【例题精析】
〖例1〗:教材P25面例5
〖例2〗:编写程序,输入一元二次方程的系数,输出它的实数根。
算法分析:我们知道,若判别式,原方程有两个不相等的实数根、;若,原方程有两个相等的实数根; 若,原方程没有实数根。也就是说,在求解方程之前,需要首先判断判别式的符号。因此,这个过程可以用算法中的条件结构来实现。
又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算和之前,先计算,。
程序框图:(参照课本)
程序:(如右图所示)
注:SQR()和ABS()是两个函数,分别用来求某个数的平方根和绝对值。
即 ,
〖例3〗:编写程序,使得任意输入的3个整数按从大到小的顺序输出。
算法分析:用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
IF x>0 AND x<=20 THEN
y=0.35*x
ELSE
y=0.35*20+0.65*(x-20)
END IF
PRINT “该旅客行李托运费为:”;y
END
【课堂精练】
1.P29 练习 1。2。3。4
课后练习
1. 给出以下四个问题,
①, 输出它的相反数. ②求面积为的正方形的周长. ③求三个数中输入一个数的最大数. ④求函数的函数值. 其中不需要用条件语句来描述其算法的有 (A )
A. 个 B. 个 C. 个 D. 个仅②不需要分情况讨论,即不需要用条件语句
2. 右程序运行后输出的结果为__22,-22__.
3. 当时,下面的程序段输出的结果是( D )
IF THEN
ELSE
PRINT y
A. B. C. D.
作业:《习案》作业六
a=b
b=a
c=b
b=a
a=c
b=a
a=b
a=c
c=b
b=a
x=2
y=3*x-1
x=y
PRINT 3*x-1
END
满足条件?
语句1
语句2
是
否
IF 条件 THEN
语句1
ELSE
语句2
END IF
满足条件?
语句
是
否
IF 条件 THEN
语句
END IF
INPUT “ a,b,c =”;a,b,c
d=b*b-4*a*c
p=-b/(2*a)
q=SQR(ABS(d))/(2*a)
IF d>=0 THEN
x1=p+q
x2=p-q
IF x1=x2 THEN
PRINT “One real root:”;x1
ELSE
PRINT “Two real roots:x1”;x1,“and x2”;x2
END IF
ELSE
PRINT “No real root!”
END IF
END
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
PRINT a,b,c
END
IF THEN
ELSE
END IF
PRINT x-y ; y-x
END
第3题
1.2.3循环语句(第三课时)
教学目标:
知识与技能
(1)正确理解循环语句的概念,并掌握其结构。
(2)会应用条件语句和循环语句编写程序。
过程与方法
经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力
重点与难点
重点:条件语句和循环语句的步骤、结构及功能。
难点:会编写程序中的条件语句和循环语句。
教学过程
问题提出
1.两种条件语句的一般格式分别是什么?
2.对于顺序结构、条件结构的算法或程序框图,我们可以利用输入语句、输出语句、赋值语句和条件语句写出其计算机程序.对于循环结构的算法或程序框图,要转化为计算机能够理解的算法语言,我们必须进一步学习循环语句.
知识探究(一):直到型循环语句
思考1:直到型循环结构的程序框图是什么?
思考2:该循环结构对应的循环语句的一般格式设定为:
你能说明计算机在执行上述语句时是怎样工作的吗?
先执行一次DO和UNTIL之间的循环体,再对UNTIL后的条件进行判断.如果条件不符合,则继续执行循环体;然后再检查上述条件,如果条件仍不符合,则再次执行循环体,直到条件符合为止.这时,计算机将不执行循环体,而执行UNTIL语句之后的语句.
思考3:计算1+2+3+…+100的值有如下算法:
第一步,令i=1,S=0.
第二步,计算S+i,仍用S表示.
第三步,计算i+1,仍用i表示.
第四步,判断i>100是否成立.若是,则输出S,结束算法;否则,返回第二步.
你能利用UNTIL语句写出这个算法对应的程序吗?
思考4:在下面的程序运行中,计算机输出的结果是多少?
-1
知识探究(二):当型循环语句
思考1:当型循环结构的程序框图是什么?
思考2:该循环结构对应的循环语句的一般格式设定为:
你能说明计算机在执行上述语句时是怎样工作的吗?
先对条件进行判断,如果条件符合,则执行WHILE和WEND之间的循环体;然后再检查上述条件,如果条件仍符合,则再次执行循环体,直到某一次条件不符合为止.这时,计算机将不执行循环体,而执行WEND语句之后的语句.
思考3:计算1+2+3+…+100的值又有如下算法:
第一步,令i=1,S=0.
第二步,若i≤100成立,则执行第三步;否则,输出S,结束算法.
第三步,S=S+i.
第四步,i=i+1,返回第二步.
你能利用WHILE语句写出这个算法对应的程序吗?
思考4:阅读下面的程序,你能说明它是一个什么问题的算法吗?
求满足x2<1000的所有正整数x的值.
理论迁移
例1 已知函数y=x3+3x2-24x+30,写出连续输入自变量的11个取值,分别输出相应的函数值的程序.
算法分析:
第一步,输入自变量x的值.
第二步,计算y=x3+3x2-24x+30.
第三步,输出y.
第四步,记录输入次数.
第五步,判断输入的次数是否大于11.若是,则结束算法;否则,返回第一步.
例2 将用“二分法”求方程 的近似解的程序框图转化为相应的程序.
课堂练习:
1.教材P32面1、2题
2. 下边程序运行后输出的结果为(D)
A.50 B.25 C.5 D.0
3. 下边程序执行后输出的结果为(D)
A.-1 B.0 C.1 D.2
4.山东执行右边的程序框图,若p=0.8,则输出的n=___4___ .
5.阅读图4的程序框图,若输入则输出 12 ,
3 。(注:框图中的赋值符号“=”也可以写成“”或“”)
小结作业
1.两种循环语句源于两种循环结构,直到型循环语句先执行循环体,再判断条件;当型循环语句先判断条件,再执行循环体.
2.直到型循环语句在条件不符合时再执行循环体,当型循环语句在条件符合时再执行循环体.
《习案》作业七