0.介绍本节课内容 1. 复习def和repeat
2. 使用地图hurdles1.wld讲解if,if…else,if…elif…else
2.1 写程序
def zou(): move() repeat(zou,50)
turn_off()
让学生思考会出现什么结果,让学生实际运行一下,看是否和预想的结果一致
2.2 写程序
def zou(): if front_is_clear(): move() repeat(zou,50) turn_off()
结合流程图,让学生思考会出现什么结果,让学生实际运行一下,看是否和预想的结果一致
2.3 写程序
def zou(): if front_is_clear(): move() else: turn_left() repeat(zou,50) turn_off()
结合流程图,让学生思考会出现什么结果,让学生实际运行一下,看是否和预想的结果一致
2.4 如何跨栏?
结合地图及流程图分析,写出下列程序
def zou(): if right_is_clear(): turn_left() turn_left() turn_left() move() elif front_is_clear(): move() else: turn_left() repeat(zou,50) turn_off()
学生运行成功后,把这个程序再优化一下,即把三个turn_left()用def定义为一个新动作
2.5 让学生更换地图hurdles1.wld为hurdles2.wld,以及hurdles3.wld,hurdles4.wld,看程序是否照样通过(选做部分,供完成快的同学做)
3. 留思考题,如果让机器人从右侧向左侧跨栏,程序该如何写
|