88教案网

高中数学必修三 基本算法语句 优秀教案

俗话说,磨刀不误砍柴工。作为高中教师就要在上课前做好适合自己的教案。教案可以让学生更好的吸收课堂上所讲的知识点,帮助高中教师提前熟悉所教学的内容。关于好的高中教案要怎么样去写呢?下面是小编帮大家编辑的《高中数学必修三 基本算法语句 优秀教案》,相信能对大家有所帮助。

高中数学必修三《基本算法语句》教学设计

【学习目标】

经历将具体问题的程序框图转化为程序语句的过程,理解几种基本算法语句——输入语句、输出语句、赋值语句、条件语句、循环语句,体会算法的基本思想。【知识网络】

【学路导引】

输入语句输出语句基本算法语句赋值语句条件语句循环语句学习重点:输入语句、输出语句、赋值语句、条件语句、循环语句的用法学习难点:用SCILAB语言来演示实现算法的三种基本结构

学法指导:通过模仿、操作、探索,将程序框图转变为程序语言,了解算法语言的基

本构成,理解几种基本算法语句,熟悉算法的三种基本结构。

【范例精析】

?x,x?0例1:给定x的任一个值,求函数f(x)??2的值。

?x?1,x?0精析:属于条件分支结构,利用键盘输入语句和条件语句编程。解:x=input(\

ifx>0y=x*x+1elsey=xend

点评:先编制程序框图,再根据框图编写程序。例2:求平方不超过1000的最大正整数。精析:利用while循环语句解:j=1;

whilej*j<1000j=j+1;j=j-1>

点评:循环语句有for循环和while循环两种。循环语句的一定要以end结束循环体。

例3:求100以内的勾股数。

精析:本题实际上是求不定方程x?y?z的整数解问题,x、y、z的取值范围都是1到100的整数,可以利用三重循环结构和条件分支结构。

222解:forx=1:100

fory=1:100forz=1:100

a=x^2;b=y^2;c=z^2;ifa+b>c

elseprint(%io(2),x,y,z)endendendend

点评:对于求不定方程的整数解的问题,利用循环语句和条件语句可以找出所有的解。例4:已知n个数排成一行如下:

a1,a2,a3,?,an?1,an其中下脚码表示n个数的排列位置。这一行数满足条件:

?a1?a2?1编写求这行数的第n项的程序。??an?2?2an?an?1精析:利用while循环语句。解:n=input(\

A=1;B=1;k=2;whilek=p=>

点评:注意语句的最后有分号,表示不显示该语句的运行结果,没有则显示结果。

【过关评估】

1.2.1赋值、输入和输出语句

A组

一、选择题:

1、在赋值语句中,“N=N+1”是()

(A)没有意义的(B)N与N+1相等(C)将N的原值加1再赋给N,N的值增加1(D)

无法运行

2、Scilab程序:a=3;b=-4;c=8;a=b;b=c;c=a;

Print(%io(2),a,b,c)

运行后结果是()

(A)a=3b=-4c=8(B)a=-4b=3c=8(C)a=-4b=8c=3(D)a=-4b=8c=-41、下列命题中错误的是()

(A)在程序语言中“=”是赋值号,与数学中的等号的意义不一样;(B)input是键盘输入语句,控制屏幕输入;

(C)程序语句print(%(2),a,b)中的参数%io(2)表示在屏幕上输出;

(D)在程序语句中x=input(“chinese”)表示把chinese赋给x.一、填空题:

4、scilab语言的输入语句“input”,不仅可以输入数值,也可以输入.5、程序:a=3;b=4;c=5;s=(a+b+c)/2;

A=SQRT(s*(s-a)*(s-b)*(s-c))的运行结果是.二、解答题:

6、编写程序:给定x的任一个值,求函数f(x)?x2?2x?3的值.

7、编写已知直角三角形两直角边a和b,求斜边和面积的scilab程序.

B组

1、编写程序:任给圆锥的底面半径r和高h,求圆锥的体积V.

2、编写程序:对与任给的两个实数a和b,使得a和b的数值互换.

答案A组

一、1C2D3D二、4字符5A=6

三、6程序:x=input(\

y=x^2+2*x-3

7程序:a=input(“a=”)b=input(“b=”)c=sqrt(a^2+b^2)s=(a*b)/2

B组

1、程序:r=input(\

h=input(\V=1/3*3.14*r^2*h

2、程序:a=input(\

b=input(\m=a;a=b;b=m;

print(%io(2),a,b)

1.2.2条件语句

A组

一、选择题:

1、下列关于if语句的叙述正确的是()(A)if语句中必须有else和end;(B)if语句中可以没有end;

(C)if语句中可以没有else,但必须以end结束;(D)if语句中可以没有end,但必须有else.2、已知一程序如下:

x=input(\ifx>=0y=1

elsey=-1end

若输入x=5,运行结果是()

(A)x=5y=1(B)x=5y=-1(C)y=1(D)y=-13、已知一程序如下:a=input(\;b=input(\;c=input(\;MAX=a;Ifb>MAXMAX=b;end

ifc>MAXMAX=c;end

print(%io(2),MAX)

若根据程序提示输入a=4b=2c=-5,则程序运行结果是()(A)max=a(B)max=b(C)max=c(D)max=4二、填空题:

4、scilab语言中的条件语句分为语句和语句.5、下列程序的运行结果是.x=5;y=-20;ifx=0x=y-3elsey=x+3end

三、解答题:

6、一运动物体,其运动速度为时间t的函数:

?5,(0?t?5)对任意给定的t(t?0),试写出求这个物体在t时刻的速v???5?10(t?5),(t?5)度的程序语句.

7、任给三个数,按从大小顺序排序三个数.

B组

1、某市的出租车标价为1.20元/km,但事实上的收费标准如下:最开始4km内不管车行驶路程多少,均收费10元(即起步费),4km后到15km之间,每公里收费1.20元,15km后每公里再加收50%,即每公里1.80元。写出付费总数f与打车路程x之间的函数关系,并编写出scilab程序。

2、编制scilab程序:从键盘上输入三个数,如果这三个数能构成三角形的三边长,则输出信息“nenggouchengsanjiaoxing”,并求三角形的面积,否则输出信息“bunenggouchengsanjiaoxing”。

答案A组

一、1C2A3D

二、4、ifselect-case5、y=8

三、6、t=input(\=5;elsev=5+10*(t-5);end;disp(v)7、a=input(\;

b=input(\;c=input(\;ifb>a

t=a;a=b;b=t;endifc>a

t=a;a=c;c=t;endifc>b

t=b;b=c;c=tabc

B组

1、解析式略。程序如下:

x=input(“shuruchengchelicheng”)ifx=4y=10;

else

ifx=15

y=10+1.2*(x-4);else

y=23.2+1.8*(x-1.5);endendy

2、a=input(\

b=input(\c=input(\ifa>0

s=sqrt(p*(p-a)*(p-b)*(p-c))else

disp(\endelse

disp(\end

1.2.3循环语句

A组

一、选择题:

1、Scilab程序:j=1;

whilej*j<100j=j+1;j=j-1>

的运行结果是()

(A)j=j-1(B)j=100(C)j=10(D)j=92、scilab程序:c=1;

forI=1:5

c=c*I;endc

运行的结果是()

(A)c=5(B)c=120(C)c=1(D)显示程序错误3、scilab程序:A=1;B=1;

whileB<15>

A=A+B;B=A+B;

end

C=A+B

运行的结果是()

(A)C=2(B)C=3(C)C=15(D)C=34一、填空题:

4、在编制scilab程序中,条件语句和循环语句的结束必须都是.5、scilab语言中的循环语句有两种循环和循环.二、解答题:

6、用循环语句编写求2的程序。

7、已知i、j是正整数,求i?j?10的所有正整数对i、j的程序.

B组

1、将1,3,5,…,2n-1,…等奇数顺序累加,直到其和等于或大于100为止。要求输出累加的和以及累加的项数.

2、编制scilab程序解百钱买百鸡问题:用100元买100只鸡,其中公鸡每只5元,母鸡每只3元,小鸡3只一元,问能买多少只公鸡?多少只母鸡?多少只小鸡?(提示:设x只公鸡,y只母鸡,则买小鸡的只数z=100-x-y,100元最多买公鸡20只,买母鸡最多33只)

答案A组

一、1C2C3D

二、4end5forwhile三、6n=input(\

s=1;

fori=1:ns=s*2ends

7fori=1:9

forj=1:9

s=i+j;

ifs<10>

print(%io(2),i,j)

n

endendend

B组

1解:Sum=0,i=1,n=0

whileSum<100>

Sum=Sum+i;i=i+2;n=n+1;elsenSumend

2解:forx=0:20

fory=0:33

z=100-x-y;

m=5*x+3*y+1/3*z;ifm>100

elseprint(%io(2),x,y,z)endendend

相关知识

高中数学必修三《算法与案例》教案


高中数学必修三《算法与案例》教学设计

教学内容解析

《算法初步》是新课程改革中新增加的内容,算法不仅是数学及其应用的重要组成部分,也是计算机科学的重要基础.算法已经渗透到社会生活的许多方面,算法思想不仅是一种重要的数学思想,也成为现代人应具备的一种基本数学素养.在以前的学习中,虽然没有出现算法这个名词,但实际上在数学教学中已经渗透了大量的算法思想,比如说解方程,判断直线与圆的位置关系等等,完成这些工作都需要一系列程序化的步骤,这就是算法思想。本节内容是在学习了算法的基础知识上,探究古代典型的算法案例——辗转相除法,巩固算法三种描述性语言(算法步骤,程序框图和程序语言),使学生对算法中的迭代思想有一个初步的认识。一方面以辗转相除法为载体,使学生通过模仿,操作,探索经历算法设计的全过程,帮助学生进一步体会算法的基本思想,感受算法在解决实际问题中的重要作用,另一方面让学生体会古代人对现代数学发展的贡献。

教学目标设置

通过对辗转相除法的探究,理解辗转相除法的原理,巩固算法的三种描述方法(算法步骤、程序框图和程序设计语言)。要实现让学生理解辗转相除法原理的教学目标,莫过于让学生参与到辗转相除法求最大公约数的过程中,所以在教学过程中,通过对折纸实验的分析,猜测、探究适当的数学结论或规律,给出解释或证明,培养学生发现、探究问题的意识;在案例解决的过程中,既注重让学生意识到数学中的算法是计算机编程的基础,更注重要学生领会计算机程序设计的数学本质,深刻的领悟算法这一“机械化”数学思想,为学生将来适应信息社会的发展打好基础。在学习古代数学家解决数学问题的方法的过程中培养严谨的逻辑思维能力;在利用算法解决数学问题的过程中培养理性的精神和动手实践的能力;在合作学习的过程中体验合作的愉快和成功的喜悦。

学生学情分析

学习者为高二学生,好奇心强,思维活跃,学习算法有一定的积极性,对知识也较感兴趣,同时已具备一定算法步骤,程序框图,编制程序等基础知识。但对辗转相除法的原理不是很了解,因此在教学过程中要适时引导他们理解辗转相除法求最大公约数的原理,理解其迭代的算法思想,从而能够理解和运用两种循环结构表达辗转相除法,而这也恰恰是本节课的教学难点,可以通过观察,讨论,思考,分析,动手操作,自己探索,合作学习等多种手段突破难点。

教学策略分析

以问题为载体,用问题序列为学生提供探究算法案例——辗转相除法的空间,让学生经历知识的形成过程和发展过程,充分发挥学生的主体作用和教师的主导作用。采用启发式,并遵循循序渐进的教学原则,这有利于学生掌握从现象到本质,从已知到未知逐步形成概念的学习方法,有利于发展学生抽象思维能力和逻辑思维能力。

教学过程设计

(一)导入问题

问题1:求下列每组数的最大公约数

(1)22与6

(2)28与12

师:我们都是利用短除法找公约数的方法来求最大公约数,那么如果是求下面两个数的最大公约数呢?

问题2::求8251与6105的最大公约数

设计意图:问题1从学生已有认知结构出发,引出本节课所要探究内容。问题2学生用已有知识处理比较困难,激发学生探究兴趣,目的是使学生明确本节课要研究内容的必要性。

(二)探究问题

学生活动:将学生分为两个小组,第一小组每位学生面前有一张长为22cm,宽为6cm的长方形纸;第二组每位同学面前有一张长为28cm,宽为12cm的长方形纸。

问题3:

(针对于第一组同学)

给一张长为22cm,宽为6cm的长方形纸,先将短边往长边上折,得到一个正方形,将其裁掉之后继续将短边往长边上折,一直到最后剩下的是正方形为止,问:最后得到的正方形的边长是多少?

(针对于第二组同学)

给一张长为28cm,宽为12cm的长方形纸,先将短边往长边上折,得到一个正方形,将其裁掉之后继续将短边往长边上折,一直到最后剩下的是正方形为止,问:最后得到的正方形的边长是多少?

设计意图:通过实验操作,让学生手脑并用,想一想,动一动,给他们以充足的动手实践机会,让他们在动手探索的过程中去把握知识,使学生直观感知辗转相除法.

问题4:(1)通过实验你有什么发现?

(2)请将上述过程用算式表示出来。

课件展示:利用多媒体展现第一小组的折纸过程,让学生再次感受长边变短边,短边变长边辗转相除的过程。

学生讨论(一):学生讨论(二)

22-6=1622=6×3+4

16-6=106=4×1+2

10-6=44=2×2

6-4=2

4-2=2

设计意图:学生讨论(一)体现出更相减损术的算法过程,教师可以适当引导,为下节课埋下伏笔。学生讨论(二)体现出辗转相除法的算法过程,引出本节课教学内容。从直观到抽象,从具体实验到数学模型,师生共同完成对新知的探索。

问题5:设问(1):从数学式子出发,说明为什么22与6的公约数就是4与2的公约数?

设问(2):反过来,为什么4与2的公约数就是22与6的公约数?

设计意图:通过此例让学生体会辗转相除法的原理,从而帮助学生突破本节课的第一个难点——理解辗转相除法求最大公约数的原理。

问题6:如何求得8251与6105的最大公约数?

设计意图:进一步巩固学生对辗转相除法的认识,承上启下,顺利过渡。

问题7:刚才我们既求得了两个较小数的最大公约数,又求得了两个较大数的最大公约数,那么我们可以用辗转相除法解决哪一类问题呢?

生:求任意两个数的最大公约数。

问题8:给出任意两个正整数m、n,设计一个求它们的最大公约数的算法。

设计意图:从具体实例到一般情形,师生初步分析,利用辗转相除法产生一列数,这列数从第三项开始,每项都是前两项相除所得的余数,余数为0的前一项,即是与的最大公约数。

问题9:辗转相除法的关键步骤是哪种逻辑结构?

生:循环结构

学生活动:两个小组的学生分别用当型循环结构和直到型循环结构写算法步骤,画程序框图和编写程序语言,并选派代表演示其程序框图及程序语言。

直到型循环结构程序框图如下图:当型循环结构的程序框图如下图:

直到型循环结构程序语言:当型循环结构程序语言:

INPUTm,nINPUTm,n

DOr=1

r=mMODnWHILEr>0

m=nr=mMODn

n=rm=n

LOOPUNTILr=0n=r

PRINTmWEND

ENDPRINTm

END

设计意图:教师适当提示,使得程序设计水到渠成,通过两组同学的交流合作,调动了学生的学习积极性,突出了本节课的教学重点,体会迭代的算法思想,同时也突破了本节课的第二个难点——理解和运用两种循环结构表达辗转相除法。

(三)上机操作

学生活动:派一名同学将程序输入电脑,由下面其他同学随意给出两个数求其最大公约数,检验程序是否正确。

设计意图:通过计算机演示,让学生感受算法研究的价值,认识到计算机是人类征服自然的一种有力工具。

(四)归纳小结

问题8:通过本节课的学习,请学生谈谈体会与收获.

设计意图:学生对知识归纳的同时,提醒学生重视研究问题的过程及其中所蕴涵的数学思想.

(五)布置作业

求462、546、1001的最大公约数。

高中数学必修三《条件语句》教学教案


经验告诉我们,成功是留给有准备的人。作为高中教师就要根据教学内容制定合适的教案。教案可以让学生更好的吸收课堂上所讲的知识点,帮助授课经验少的高中教师教学。你知道怎么写具体的高中教案内容吗?下面是小编为大家整理的“高中数学必修三《条件语句》教学教案”,欢迎您参考,希望对您有所助益!

高中数学必修三《条件语句》教案设计

一、三维目标:1、知识与技能

(1)正确理解条件语句的概念,掌握其结构。(2)会应用条件语句编写程序。

2、过程与方法

经历对现实生活情境的探究,认识到应用计算机解决数学问题方便简捷,促进发展学生逻辑思维能力3、情感态度与价值观

了解条件语句在程序中起判断转折作用,在解决实际问题中起决定作用。通过本小节内容的学习,有益于我们养成严谨的数学思维以及正确处理问题的能力。

二、重点与难点四、教学设计

(一)练习

重点:条件语句的步骤、结构及功能。难点:会编写程序中的条件语句。

1.将两个数a?8,b?17交换,使a?17,b?8,下面语句正确一组是(B)A.B.C.D.c=ba=ca=bb=ab=ac=bb=aa=ba=cb=a2.计算机执行下面的程序段后,输出的结果是(B)

a?1b?3a?a?bb?a?bPRINTa,bA.1,3B.4,1C.0,0D.6,03.下列给出的赋值语句中正确的是(B)

A.4?MB.M??MC.B?A?3D.x?y?0.x=2y=3*x-1x=yPRINT3*x-1END阅读右边的程序,然后判断下列哪个是程序执行后的结果(D)

A、5B、15C、11D、14【创设情境】

试求自然数1+2+3+……+99+100的和。显然大家都能准确地口算出它的答案:5050。而能不能将这项计算工作交给计算机来

完成呢?而要编程,以我们前面所学的输入、输出语句和赋值语句还不能满足“我们日益增长的物质需要”,因此,还需要进一步学习基本算法语句中的另外两种:条件语句和循环语句(板出课题)【探究新知】(一)条件语句

算法中的条件结构是由条件语句来表达的,是处理条件分支逻辑结构的算法语句。它的一般格式是:(IF-THEN-ELSE格式)

IF条件THEN语句1ELSE语句2ENDIF满足条件?是语句1否语句2当计算机执行上述语句时,首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句1,否则执行ELSE后的语句2。其对应的程序框图为:(如上右图)

在某些情况下,也可以只使用IF-THEN语句:(即IF-THEN格式)

IF条件THEN

语句ENDIF

满足条件?否语句计算机执行这种形式的条件语句时,也是首先对IF后的条件进行判断,如果条件符合,就执行THEN后的语句,如果条件不符合,则直接结束该条件语句,转而执行其他语句。其对应的程序框图为:(如上右图)

条件语句的作用:在程序执行过程中,根据判断是否满足约定的条件而决定是否需要转换到何处去。需要计算机按条件进行分析、比较、判断,并按判断后的不同情况进行不同的处理。【例题精析】〖例1〗:教材P25面例5〖例2〗:编写程序,输入一元二次方程ax?bx?c?0的系数,输出它的实数根。算法分析:我们知道,若判别式??b?4ac?0,原方程有两个不相等的实数根

22x1??b???b??b、x2?;若??0,原方程有两个相等的实数根x1?x2??;2a2a2a若??0,原方程没有实数根。也就是说,在求解方程之前,需要首先判断判别式的符号。因此,这个过程可以用算法中的条件结构来实现。

又因为方程的两个根有相同的部分,为了避免重复计算,可以在计算x1和x2之前,

先计算p???b,q?。2a2a程序框图:(参照课本P17)

程序:(如右图所示)

注:SQR()和ABS()是两个函数,分别用来求某个数的平方根和绝对值。

即SQR(x)?INPUT“a,b,c=”;a,b,cd=b*b-4*a*cp=-b/(2*a)q=SQR(ABS(d))/(2*a)IFd>=0THENx1=p+qx2=p-qIFx1=x2THENPRINT“Onerealroot:”;x1ELSEPRINT“Tworealroots:x1”;x1,“andx2”;x2ENDIFELSEPRINT“Norealroot!”ENDIFENDx,ABS(x)??x(x?0)

-x(x?0).〖例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.程序框图:(参照课本P19)程序:(如右框图所示)

INPUT“a,b,c=”;a,b,cIFb>aTHENt=aa=bb=tENDIFIFc>aTHENt=aa=cc=tENDIFIFc>bTHENt=bb=cc=tENDIFPRINTa,b,cEND

〖补例〗:铁路部门托运行李的收费方法如下:

y是收费额(单位:元),x是行李重量(单位:kg),当0<x≤20时,按0.35元/kg收费,当x>20kg时,20kg的部分按0.35元/kg,超出20kg的部分,则按0.65元/kg收费,请根据上述收费方法编写程序。

0.35x,0?x?20,y??0.35?20?0.65(x?20),x?20.该函数是个分段分析:首先由题意得:

函数。需要对行李重量作出判断,因此,这个过程可以用算法中的条件结构

来实现。

程序:INPUT“请输入旅客行李的重量(kg)x=”;x

IFx>0ANDx=20THEN

y=0.35*xELSE

y=0.35*20+0.65*(x-20)ENDIF

PRINT“该旅客行李托运费为:”;yEND

【课堂精练】

1.P29练习1。2。3。4课后练习

1.给出以下四个问题,

①x,输出它的相反数.②求面积为6的正方形的周长.③求三个数a,b,c中输入一个

?x?1,x?0数的最大数.④求函数f(x)??的函数值.其中不需要用条件语句来描述

x?2,x?0?其算法的有(A)

A.1个B.2个C.3个D.4个仅②不需要分情况讨论,即不需要用条件语句

2.右程序运行后输出的结果为__22,-22__.x?5

3.当a?3时,下面的程序段输出的结果是(D)y??20IFa?10THEN

IFx?0THENy?2?a

x?y?3ELSE

ELSEy?a?aPRINTy

A.9B.3C.10D.6

作业:《习案》作业六

高中数学必修三《循环语句》教学设计


高中数学必修三《循环语句》教案

一、课前分析

教学内容:FOR/NEXT循环语句。

1、教材分析

1)教学内容和地位:程序设计是教学中的重点也是难点,循环结构是其中的一种设计结构,其作用是使一段程序反复执行。FOR/NEXT语句是循环运算的专家,在程序设计中频繁出现。本节课的学习,会使学生对算法有一个更深刻的理解,为实现独立编程起到了关键性作用。

2)教学重点与难点:本节课重点是掌握FOR/NEXT循环语句的格式,并能运用其来编制简单的小程序。难点是解决问题的方法和思路,要绘制好流程图,确定循环变量和循环体。因为用流程图描述算法,能够把解决问题的步骤清晰、直观地表示出来。

2、教学目标分析:

1)认知目标:通过FOR/NEXT语句的学习,写出简单的循环程序。

2)能力目标:培养学生分析问题,解决问题的能力。

3)情感目标:激发学生学习热情,培养学生学习的积极性。

二、教学过程

1、创设问题情境

师:同学们,请先看这个图形(画5个竖行排列的“*”),想想看用以前学过的程序设计语言怎样来编写它的程序呢?(本节程序均设置为单击命令按钮cmdstart运行即代码加在privatesubcmdstart_click())

生(稍做思考,然后回答):使用PRINT语句

PRINT“*”

PRINT“*”

PRINT“*”

PRINT“*”

PRINT“*”

师:同学们做得很好,那么,我想画10行,100行,1000行“*”呢?难道就这样顺序写下去吗?这样编写是不是太繁琐了。如果能让计算机去完成这部分重复的内容,而我们只要告诉计算机重复操作的次数就可以了,这个愿望能否实现呢?能!通过我们今天学习的FOR/NEXT循环语句,就可以很容易的实现这个愿望。

[疑问是建构教学的起点。新课伊始,就提出一个真实的问题,力求创设一种教学情境,它可以激起学生的未知欲,有利于建立新的认识结构。]

2、给出程序,并通过流程图加以理解

师出示上题程序代码并通过流程图和卡通图片分析

程序代码:

cls

forI=1to5step1

print”*”

next

师:循环结构也称重复结构,它的作用是使一段程序能重复执行,被重复执行的部分称为循环体。但重复一般都是有条件的,即在满足FOR语句中的条件下才执行循环体,否则退出循环体。下面我们就来看一下FOR/NEXT语句的语句格式:

格式:FOR〈数值变量名〉=〈数学表达式1〉TO〈数学表达式2〉STEP〈数学表达式3〉

〈语句序列(循环体)〉

NEXT

说明:1)当步长为1时,STEP1可省略不写;

2)语句序列中可以含有任意多条语句,也可无任何语句,称为空循环;

3)语句序列中可以含有循环结构;

4)有时需中途退出循环,这时用EXITFOR命令。

3、设置“陷阱”,强调语句格式。

[师出示下列有错误的程序段。学生分成六组讨论,发现错误并纠正,然后每组完成一题。在讨论中,学生扮演了一个积极的参与者的角色自觉思考、积极发言,讲出自己的思考和结论,并与他人展开争辩,在自主探索中掌握知识要点,同时也可学习到他人的好的思维方式和学习方法。]

1)打印1~5这5个数clsforn=1to5step–1printnnext[步长应为1]2)打印5~1这5个数clsforn=5to1printnnext[步长为-1,不能省,应forn=5to1step–1]

3)打印1~5这5个数clsfor1to5print“n”next[n加上引号,就变成了字符串,应把引号去掉]4)s=0forx=1to10s=s+xifs>20thenexitendifprintxnext[退出FOR循环语句为EXITFOR]

5)打印1~5这5个数clsforn=1to5printn[FOR与NEXT必须成对出现,不能缺省]6)打印1~5这5个数clsfor1to5printnnext[循环变量n要赋值,forn=1to5]

4、阅读程序,为程序设计打基础

[教学中通过分析已有程序,慢慢渗透程序设计的思想方法,引导学生从模仿开始,由易到难、循序渐进,逐步过渡到独立进行程序设计。]

师:请同学们分析下列程序,绘制出流程图,说出程序功能。示题。

s=0forx=1to100s=s+xnextprints功能:求1到100的和clsforI=20to10step–2printInext功能:输入出20,18,16,14,12,10六个数

(流程图略)

5、突破难点,尝试独立编程。

[尝试是开始某种新事物所必需的。任何事情的第一次都需要勇气,教师要鼓励学生大胆尝试编程,在一次次尝试中获取分析、解决问题的经验。注意选题的难度要适当]

师:刚才我们通过分析阅读已有程序,对循环结构又有了进一步理解,但我们不能仅局限在看懂、读懂程序上,我们的目的是要自己完成程序设计。首先要进行审题,认真分析题目需要解决什么问题,达到什么目的,然后从已知条件出发,分析经过哪些处理才能解决问题。再把分析出来的处理步骤用流程图表示出来,最后用VB语言描述出各个解题步骤,程序设计就不会让你束手无策。下面我们就参照例题,按照老师介绍的程序设计步骤,试着来自己来编制2个小程序。

[这两道题在循环体这一部分稍有难度,采取分组讨论,共同写流程图的方法,最后由学生独立写出程序代码,并上机调试]

1)编写程序,求100以内的奇数和clss=0forn=1to100step2s=s+nprintsnext2)编写程序,y=x+2,当x=1,2,3,4,5时,y的值分别是多少。clsforx=1to5y=x+2printynext

5、归纳小结,反思提高

[学生总结本节课的FOR/NEXT语句的格式和功能,运用语句进行程序设计的步骤。唯有反思,才能控制思维操作,才能促进理解,提高自己的元认识水平,从而促进程序设计的算法形成和发展,实现良好的循环。]

总结略。

师:各门学科之间,各学科的内容之间都是有联系的,都不是孤立的,同学们要把知识动态化,多角度、多方式地去思考,掌握知识的内在联系,提高解题能力,开阔自己的视野。课后请同学们完成这样一个程序设计作业:(作业与数学知识联系密切)

作业:试编写程序,求10!。

总评

本节课教师采用分析法、演示法、实验法、讨论法等多种教学方法,充分体现了学生是教学活动中的主体;而教师通过对学生参与学习的启发、调整、激励来体现自己的主导作用。学生在合作学习中目标明确、态度积极、气氛活跃,有效地培养了学生的分析问题、解决问题能力,体现了学习的主动性。不足之处是练习题略多了一点,时间有些紧张。

高中数学必修三《算法与程序框图》教案


一名爱岗敬业的教师要充分考虑学生的理解性,高中教师要准备好教案,这是高中教师需要精心准备的。教案可以让学生更好的吸收课堂上所讲的知识点,帮助高中教师更好的完成实现教学目标。您知道高中教案应该要怎么下笔吗?为满足您的需求,小编特地编辑了“高中数学必修三《算法与程序框图》教案”,仅供参考,欢迎大家阅读。

高中数学必修三《算法与程序框图》教案设计

学习目标:

1.明确算法的含义,熟悉算法的三种基本结构:顺序、条件和循环,以及基本的算法语句.

2.能熟练运用辗转相除法与更相减损术、秦九韶算法、进位制等典型的算法知识解决同类问

题.

重点:

算法的基本知识与算法对应的程序框图的设计.

难点:

与算法对应的程序框图的设计及算法程序的编写.

要点梳理

知识点一:算法与程序框图

1.算法的定义:广义的算法是指完成某项工作的方法和步

骤,现代意义的算法是指可以用计算机来解决的某一类问

题的程序和步骤,这些程序或步骤必须是明确和有效的,

而且能够在有限步之内完成.

2.四种基本的程序框

3.三种基本逻辑结构

(1)顺序结构

(2)条件结构

(3)循环结构

要点诠释:

1.对于算法的理

解不能仅局限于解决

数学问题的方法,解

决任何问题的方法和

步骤都应该是算法.算法具有概括性、抽象性、

正确性等特点,要通过具体问题的过程和步骤

的分析去体会算法的思想,了解算法的含义.

2.在学习程序框图时要掌握各程序框的

作用,准确应用三种基本逻辑结构,即顺序结

构、条件分支结构、循环结构来画程序框图,

准确表达算法.

画程序框图是用基本语句来编

程的前提.知识点二:基本算法语句

1、输入语句

2、输出语句

3、赋值语句

4、条件语句

IF-THEN-ELSE格式

IF-THEN格式

5、循环语句

(1)WHILE语句

(2)UNTIL语句

要点诠释:

基本算法语句是程序设

计语言的组成部分,注意各语

句的作用,准确理解赋值语

句,灵活表达条件语句.计算机

能够直接或间接理解的程序语

言都包含输入语句、输出语句、

赋值语句、条件语句和循环语句

等基本算法语句.输入语句、输

出语句和赋值语句贯穿于大多

数算法的结构中,而算法中的条

件结构由条件语句来表述,循环

结构由循环语句来实现.学习中

要熟练掌握这些基本算法语句.知

识点三:算法案例

案例1、辗转相除法与更相减损术

1.利用辗转相除法求最大公

约数的步骤如下:

(1)用较大的数m

除以较小的

数n得到一个商(2)若

商和一个余数;≠0,则用除数n除以余数得到一个=0,则n为m,n的最大公约数;若;

为m,n的最大公约数;若

;„„

=0,此时所得到的和一个余数=0,则(3)若商≠0,则用除数除以余数得到一个和一个余数依次计算直至即为所求的最大公约数.2.更相减损术

(1)任意给出两个正数;判断它们是否都是偶数.若是,用2约简;若不是,执行第二步.

(2)以较大的数减去较小的数,接着把较小的数与所得的差比较,并以大数减小数.继续这个操作,直到所得的数相等为止,则这个数(等数)就是所求的最大公约数.

案例2、秦九韶算法

用秦九韶算法求一般多项式f(x)=anxn+an-1xn-1+„.+a1x+a0当x=x0时的值.

把n次多项式的求值问题转化成求n个一次多项式的值的问题,即求

v1=anx+an-1

v2=v1x+an-2

v3=v2x+an-3

„„..

vn=vn-1x+a0

的值的过程.案例3、进位制

进位制是一种记数方式,用有限的数字在不同的位置表示不同的数值.可使用数字符号的个数称为基数,基数为n,即可称n进位制,简称n进制.现在最常用的是十进制,通常使用10个阿拉伯数字0-9进行计数.

要点诠释:

我国古代数学发展的主导思想,就是构造“算法”解决实际问题.通过对这些案例的阅读、理解,同学们可以体会它们蕴含的算法及其思想.

方法指导

1、在理解算法的基础上,掌握算法的基本思想,发展有条理的思考与表达能力,提高逻辑思维能力.会用算法的思想和方法解决实际问题.从熟知的问题出发,体会算法的程序化思想,通过实践,主动思维,经历不断的从具体到抽象,从特殊到一般的抽象概括活动来理解和掌握.

2、涉及具体问题的算法时,要根据题目进行选择,以简单、程序短、易于在计算机上执行为原则.

3、注意条件语句的两种基本形式及各自的应用范围以及对应的程序框图.条件语句与算法中的条件结构相对应,语句形式较为复杂,要会借助框图写出程序.

4、利用循环语句写算法时,要分清步长、变量初值、终值,必须分清循环次数是否确定,若确定,两种语句均可使用,当循环次数不确定时用while语句.

5、复习算法案例时,要体会其中蕴含的算法思想,并能利用它解决具体问题.对课本涉及到的几种算法,同学们要在理解的基础上掌握其程序,并深刻体会古代数学中的算法思想.

文章来源:http://m.jab88.com/j/28595.html

更多

最新更新

更多