必修三12 基本算法语句doc.docx
《必修三12 基本算法语句doc.docx》由会员分享,可在线阅读,更多相关《必修三12 基本算法语句doc.docx(32页珍藏版)》请在冰豆网上搜索。
必修三12基本算法语句doc
1.2基本算法语句
教案A
第1课时
教学内容
§1.2.1输入语句、输出语句和赋值语句
教学目标
一、知识与技能
1.正确理解输入语句、输出语句、赋值语句的结构.
2.会写一些简单的程序.
3.掌握赋值语句中的“=”的作用.
二、过程与方法
1.让学生充分地感知、体验应用计算机解决数学问题的方法;并能初步操作、模仿.
2.通过对现实生活情境的探究,尝试设计出解决问题的程序,理解逻辑推理的数学方法.
三、情感、态度与价值观
通过本节内容的学习,使我们认识到计算机与人们生活密切相关,增强计算机应用意识,提高学生学习新知识的兴趣.
教学重点、难点
教学重点:
正确理解输入语句、输出语句、赋值语句的作用.
教学难点:
准确写出输入语句、输出语句、赋值语句.
学法与教学用具
计算机、图形计算器.
一、复习引入
在现代社会里,计算机已经成为人们日常生活和工作不可缺少的工具,如:
听MP3,看电影,玩游戏,打字排版,画卡通画,处理数据等等,那么,计算机是怎样工作的呢?
计算机完成任何一项任务都需要算法,但是,我们用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的.因此还需要将算法用计算机能够理解的程序设计语言(ProgrammingLanguage)翻译成计算机程序.
程序设计语言有很多,如BASIC,FoxBase,C语言,C++,J++,VB等.为了实现算法中的三种基本的逻辑结构:
顺序结构、条件结构和循环结构,各种程序设计语言中都包含下列基本的算法语句:
这就是这一节所要研究的主要内容——基本算法语句.今天,我们先一起来学习输入、输出语句和赋值语句.
二、新课讲授
(一)知识点讲解
我们知道,顺序结构是任何一个算法都离不开的基本结构.输入、输出语句和赋值语句基本上对应于算法中的顺序结构.输入语句和输出语句分别用来实现算法的输入信息,输出结果的功能.
INPUT“提示内容”;变量
1.输入语句
INPUT语句就是输入语句.一般格式是:
INPUT语句不但可以给单个变量赋值,还可以给多个变量赋值,其格式为:
INPUT“提示内容1,提示内容2,提示内容3,…”;变量1,变量2,变量3,…
PRINT“提示内容”;表达式
2.输出语句:
它的一般格式是:
3.赋值语句
用来表明赋给某一个变量一个具体的确定值的语句.
除了输入语句,在该程序中第2行的赋值语句也可以给
变量=表达式
变量提供初值.它的一般格式是:
赋值语句中的“=”叫做赋值号.
(二)例题讲解
例1编写程序,计算一个学生数学、语文、英语三门课的平均成绩.
分析:
先写出算法,画出程序框图,再进行编程.
算法:
程序:
例2给一个变量重复赋值.
程序:
变式引申:
在此程序的基础上,设计一个程序,要求最后A的输出值是30.
(该变式的设计意图是学生加深对重复赋值的理解)
程序:
例3交换两个变量A和B的值,并输出交换前后的值.
分析:
引入一个中间变量X,将A的值赋予X,又将B的值赋予A,再将X的值赋予B,从而达到交换A,B的值.(比如交换装满水的两个水桶里的水需要再找一个空桶)
程序:
补例:
编写一个程序,要求输入一个圆的半径便能输出该圆周长和面积.(π取3.14)
分析:
设圆的半径为R,则圆的周长为C=2πR,面积为S=πR2,可以利用顺序结构中的INPUT语句,PRINT语句和赋值语句设计程序.
程序:
(三)课堂练习
1.试对生活中某个简单问题或是常见数学问题,利用所学基本算法语句等知识来解决自己所提出的问题.要求写出算法,画程序框图,并写出程序设计.
2.教材P24练习第1、2、3、4题.
三、小结
1.本节课都学了哪些程序语句,它们的结构特点是什么
2.为什么编程要先写出算法?
四、作业
P33习题1.2,A组2.
第2课时
授课内容
§1.2.2条件语句§1.2.3循环语句
教学目标
一、知识与技能
1.正确理解条件语句和循环语句的概念,并掌握其结构的区别与联系.
2.会应用条件语句和循环语句编写程序.
二、过程与方法
经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力.
三、情感、态度与价值观
1.了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用.
2.深刻体会到循环语句在解决大量重复问题中起重要作用.减少大量繁琐的计算.
3.通过本小节的学习,有益于我们养成严谨的数学思维及正确处理问题的能力.
教学重点、难点
教学重点:
条件语句和循环语句的步骤、结构及功能.
教学难点:
会编写程序中的条件语句和循环语句.
教学用具
计算机、图形计算器.
教学设想
一、复习引入
试求自然数1+2+3+…+99+100的和.
显然大家都能准确地口算出它的答案:
5050.而能不能将这项计算工作交给计算机来完成呢?
而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种:
条件语句和循环语句.
二、新课讲授
(一)知识点讲解
1.条件语句
算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句.它的一般格式是:
(IF-THEN-ELSE格式)
当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2.其对应的程序框图为:
(如上右图)
在某些情况下,也可以只使用IF-THEN语句:
(即IF-THEN格式)
2.循环语句
算法中的循环结构是由循环语句来实现的.对应于程序框图中的两种循环结构,一般程序设计语言中也有当型(WHILE型)和直到型(UNTIL型)两种语句结构.即WHILE语句和UNTIL语句.
(1)WHILE语句的一般格式是:
其中循环体是由计算机反复执行的一组语句构成的.WHLIE后面的“条件”是用于控制计算机执行循环体或跳出循环体的.
当计算机遇到WHILE语句时,先判断条件的真假,如果条件符合,就执行WHILE与WEND之间的循环体;然后再检查上述条件,如果条件仍符合,再次执行循环体,这个过程反复进行,直到某一次条件不符合为止.这时,计算机将不执行循环体,直接跳到WEND语句后,接着执行WEND之后的语句.因此,当型循环有时也称为“前测试型”循环.其对应的程序结构框图为:
(如上右图)
(2)UNTIL语句的一般格式是:
其对应的程序结构框图为:
(如上右图)
(二)例题讲解
例1编写程序,输入一元二次方程
的系数,输出它的实数根.
分析:
先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算法用对应的程序语句表达出来.
算法分析:
我们知道,若判别式
,原方程有两个不相等的实数根
、
;
若
,原方程有两个相等的实数根
;
若
,原方程没有实数根.也就是说,在求解方程之前,需要首先判断判别式的符号.因此,这个过程可以用算法中的条件结构来实现.
又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算
和
之前,先计算
,
.
程序框图:
(参照教材12页)
程序:
(如上页图所示)
注:
SQR()和ABS()是两个函数,分别用来求某个数的平方根和绝对值.
即,
,
例2编写程序,使得任意输入的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.
程序框图:
(参照教材28页)
程序:
(如右框图所示)
例3编写程序,计算自然数1+2+3+…+99+100的和.
分析:
这是一个累加问题.我们可以用WHILE型语句,也可以用UNTIL型语句.由此看来,解决问题的方法不是惟一的,当然程序的设计也是有多种的,只是程序简单与复杂的问题.
程序:
WHILE型:
UNTIL型:
例4根据教材1.1.2中的图1.1-2,将程序框图转化为程序语句.
分析:
仔细观察,该程序框图中既有条件结构,又有循环结构.
程序:
思考:
上述判定质数的算法是否还能有所改进?
(让学生课后思考.)
补例:
某纺织厂1997年的生产总值为300万元,如果年生产增产率为5%,计算最
早在哪一年生产总值超过400万元.
分析:
从1997年底开始,经过x年后生产总值为300×(1+5%)x,可将1997年生产总值赋给变量a,然后对其进行累乘,用n作为计数变量进行循环,直到a的值超过400万元为止.
解:
(详见下页)
程序框图为:
程序:
三、课堂小结
本节课主要学习了条件语句和循环语句的结构、特点、作用以及用法,并懂得利用解决一些简单问题.条件语句使程序执行产生的分支,根据不同的条件执行不同的路线,使复杂问题简单化.有些复杂问题可用两层甚至多层循环解决.注意内外层的衔接,可以从循环体内转到循环体外,但不允许从循环体外转入循环体内.
条件语句一般用在需要对条件进行判断的算法设计中,如判断一个数的正负,确定两个数的大小等问题,还有求分段函数的函数值等,往往要用条件语句,有时甚至要用到条件语句的嵌套.
循环语句主要用来实现算法中的循环结构,在处理一些需要反复执行的运算任务.如累加求和,累乘求积等问题中常用到.
四、评价设计
1.P33习题1.2A组3;
P33习题1.2B组2.
2.试设计一个生活中某个简单问题或是常见数学问题,并利用所学基本算法语句等知识编程.(要求所设计问题利用条件语句或循环)
教案B
教学内容
§1.2.1输入语句、输出语句和赋值语句
教学目标
一、知识与技能
1.正确理解输入语句、输出语句、赋值语句的结构.
2.会写一些简单的程序.
3.掌握赋值语句中的“=”的作用.
二、过程与方法
1.充分地感知、体验应用计算机解决数学问题的方法;并能初步操作、模仿.
2.通过对现实生活情境的探究,尝试设计出解决问题的程序,理解逻辑推理的数学方法.
二、情感、态度与价值观
通过本节内容的学习,使我们认识到计算机与人们生活密切相关,增强计算机应用意识,提高学生学习新知识的兴趣.
教学重、难点
教学重点:
正确理解输入语句、输出语句、赋值语句的作用.
教学难点:
准确写出输入语句、输出语句、赋值语句.
教学关键:
理解输入语句、输出语句、赋值语句
教学突破方法:
借助多媒体让学生感知计算机语言,并探究三种语句.
教法与学法导航
教学方法:
以教师启发引导为主,利用多媒体及其程序软件,引入学习程序语言的必要性,通过练习让学生试着编写程序,然后用计算机运行,巩固简单程序的编写.
学习方法:
通过自主探究,产生结论,不断改进,完善结论,让不同层次的学生都能参与到课堂中来,逐步培养学生的归纳概括能力及严谨的科学思维.
教学准备
教师准备:
计算机、课件.
学生准备:
纸、笔、计算器.
教学过程
一、创设情境导入新课
在现代社会里,计算机已经成为人们日常生活和工作不可缺少的工具,如:
听MP3,看电影,玩游戏,打字排版,画卡通画,处理数据等等,那么,计算机是怎样工作的呢?
计算机完成任何一项任务都需要算法,但是,我们用自然语言或程序框图描述的算法,计算机是无法“看得懂,听得见”的.因此还需要将算法用计算机能够理解的程序设计语言(ProgrammingLanguage)翻译成计算机程序.
程序设计语言有很多种.如BASIC,FoxBase,C语言,C++,J++,VB等.为了实现算法中的三种基本的逻辑结构:
顺序结构、条件结构和循环结构,各种程序设计语言中都包含下列基本的算法语句:
这就是这一节所要研究的主要内容——基本算法语句.今天,我们先一起来学习输入、输出语句和赋值语句.(板出课题)
二、主题探究合作交流
我们知道,顺序结构是任何一个算法都离不开的基本结构.输入、输出语句和赋值语句基本上对应于算法中的顺序结构.计算机从上而下按照语句排列的顺序执行这些语句.输入语句和输出语句分别用来实现算法的输入信息,输出结果的功能.如下面的例子:
用描点法作函数
的图象时,需要求出自变量与函数的一组对应值.编写程序,分别计算当
时的函数值.
程序:
(教师可在课前准备好该程序,教学中直接调用运行)
(学生先不必深究该程序如何得来,只要求懂得上机操作,模仿编写程序,通过运行自己编写的程序发现问题所在,进一步提高学生的模仿能力.)
提问:
在这个程序中,你们觉得哪些是输入语句、输出语句和赋值语句呢?
(同学们互相交流、议论、猜想、概括出结论.提示:
“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“提示内容”;表达式
同输入语句一样,表达式前也可以有“提示内容”.例如下面的语句可以输出斐波那契数列:
此时屏幕上显示:
TheFiBonACCiProgressionis:
11235813213455…
输出语句的用途:
(1)输出常量,变量的值和系统信息.
(2)输出数值计算的结果.
思考:
在1.1.2中程序框图中的输入框,输出框的内容怎样用输入语句、输出语句来表达?
(学生讨论、交流想法,然后请学生作答)
参考答案:
输入框:
INPUT“请输入需判断的整数n=”;n
输出框:
PRINTn;“是质数.”
PRINTn;“不是质数.”
(三)赋值语句
用来表明赋给某一个变量一个具体的确定值的语句.
除了输入语句,在该程序中第2行的赋值语句也可以给变量提供初值.它的一般格式是:
变量=表达式
赋值语句中的“=”叫做赋值号.
赋值语句的作用:
先计算出赋值号右边表达式的值,然后把这个值赋给赋值号左边的变量,使该变量的值等于表达式的值.
注:
①赋值号左边只能是变量名字,而不能是表达式.如:
2=X是错误的.
②赋值号左右不能对换.如“A=B”“B=A”的含义运行结果是不同的.
③不能利用赋值语句进行代数式的演算.(如化简、因式分解、解方程等)
④赋值号“=”与数学中的等号意义不同.
思考:
在1.1.2中程序框图中的输入框,哪些语句可以用赋值语句表达?
并写出相应的赋值语句.(学生思考讨论、交流想法.)
三、拓展创新应用提高
例1编写程序,计算一个学生数学、语文、英语三门课的平均成绩.
分析:
先写出算法,画出程序框图,再进行编程.
算法:
程序:
例2给一个变量重复赋值.
程序:
[变式引申]:
在此程序的基础上,设计一个程序,要求最后A的输出值是30.(该变式的设计意图是学生加深对重复赋值的理解)
程序:
例3交换两个变量A和B的值,并输出交换前后的值.
分析:
引入一个中间变量X,将A的值赋予X,又将B的值赋予A,再将X的值赋予B,从而达到交换A,B的值.(比如交换装满水的两个水桶里的水需要再找一个空桶)
程序:
四、小结
本节课介绍了输入语句、输出语句和赋值语句的结构特点及联系.掌握并应用输入语句,输出语句,赋值语句编写一些简单的程序解决数学问题,特别是掌握赋值语句中“=”的作用及应用.编程一般的步骤:
先写出算法,再进行编程.我们要养成良好的习惯,也有助于数学逻辑思维的形成.
五、课堂作业
编写一个程序,要求输入一个圆的半径,便能输出该圆的周长和面积.(π取3.14)
分析:
设圆的半径为R,则圆的周长为C=2πR,面积为S=πR2,可以利用顺序结构中的INPUT语句,PRINT语句和赋值语句设计程序.
程序:
第2课时
教学内容
§1.2.2条件语句
教学目标
一、知识与技能
1.正确理解条件语句的概念,并掌握其结构.
2.会应用条件语句编写程序.
二、过程与方法
经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力
三、情感、态度与价值观
了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用.通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力.
教学重、难点
教学重点:
条件语句的表示方法,结构和用法;用条件语句表示算法.
教学难点:
理解条件语句的表示方法,结构和用法.
教学关键:
理解条件语句,会用条件语句编写程序.
教法与学法导航
教学方法:
本节教学采用启发式教学,辅以观察法,发现法,练习法,讲解法.采用这种方法的原因是学生的逻辑能力不是很强,只能通过对实例的认真领会及一定的练习才能掌握本节知识.
学习方法:
老师先通过实例引导学生领会理解条件语句的含义,并归纳出条件语句在编程中的要点,在编写程序中,采用小组讨论的方法,培养学生互助,协作的精神,使学生“学”有新“思”,“思”有所“得”,“练”有所“获”,学生会逐步感受到数学的美,产生一种成功感,从而提高学数学的兴趣.
教学准备
教师准备:
多媒体课件.
教学过程
一、创设情境导入新课
试求自然数1+2+3+…+99+100的和.
显然大家都能准确地口算出它的答案:
5050.而能不能将这项计算工作交给计算机来完成呢?
而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种:
条件语句和循环语句(板书课题)
二、主题探究合作交流
条件语句算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句.它的一般格式是:
(IF-THEN-ELSE格式)
当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2.其对应的程序框图为:
(如上页右图)
在某些情况下,也可以只使用IF-THEN语句:
(即IF-THEN格式)
计算机执行这种形式的条件语句时,也是首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句.其对应的程序框图为:
(如上右图)
条件语句的作用:
在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去.需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理.
三、例题精析
例1编写程序,输入一元二次方程
的系数,输出它的实数根.
分析:
先把解决问题的思路用程序框图表示出来,然后再根据程序框图给出的算法步骤,逐步把算法用对应的程序语句表达出来.
算法分析:
我们知道,若判别式
,原方程有两个不相等的实数根
、
;若
,原方程有两个相等的实数根
;若
,原方程没有实数根.也就是说,在求解方程之前,需要首先判断判别式的符号.因此,这个过程可以用算法中的条件结构来实现.
又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算
和
之前,先计算
,
.
程序框图:
(参照教材P12)
程序:
(如上图所示)
注:
SQR()和ABS()是两个函数,分别用来求某个数的平方根和绝对值.
即
,
例2编写程序,使得任意输入的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
IFx>0ANDx<=20THEN
y=0.35*x
ELSE
y=0.35*20+0.65*(x-20)
ENDIF
PRINT“该旅客行李托运费为:
”;y
END
第3课时
授课内容
§1.2.3循环语句
教学目标
一、知识与技能
1.正确理解循环语句的概念,并掌握其结构与条件语句的区别与联系.
2.会应用循环语句编写程序.
二、过程与方法
经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力
三、情感、态度与价值观
了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用.通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力.
教学重点、难点
教学重点:
循环语句的步骤、结构及功能.
教学难点:
会应用循环语句编写程序.
教学关键:
循环语句.
教法与学法导航
教学方法
本节教学采用启发式教学,辅以观察法,发现法,练习法,讲解法.采用这种方法的原因是学生的逻辑能力不是很强,只能通过对实例的认真领会及一定的练习才能掌握本节知识.
学习方法
老师先通过实例引导学生领会理解循环语句的含义,并归纳出循环语句在编程中的要点,在编写程序中,采用小组讨论的方法,培养学生互助,协作的