本帖最后由 立夏 于 2009-11-27 03:02 编辑
上课准备提纲 | 志愿者信息 | 备课人 | 立夏 | Email/MSN | email:lijuan@ict.ac.cn
msn:lijuan2441988@126.com
| 所属课程组 | 计算机 | 课程信息 | 课程名称 | 计算机-机器人 | 上课日期 | 2009.11.28 | 上课时长 | 50分钟 | 授课对象 | 平西王府弘立小学 | 学生信息 | 10人,4~5年级学生,及1名初一同学。 | 是否已了解上次课的授课情况(Y / N)Y | 本次课的教案是重复使用已有教案吗(Y / N)Y | 授课目标
| 1.熟悉学过的命令: move(), turn_left(), turn_off()
2.复习def和repeat的用法
3.学习判断语句if,if…else,if…elif…else
4.学习几个新语句:front_is_clear(), left_is_clear(), right_is_clear()
5.引导学生分析问题,继续学习和熟悉逻辑思维与代码语言的转换
6.尝试学生讨论完成简单问题的上课形式
| 授课内容
| 参考机器人教案中例12-14,18
1, 以顺时针正方形中右转动作为例,回忆def和repeat的用法。尝试用“教给机器人一个新动作”来解释def的作用,强调“repeat(动作名,次数)”中的动作名都必须是已经定义过的,即机器人已经学会的(请大家提议是否有必要)
2, 用红绿灯的例子来解释“判断”的概念,讲解if,if…else,if…elif…else
3, 讨论完成跨越一个栏杆并继续向前走的任务。
4. 学生自己完成简单的跨栏程序(高度和间隔相等的栏)
5.引导学生完成高度宽度不等的跨栏程序(不包括死胡同回转)
| 授课提纲
| 0.介绍本节课内容
1. 复习def和repeat(8-10“)
1.1 请学生来讲述def和repeat的作用和含义
1.2 讲解可以把def定义函数看做是教会机器人新动作。用”起床“来举例,提前板书。
1.3 请学生列举目前机器人学会的动作,复习之前学习的move等。
1.4 回忆”右转“的实现,可以学生回答或教师讲解。def和repeat都要用到。注意板书。
2. 讲解if,if…else,if…elif…else,并完成高度宽度相等的跨栏 (23-26”)
2.1 如果前进过程中发现路上有栏杆怎么办呢?(画图,学生口头回答)
机器人可以自己思考吗?可以。写下if
2.2 思考人做出判断的过程。“红灯停,绿灯行,黄灯亮了等一等”。(3”)
a.如果红灯亮
就停下
| if 条件
动作
| b.如果红灯亮
就停下
否则
就前进
| if 条件
动作1
else
动作2
| c. 如果红灯亮
就停下
否则 如果 绿灯亮
就前进
否则 黄灯亮
就等一等
| if 条件1
动作1
elif 条件2
动作2
else
动作3
|
(a,b先讲,c留到后面)
2.3 黑板画图,要求跨越一个栏杆
引导学生讨论完成(5“)
2.4 学生上机实现(5-8“)
2.5 给出地图(仿hurdle1.wld,仅去掉beeper),要求学生完成高度宽度相等的跨栏,提示尽量使用def和repeat(10“)
3.完成高度宽度不同的跨栏
3.1 要求机器人更聪明,引入多重判断,2.2.c
学生讨论。指出问题
3.2 引导学生发现问题的规律:靠右走。(5”)
图中单向跨栏其实是机器人一直沿着给出的路线走,并且路始终在机器人右手边(画图说明)。因此,如果右边为空,说明机器人远离了路线,需要右转,贴近;而贴紧以后,如果前面为空,没有障碍,就一直前走;如果前面不为空,有障碍,则左转。
一起写出靠右走函数:
def kaoyouzou():
if right_is_clear():
you()
move()
elif front_is_clear():
move()
else
turn_left()
move()
3.3 学生自己完成跨栏高度宽度不同的任务。(有可能课程进行不到这里,可以留作作业)
| 教学环境、材料需求 | 计算机、RUR-PLE | 备注 | 新人主讲,麻烦大家多提宝贵意见~~~程序还没贴,请大家参考大于教案,自己先练习下。明天有时间我再贴一下 |
助教需求 | 3名左右助教,协助维持课堂纪律,协助辅导学生完成课堂练习。助教同学如果有时间最好事先把程序自己跑一跑。 |
|