广东八年级信息技术下册全册教案.docx
《广东八年级信息技术下册全册教案.docx》由会员分享,可在线阅读,更多相关《广东八年级信息技术下册全册教案.docx(33页珍藏版)》请在冰豆网上搜索。
广东八年级信息技术下册全册教案
八
年
级
信
息
技
下
册
术
教
案
第一课:
小海龟画正三角形
教学目标:
1初步认识small basic语言,了解其基本的操作使用方法。
2、 理解什么是对象及其属性、操作方法。
3、认识“Turtle”对象,掌握其属性、操作方法。
4、掌握使用small basic命令(语句)画正三角形的方法。
教学重难点:
重点:
掌握使用对象的属性、操作的方法;
难点:
理解对象及其属性、操作。
册
教学方法:
演示法、任务驱动法、讲授法
教学过程:
一、认识Small Basic
开始——smallbasic——运行
二、命令的分析
Turtle.move
实例教学(教师演示)
画三角形:
Turtle.move(100)
Turtle.turn(120)
Turtle.move(100)
Turtle.turn(120)
Turtle.move(100)
Turtle.turn(120)
四、学生动手实践
1、经过自主练习,同学们能够成功运行程序吗?
最终画出什么图形呢?
2、不成功的话,又存在着哪些问题呢?
为什么呢?
该如何解决呢?
五、深入学习
1、思考问题:
A、小海龟能不能在窗口的任意位置画三角形?
B、小海龟能不能“爬”快点?
C、小海龟开始“爬”时,头能否不垂直向上,能否改变方向?
2、属性、操作的学习
3、实例教学
六、自主练习
任务:
请同学们利用已经学习的Turtle属性和操作,自己动手试一试,画出各种图
形。
七、 学生演示
八、总结
第二课:
小海龟画彩色正五边形
教学目标:
1、理解变量及其命名规则
2、掌握变量的赋值及变量的应用
3、 认识GraphicsWindow对象及常用属性设置
教学重难点 重点:
变量及其应用
难点:
理解赋值语句,不要将赋值语句和数学中的等式混为一谈。
教学方法
讲授法、演示法、任务驱动法
教学过程
一、引入教学
1、小海龟画一个正三边形。
2、小海龟画正五边形
命令:
命令:
Turtle.move(length)Turtle.move(length)
Turtle.turn(e)Turtle.turn(e)
Turtle.move(length)Turtle.move(length)
Turtle.turn(e)Turtle.turn(e)
2疑问?
海龟画正五边形的方法与画正三边形的方法相似:
画一条边,旋转一定的角度,然后再画一条边,旋转一定的角度……直到画完。
然而,两者唯一不同的地方就是边数和旋转的角度。
假如小海龟要画正N边形,需要修改旋转的角度,以及画的边长的大小,这时候一个一个地修改,会不会很麻烦呢?
为了简化工作,对于边长的大小和旋转的角度,我们能否分别用代表未知数的“符号”来表示呢?
二、变量
1、我们将程序中代表某个值的符号称为“变量”。
2、变量是程序用来保存数据的。
3、规则:
A、变量名要以字母、汉字、数字、下划线命名,且不能以数字开头。
B、变量名不能与对象、属性、操作名相同,也不能与Small Basic中的保留字相同,例如:
if不能作为变量名。
C、变量名应尽量简单易懂。
例子:
(正三边形)
S=3
Length=100
E=360/S
Turtle.Move(Length)
Turtle.Turn(E)
Turtle.Move(Length)
Turtle.Turn(E)
Turtle.Move(Length)
Turtle.Turn(E)
三、 赋值语句
变量就像一个存放数据的“盒子”,当我们在程序中需要使用该“盒子”中的数据时,只要用该变量名指代就行了。
而在“盒子”中存放数据,我们就用到赋值语句。
比如:
✓
S=3 把数值3存放在变量S中。
Length=100 把数值100存放在变量Length
E=360/S 先算出表达式360/S的结果(120),其中S=3, 然后把数值120存放在变量E
注意:
表达式中国可以包含函数、常量、变量,用小括号“()”表示运算的优先次序变化。
不能用中括号“* +”. 表达式中使用的算术运算符是:
+ - * /。
【格式】
变量名=表达式
【作用】:
将右端表达式的值存放到左边的变量中。
变量被赋值之后,变量名就代表右边表达式的值,直到又有赋值语句改变了该变量的值。
设置属性值:
对象名.属性名=表达式比如:
Turtle.x=100
3、自主练习:
请同学们利用已经学习的Turtle和GraphicsWindow属性和操作,自己动
手试一试,画出各种图形。
五、学生演示
六、任务驱动
任务一:
完成书本P12试一试,猜一猜GraphicsWindow各属性和操作的含义。
任务二:
完成书本p12试一试第二题,画绿色的正五边形。
任务三:
完成书本p12试一试第三题,在图形窗口写上“我爱编程”
,设置合适的颜色和字号。
提示:
使用GraphicsWindow.Draw(x,y,text)操作,字号:
GraphicsWindow.FontSize属性操作)
七、总结
小海龟画正多边形
学习要点:
1.了解什么是算法,了解算法的自然语言描述和流程图描述。
2.理解For…EndFor循环语句的使用方法。
重点难点:
本课的重点是学习For…EndFor循环语句及使用,难点是理解循环的
控制。
一、流程图
For…EndFor循环语句的格式如下:
For <循环变量>=<初值> To <终值> [Step <步长>]
<语句组>
EndFor
否
是
画正三角形的程序如下:
For i=1 to 3
Turtle.Move(100)
Turtle.Turn(120)
EndFor
二、练习的编程任务:
1.编程让小海龟画楼梯,楼梯踏板的宽度和高度都是30。
程序如下:
S=5
Length=30
Fori=1toSstep1
Turtle.Move(Length)
Turtle.Turn(90)
Turtle.Move(Length)
Turtle.Turn(-90)
EndFor
2、编写程序,画出P19的螺旋图形。
S=4
Length=50
E=360/S
GraphicsWindow.PenColor="Red"
Fori=2toLengthstep2
Turtle.Move(i)
Turtle.Turn(E)
EndFor
三、小结流程图作为算法描述的一种形式,非常直观,对学习编程、阅读理解程序都是很有帮助的,“小海龟画正多边形”这个任务引出算法和流程图的概念,让我们对“算法”不感到枯燥、抽象,能够达到比较好的学习效果。
第四课:
累加求和
学习要点:
1.理解累加的含义,掌握实现累加的方法。
2.掌握用For…EndFor循环语句实现累加求和的方法及过程。
3.学会应用For…EndFor循环语句解决与累加求和相似的计算问题。
重点难点:
本课的重点是进一步熟悉For…EndFor循环语句的使用方法,难点是用赋值语句实现累加计算,理解赋值语句:
sum=sum+i。
一、设计算法和流程图
示信息时经常要使用连接符“+”,例如:
GraphicsWindow.DrawText(100,100,"1+3+…+79="+sum)
TextWindow.WriteLine("1+3+…+79="+sum)
在这里,"1+3+…+79="是一个字符串,sum是一个代表数值的变量,它们之间的“+”号是一个连接符,不是运算符,事实上,当字符串与数值相加时,加号就是连接符;当数值与数值相加时,加号就是运算符。
可以让学生运行下面的语句领悟连接符的作用:
GraphicsWindow.DrawText(100,100,"1+2+…+100=?
"+5050)
GraphicsWindow.DrawText(100,100,"1+2+…+100=?
"+5050+1000)
GraphicsWindow.DrawText(100,100,5050+1000)“
编写程序,计算:
1+2+…+100将结果显示在图形窗口
流程图:
程序如下:
Sum=0
Fori=1to100step1
Sum=Sum+i
EndFor
GraphicsWindow.BrushColor="Red"
GraphicsWindow.FontSize=30
GraphicsWindow.DrawText(100,100,"1+2+…+100="+Sum)
二、显示信息
在smallBasic中有两个显示信息的窗口,SmallBasic中最常用的对象
1、一个是图形窗口“GraphicsWindow”,可以绘图也可以显示文字信息。
2、一个是文本窗口“TextWindow”,这个窗口只能显示文字信息。
例如:
DrawLine是DrawLine,是画直线的意思;
DrawText是DrawText,是显示文本的意思;
DrawResizedImage是DrawResizedImage,是画特定大小的图形的意思。
练习:
编写程序,计算:
90+85+80+…+20
将结果显示在文本窗口,显示格式如下:
90+85+80+…+20=825
Sum=0
Fori=90to20step-5
Sum=Sum+i
EndFor
TextWindow.WriteLine("90+85+…+20="+Sum)
三、小结
使用变量进行累加计算是循环语句及循环结构中的一个重要内容, sum=sum+1或sum=sum+i对我们来说理解起来有难度,教材用流程图对计算1+2+……89的过程进行了详尽叙述,将变量比喻成一个存放数据的“盒子”,以加深我们对赋值语句sum=sum+i的理解。
在学习中还可以再增加1~2个类似的例子加以说明,计算结果既可以在“Graphics Window”窗口也可以在“Text Window”窗口中显示,我们可以通过对比两种输出方式的不同,在今后的编程中自觉地选择合适的输出窗口。
第五课:
电脑出算术题
学习要点:
1.掌握If…Then语句的书写格式及使用方法。
2.掌握If…Then语句中条件的表达方法。
3.学会使用Math对象的常用操作(即函数)、TextWindows对象的Read操作。
重点难点:
本课的重点是If…Then语句的格式和使用方法,难点是条件的表达。
编写一个程序,电脑给我们随机地出算术题,我们回答计算结果,然后电脑判断我们是做对了还是做错了。
Fori=1To10Step1
a=Math.GetRandomNumber(100)
b=math.GetRandomNumber(100)
c=a+b
TextWindow.Write(a+"+"+b+"=")
d=TextWindow.Read()
Ifc=dThen
TextWindow.WriteLine("正确,你好棒!
")
EndIf
Ifc<>dThen
TextWindow.WriteLine("你算错了,加油哦!
")
EndIf
TextWindow.WriteLine("正确答案是:
"+a+"+"+b+"="+c)
EndFor
一、Math对象a=Math.GetRandomNumber(x)
该语句作用是:
随机产生一个1~x的整数,并赋值给变量a。
其中:
x为大于等于1的整数。
GetRandomNumber:
Get(获取)、Random(随机)、Number(整数)。
语句分析:
1、a=Math.GetRandomNumber(100)表示随机获得一个1-100之间的整数。
2、TextWindow.Write(a+"+"+b+"=")在文本窗口中显示a+b=,其中,a,b分别是随机获取的整数
3、d=TextWindow.Read()表示在文本窗口中等待操作者输入一个数学,输入之后按回车键,输入的内容就保存到变量d中。
二、条件判断语句
【格式一】
If<条件>Then
<语句组>
EndIf
若条件成立,则执行<语句组>然后再执行Endif后的语句;
若条件不成立,则直接执行Endif后的语句。
、
【格式二】
If<条件>Then
<语句组1>
Else
<语句组2>
EndIf
a=Math.GetRandomNumber(100)
b=math.GetRandomNumber(100)
c=a+b
TextWindow.Write(a+"+"+b+"=")
d=TextWindow.Read()
Ifc=dThen
TextWindow.WriteLine("正确,你好棒!
")
Else
TextWindow.WriteLine("你算错了,加油哦!
")
EndIf
TextWindow.WriteLine("正确答案是:
"+a+"+"+b+"="+c)
练习(课本29页)
1、将电脑出算术题的程序输入电脑,然后运行程序。
在你理解这个程序后,请你对程序进行修改,将程序改为下列形式的算术题:
(a*b)-(a+b)=
2、设计一个简单的“人机对话”程序。
首先电脑问:
“你喜欢学习SmallBasic吗?
y/n。
”如果你按“y”,电脑回答“那太好了!
”:
如果你按“n”,电脑回答“那太遗憾了。
。
。
”。
第六课:
掷骰tóu子
学习要点:
1.进一步熟悉TextWindow和Math两个对象的常用操作。
2.了解人机交互的方法。
3.理解循环语句While…EndWhile,并能灵活地使用该语句编写循环结构的程序。
重点难点
理解循环语句While…EndWhile是本课的重点,也是难点。
While…EndWhile和For…EndFor都能实现程序的循环运行,但While…EndWhile循环语句更加灵活,用For…EndFor语句能够实现的循环都能用While…EndWhile实现。
(一)导入
例子:
编写一个模拟掷骰子比大小的游戏.程序如下:
While"True"
TextWindow.WriteLine("比赛开始,请甲按Enter投掷骰子")
TextWindow.PauseWithoutMessage()
a=Math.GetRandomNumber(6)
TextWindow.WriteLine("甲投掷的骰子点数是:
"+a)
TextWindow.WriteLine("请乙按Enter投掷骰子")
TextWindow.PauseWithoutMessage()
b=Math.GetRandomNumber(6)
TextWindow.WriteLine("乙投掷的骰子点数是:
"+b)
Ifa TextWindow.WriteLine("甲输了!
")
Endif
Ifb TextWindow.WriteLine("乙输了!
")
EndIf
Ifa=bThen
TextWindow.WriteLine("平局!
")
EndIf
TextWindow.Pause()
TextWindow.Clear()
Endwhile
(二)新授
一、人机交互程序
体现在以下几条语句:
1、TextWindow.WriteLine("比赛开始,请甲按Enter投掷骰子")
2、a=Math.GetRandomNumber(6) 该操作能随机地产生1-6之间的数,相当于”掷骰子“
3、TextWindow.Pause() 暂停程序的运行语句。
4、文本窗口中显示的:
pressanykeytocontinue...(按任意键继续)
二、while…endwhile循环语句
循环语句:
1、for...endfor循环语句:
该语句需要指定循环的次数
2、while...endwhile:
用于不知道循环次数的情况。
格式:
while<条件>
<语句组>
endwhile
作用:
while和endwhile共同组成循环语句。
程序执行到while时,判断〈条件〉是否成立。
当<条件>成立时,执行循环体<语句组>,遇到endwhile时,回头再检验<条件>是否成立……如此循环。
当<条件>不成立时,结束循环,执行endwhile后面的语句。
三、 while...endwhile语句可以控制循环的次数 while...endwhile语句的使用非常灵活,它也可以控制循环的次数。
例如:
计算1+2+3...+100,可以使用 while...endwhile循环语句。
sum=0
i=1
while i<=100
sum=sum+i
i=i+1
endwhile
graphicswindow.fontsize=30
graphicswindow.drawtext(100,80,"1+2+3+...+100="+sum)
四、操作练习
1、编写程序计算:
1+2+3+…,加到多少时,累加的和sum大于1000?
程序如下:
sum=0
i=1
Whilesum<=1000
sum=sum+i
i=i+1
EndWhile
2、楠楠想把零花钱存起来买一台1800元的手机,她第一个月存100元,以后每月比前一个月多存10元,她想知道需要存多少个月才能买手机?
程序如下:
sum=0
i=0
Whilesum<=1800
sum=sum+i*10+100
i=i+1
EndWhile
TextWindow.WriteLine("存钱的月份数:
"+i)
第七课:
画同心圆
学习要点:
1.熟悉画椭圆或圆的命令(操作)。
2.进一步熟悉GraphicsWindow的坐标系,能够利用坐标系确定所画椭圆或圆的位置。
学习重难点:
重点是熟悉GraphicsWindow的坐标系;难点是确定椭圆或圆的坐标。
一、圆的坐标
在smallbasic的图形窗口画圆和画椭圆都是使用DrawEllipse操作,它的使用格式如下:
GraphicsWindow.DrawEllipse(a,b,width,height)
a表示椭圆的x坐标,b表示椭圆的y坐标,width是指椭圆的宽度,height是指椭圆的高度。
二、画同心圆
同心圆是指圆心相同半径不同的圆。
变量g表示相邻同心圆之间的半径差。
变量d表示圆的直径
例:
如果最外面的圆的坐标是(x,y),那么中间的圆的坐标是(x+g,y+g),最里面的圆的坐标是(x+2g,y+2g)
画同心圆的程序:
g=10
d=200
x=100
y=100
whiled>1
graphicswindow.drawEllipse(x,y,d,d)
d=d-2*g
x=x+g
y=y+g
EndWhile
1.在画同心圆的程序中加上一句画正方形的命令,就可以多画一个同心正方形。
g=10
d=200
x=100
y=100
Whiled>1
GraphicsWindow.DrawEllipse(x,y,d,d)
GraphicsWindow.DrawRectangle(x+250,y,d,d)
d=d-2*g
x=x+g
y=y+g
EndWhile
2.修改画同心圆的程序,画同心椭圆。
g=10
d=200
x=100
y=100
whiled>1
GraphicsWindow.DrawEllipse(x,y,d,d/2)
d=d-2*g
x=x+g
y=y+g/2
EndWhile
小结:
循环语句是本课的教学重点,而循环的条件又是其中的难点,While…
EndWhile和For…EndFor都能实现程序的循环运行,但While…EndWhile循环语
句更加灵活,用For…EndFor语句能够实现的循环都能用While…EndWhile实
现。
第八课:
画奥运五环旗
学习要点:
1.进一步熟悉GraphicsWindow对象的操作和属性。
2.进一步熟悉GraphicsWindow窗口的坐标系。
教学重难点:
教学重点是让学生进一步熟悉GraphicsWindow对象的操作和属性,掌握学习方法,难点是坐标的运算。
一、画几何图形:
画奥运五环旗需要在不同的位置画不同颜色的圆,因此首先要掌握如何画彩色的圆,然后学习如何计算所画圆的位置。
1.GraphicsWindow对象中画几何图形的各种操作:
例如:
GraphicsWindow.DrawEllipse(0,0,60,60)画圆
GraphicsWindow.FillEllipse(0,0,60,60)画实心圆
GraphicsWindow.DrawRectangle(0,0,60,60)画正方形
GraphicsWindow.FillRectangle(0,0,60,60)画实心正方形
GraphicsWindow.DrawRectangle(60,60,100,60)画矩形框
GraphicsWindow.FillRectangle(160,120,100,60)画实心矩形
GraphicsWindow.DrawTriangle(0,0,60,20,30,80)画三角形
GraphicsWindow.FillTriangle(0,0,60,20,30,80)画实心三角形
2、GraphicsWindow对象中,用改变图形的颜色或笔的颜色、粗细
backgroundcolor 背景颜色
brushcolor 刷子的颜色
pencolor 画笔的颜色
penwidth 画笔的宽度
几何图形的边框颜色,用PenColor属性来设置,例如:
GraphicsWindow.PenColor="Red"将画笔设置为红色
如果画实心几何图形,用BrushColor属性来设置颜色,例如:
GraphicsWindow.BrushColor="Green"将刷子设置为绿色
二、画奥运五环旗
从下图可以看出,最左边的蓝色圆的坐标是(x,y),那么黑色圆的坐标是(x+d+g,y),那么黄色圆的坐标是(x+d/2+g/2,y+d/2),红色圆的坐标是(x+2d+2g,y),绿色圆的坐标是(x+1.5*d+1.5*g,y+d/2)
图8-1奥运五环旗的尺寸关系图:
d=120
g=20
x=50
y=50
GraphicsWindow.PenWidth=12
G