项目3 动 物 赛 跑 小狗和兔子准备赛跑,它们同时从起跑线出发,谁会跑得 更快? 本项目学习控制添加不同角色以及控制其移动的方法,体 会移动步数参数和等待时间参数,以及它们数值的改变对移动 速度的影响。学习图形化编程中坐标和方向的概念和用法。任 务涉及“角色被单击”积木、“移到xy”积木、“重复执行*次” 积木,继续巩固“移动”积木、“下一个造型”积木和“等待时间” 积木。 任务3.1 设计与制作 运动场上,小狗和兔子处于同一起跑线,单击“运行”按钮,它们按各 自的速度从舞台左侧向右赛跑,直到终点。 1 . 选择背景和角色 打开编程软件,单击右下角“背景库”图标,选择运动主题中的 Playing Field图片作为舞台背景。 单击“角色库”图标,选择动物主题中的“小狗2”角色,再次进入角 色库,选择Hare角色。角色默认大小都是100,为了让角色与舞台更匹配, 分别将两个角色大小改为60,完成后的舞台如图3-1所示。 图3-1 动物赛跑的舞台 2 . 起点和终点 开始赛跑之前首先要确定起点和终点位置,在图形化编程中,使用坐标 值来确定角色的具体位置。 (1)xy坐标。 使用坐标标记位置,科学研究中有各种坐标测量仪,生活中也经常使用 坐标来表示地理位置,一个xy坐标图如图3-2所示。 图3-2 xy坐标图 坐标图中有两条线,一条表示水平方向,标记为x,另一条表示垂直方向, 标记为y。两线交点为原点O(0,0)。从原点开始沿着水平方向向右的点 用正数表示,向左的点用负数表示。从原点开始沿着垂直方向向上的点用正 数表示,向下的点用负数表示。 角色参数区有一组参数,分别标记为x、y,其后面的数字就是坐标值。 使用鼠标拖曳角色到另一位置,会发现这一组数值也变化了,从而可以发现 角色位置和坐标值的关联。 舞台中心位置是坐标原点(0,0),起点在舞台左侧,当角色在起点时, 它们x方向的坐标值是一样的,而且是负数,y方向的坐标值不同,且有一 定间隔,以免两个角色重叠。 综上所述,可以设计小狗角色的起点位置坐标是(–200,–50),兔子角 色的起点坐标是(–200,50)。 (2)“移到xy”积木。 使用这个积木块可以把角色准确地移动到某个位置,如舞台最左侧的起 跑位置。这是一块蓝色积木,属于运动类模块,如图3-3所示。积木中有两 个白色椭圆形框,分别是x坐标值和y坐标值,根据实际需要修改。 (3)起点设置。 单击小狗角色图标,拖曳“当 被点击”积木到该角色编程区,再拖曳“移 到xy”积木。按之前的设计,将积木中的参数修改为小狗角色的起点坐标值, 如图3-4所示。 按照同样的步骤,单击兔子角色图标,完成起点设置,兔子角色的起点 坐标是(–200,50),如图3-5所示。 图3-4 小狗角色的起点坐标 图3-5 兔子角色的起点坐标 起点设置完成,单击“运行”按钮,可以看到“小狗”和“兔子”几乎 同时来到起点位置,如图3-6所示。此时,它们的x坐标是相同的,y坐标 分别表示两条跑道的位置。 (4)终点设置。 一次赛跑,不仅有起点,还要设置终点。角色从左向右跑,可以设定角 色从x坐标的–200跑到坐标200,一共要跑400。 图3-3 “移到xy”积木 3 . 开始赛跑 与企鹅走路控制相似,使用“移动”积木、“下一个造型”积木和“等待” 积木来完成,因为到达终点后角色将停止移动,所以不再是无限次的循环执 行,需要使用有限的重复次数。 要跑400,假设一次移动1步,就要重复400次;每次移动10步,要重 复40次;每次移动20步,要重复20次。 (1)“重复执行*次”积木。 使用这块积木,可以重复执行其内部的程序,执行次数可设定,如图3-7 所示。积木内部的程序为单步执行的程序,如将次数设定为10,将执行10 次内部程序后,继续执行后续程序。 图3-6 角色在起点 图3-7 重复执行积木 选中小狗角色,完成程序编写。使用重复执行积木,单次动作的程序参 照之前的方法,依次搭建“移动”积木、“下一个造型”积木和“等待”积木。 让小狗角色每次走20步,重复执行20次,完成后如图3-8所示。 单击“运行”按钮,观察程序执行结果。可以看到小狗角色向前奔跑, 到达终点后停止。按照同样的方法编写兔子角色的程序,让兔子角色每次跑 10步,执行40次。程序如图3-9所示。 图3-8 “小狗”奔跑的程序 图3-9 “兔子”奔跑的程序 单击舞台左上方的“运行”按钮,观察运行结果。可以看到“小狗”和 “兔子”同时来到起跑位置,赛跑时,“小狗”一路遥遥领先,率先到达终点 停止奔跑。等到“兔子”也到达终点后,程序结束,自动停止运行。 反复多次运行程序,观察运行结果,体会为什么“小狗”跑得比“兔 子”快? (2)修改参数。 程序中可以修改的参数有重复执行次数、移动步数和等待时间。通过参 数修改,可以改变程序运行结果!分别修改代码中的参数,观察运行结果, 体会参数对程序的影响。 参数和赛跑结果的统计如表3-1所示。注意:重复执行次数的数值和移 动步数的数值相乘后结果必须是400,才能保证赛跑路程一样。 修改参数之后,先猜一猜,谁能够获胜,再运行代码,观察运行结果是 否和猜测的一致。尽可能多地进行结果统计,发现参数变化和运行结果之间 的联系。 表3-1 赛跑结果统计 赛跑 次数 小 狗 兔 子 运行 结果 重复执行 次数 步数 下一个造型 等待时间 重复执行 次数 步数 下一个造型 等待时间 第一次 第二次 第三次 任务3.2 扩展阅读:赛跑 赛跑是古老的运动项目,起源于远古时代人类的狩猎行为。奥运会田径 类运动也有多种赛跑形式,诞生过许多赛跑健将,一次次地刷新了奥运纪录。 可以说,跑得更快、更远,是人类永远的追求! 1 . 速度 速度(velocity)用来表示物体运动的快慢,在数值上等于物体运动的 路程(s)跟发生这段距离所用的时间(t)的比值,用公式表示为v=s/t,即 速度等于距离与时间的比值。在国际单位制中,速度的单位是米每秒。 在本章的角色移动指令中,小狗的移动步数设置为20,兔子的移动步 数设置为10,前者是后者的2倍。相同的路程,前者的奔跑速度也是后者 的2倍。 2 . 动物里面的“速度之最” (1)爬行类动物的速度冠军是美国的一种蜥蜴,它逃跑时的最大速度达 24千米/小时。 (2)飞得最快的昆虫是澳大利亚蜻蜓,它短距离的冲刺速度可达58千 米/小时。 (3)鸵鸟是世界上跑得最快的鸟之一,速度可达75千米/小时。 (4)长跑最快的动物是藏羚羊,它特别擅长奔跑,奔跑速度可达 70~110千米/小时,即使是临产的雌性藏羚羊,也会以很快的速度疾奔。它 还是高原严酷环境下奔跑最快的动物。 (5)陆地上短跑最快的动物是非洲的猎豹,它奔跑速度可达110千米/ 小时。 但长距离奔跑速度仅为60千米/小时左右。它们最快的速度只能维 持一分钟,接着便得花20分钟来喘息、恢复。 (6)长距离游速最快的鱼类是金枪鱼,游速达230千米/小时。 (7)游得最快的鱼类是旗鱼,游速达120千米/小时,比轮船正常航行 的速度要快三四倍。 3 . 高速有效跑步的技巧 (1)在有限的步频间隔,即在两步之间,减少触地,增加腾空的时间。 (2)前方抬腿送髋动作比较明显,后方腿离地时的角度也比较大,腾空 时就像优美的弓箭步,这些都需要柔韧性的支持。原地弓箭步,能有效锻炼 腿部、髋关节的灵活柔韧性,也能同时训练到大腿的力量。 (3)提高心肺能力。速度训练能够提高最大摄氧量,每次气喘吁吁地跑 完,身体都在逐步强化——呼吸会更深,频率更高,心跳脉搏输出血量增加, 也可以在极限条件下跑得更快。肌肉利用氧气的效率提高,如果氧气暂时不 够了,产生乳酸,那么身体排除乳酸的能力也会增加。速度训练还有助于提 高耐力。典型的速度训练有间歇跑、变速跑、冲坡等。 任务3.3 总结与评价 先分组进行总结,分别说出制作过程及体会,并写出书面总结。再互相 检查制作结果,集体给每一位同学打分。 1 . 任务完成大调查 完成项目后在表1-1所示的打分表中打√。 2 . 行为考核指标 行为考核指标,主要采用批评与自我批评、自育与互育相结合的方法。 采用自我考核和小组考核后班级评定的方法。班级每周进行一次民主生活会, 就行为指标进行评议,可在表1-2所示的评分表中进行自我评价。 3 . 集体讨论 怎样设置参数,才能让“兔子”跑得比“小狗”快? 4 . 思考与练习 单击“运行”按钮,角色到达起点,随即开始赛跑,实际上的赛跑是在 起点等待,一声令下(单击“运行”按钮)开始赛跑。修改任务3.1中的程序, 实现角色先在起点等待,单击“运行”按钮时开始赛跑。 提示:将移到起点坐标的积木单独控制,使用“当角色被点击”积木, 让角色回到起点。