一、实操题
1、击鼓游戏
题目说明
准备工作:
将舞台背景设置为“spotlight-stage”,添加一个“Bellerina”角色、两个“Drum1”角色和两个“Drum2”角色,并按照图 7-1 的位置摆放。角色“Bellerina”的造型和颜色的设置须如图 7-1 所示,五个造型的裙子颜色顺序为:白、红、蓝、绿、黄;四个鼓的颜色分别设置为:红、蓝、绿、黄。
编程实现:
舞台中央的小女孩会随机变换造型及衣服颜色4次,游戏玩家要记住衣服颜色出现顺序,并按顺序敲击相应颜色的鼓,颜色顺序正确则可得1分,并开始下一轮变换颜色;直到某一轮敲鼓顺序错误则游戏结束,更新最高得分。
具体要求:
1、每次点击绿旗后,舞台左上角的“得分”(显示位置见图-2)都为 0;
2、小女孩为造型 1(白色裙子);并说“请观察颜色序列!”2 秒钟(图-2);
3、小女孩切换 4 次造型,每次都是随机切换为造型 2 到造型 5 中的一个(这 4 次切换的造型之间允许重复);而且第一次切换后要说“1”1 秒钟,第二次说“2”1 秒钟,第三次说“3”1 秒钟,第四次说“4”1 秒钟(图-3 至图-6);
4、在 4 次造型切换完成后,小女孩切换回造型 1(白色裙子),表示一轮切换结束。小女孩说:“请按顺序点击相应颜色鼓!”(图-7);
5、游戏玩家根据刚刚小女孩 4 次切换造型中衣服颜色的顺序,依次点击(敲击)相应颜色的鼓,在敲击的第一次鼓后小女孩说“1”,第二次后说“2”,第三次后说“3”,第四次后说“4”;如果玩家敲击的顺序与衣服颜色切换的顺序相一致,小女孩就说“正确!”2 秒钟,且得分加 1(图-8),并从步骤 2 开始下一轮游戏;如果敲击的顺序错误,小女孩就说:“游戏结束”,并根据当前得分的情况更新舞台右上角的最高得分(显示位置如图-9 所示),程序结束。
将程序保存到桌面,命名为“7.sb2”。
参考答案:1. 初始化舞台背景为“spotlight-stage”,添加角色“Bellerina”和两个“Drum1”角色和两个“Drum2”角色,按照图7-1的位置摆放。2. 设置“Bellerina”角色的初始造型为造型1(白色裙子),并设置角色的颜色为白色。3. 在“Bellerina”角色下方添加一个标签,标签内容为“得分”,用于显示当前得分。4. 在程序开始运行时,将当前得分设置为0。5. 当点击绿旗时,开始计时器,让“Bellerina”角色说出“请观察颜色序列!”持续2秒钟。6. 编写循环,让“Bellerina”角色随机切换造型2到造型5中的一个,每次切换后说对应的数字(1、2、3、4)持续1秒钟。7. 当4次造型切换完成后,让“Bellerina”角色切换回造型1,并说出“请按顺序点击相应颜色鼓!”。8. 等待玩家敲击鼓,根据玩家敲击的顺序判断是否与衣服颜色切换的顺序一致,如果一致则得分加1,否则游戏结束,并更新最高得分。
解析:【喵呜刷题小喵解析】:
这个题目要求编写一个Scratch程序,实现一个击鼓游戏。在游戏中,小女孩会随机变换造型及衣服颜色4次,游戏玩家需要记住衣服颜色出现的顺序,并按照顺序敲击相应颜色的鼓。如果敲击的顺序正确,则得分加1,并开始下一轮变换颜色;如果敲击的顺序错误,则游戏结束,并更新最高得分。
为了实现这个程序,我们需要按照题目要求,初始化舞台背景、添加角色和标签,并设置角色的初始状态。然后,编写程序,让小女孩说出“请观察颜色序列!”持续2秒钟,随机切换造型并说出对应的数字。在4次造型切换完成后,让小女孩说出“请按顺序点击相应颜色鼓!”,等待玩家敲击鼓,根据玩家敲击的顺序判断是否与衣服颜色切换的顺序一致,并更新得分或结束游戏。
最后,将程序保存到桌面,命名为“7.sb2”。
2、列表排序
题目说明
编程实现:
老师给小猫出了一道题:在列表 1 中生成 5 个在 1~99 范围内的随机整数,然后按照从大到小的顺序将它们依次移到列表 2 中。
例如:在列表 1 中随机生成的整数依次是“12,3,1,13,17”,在处理之后列表 2 中的整数依次是“17,13,12,3,1”。
具体要求:
1、每次点击绿旗后,在屏幕中都显示如图-1 所示的列表 1 和列表 2,且在列表 1 中随机生成 5 个在 1~99范围内的随机整数,而列表 2 中内容为空。然后小猫说“5 秒钟后开始处理”,并等待 5 秒钟;
2、处理数据时,每间隔 1 秒钟,都将列表 1 中当前最大的一个数字移动到列表 2 中,注意:是移动,不是复制;
3、当处理到列表 1 为空后,列表 2 中的数据应从大到小排列,如图-2 所示,然后小猫说“处理完啦。”2秒钟,然后程序结束。
将程序保存到桌面,命名为“6.sb2”。
参考答案:1. 创建一个列表1,用于存储随机生成的整数。2. 创建一个列表2,用于存储从列表1中移动过来的整数。3. 每次点击绿旗后,在列表1中生成5个1~99范围内的随机整数,并显示列表1和列表2。4. 小猫说“5秒钟后开始处理”,等待5秒钟。5. 在等待的5秒钟内,每间隔1秒钟,将列表1中当前最大的一个数字移动到列表2中。6. 当列表1为空时,对列表2中的数据进行排序,然后从大到小显示列表2。7. 小猫说“处理完啦。”等待2秒钟后,程序结束。
解析:【喵呜刷题小喵解析】:
本题要求实现一个列表排序的程序,其中列表1中生成5个1~99范围内的随机整数,然后按照从大到小的顺序将它们依次移到列表2中。具体实现步骤如下:
1. 创建一个列表1和一个列表2,用于存储随机生成的整数和移动过来的整数。
2. 每次点击绿旗后,在列表1中生成5个1~99范围内的随机整数,并显示列表1和列表2。可以使用Python的random模块来生成随机数。
3. 小猫说“5秒钟后开始处理”,等待5秒钟。可以使用time模块中的sleep函数来实现等待。
4. 在等待的5秒钟内,每间隔1秒钟,将列表1中当前最大的一个数字移动到列表2中。可以使用max函数来找到列表1中的最大值,然后使用append函数将其添加到列表2中,并从列表1中移除。
5. 当列表1为空时,对列表2中的数据进行排序,然后从大到小显示列表2。可以使用Python的sorted函数来对列表2进行排序,然后使用reverse函数将其从大到小显示。
6. 小猫说“处理完啦。”等待2秒钟后,程序结束。可以使用time模块中的sleep函数来实现等待。
最后,将程序保存到桌面,命名为“6.sb2”。需要注意的是,本题中要求使用Scratch编程环境,因此需要使用Scratch的积木块来实现上述步骤。
3、自动驾驶
题目说明
编程实现:
将舞台背景改为“blue-sky”背景,在舞台上设置 1 个小车“Car-Bug”角色,并保留默认的小猫角色。
小车从舞台左侧向右行驶。当小车快要碰到小猫时,小车能自动停止移动,而小猫被吓到了。
具体要求:
1、每次点击绿旗后,舞台背景和小车角色的初始位置都要如下图所示,小猫角色的 x 坐标值为从 100 到200 范围内的一个随机数值,y 坐标参考图中位置来大致设置;
2、小车开始自动向右行驶。小猫的位置则始终保持不动;
3、小车在行驶到车头距离小猫一个车身范围以内时,小车能自动停止。视觉观察时,小车不能碰到小猫,两者之间留有一段距离。如下图所示:
4、在小车停下后,小猫说“哇!!!”2 秒钟,程序结束。
将程序保存到桌面,命名为“5.sb2”。
参考答案:1. 设置舞台背景为“blue-sky”。2. 在舞台上添加1个小车“Car-Bug”角色,并保留默认的小猫角色。3. 将小车“Car-Bug”的初始位置设置在舞台的左侧,小猫的初始位置随机设置在x坐标为100到200的范围内,y坐标参考图中位置来大致设置。4. 当点击绿旗后,小车自动向右行驶,小猫的位置始终保持不动。5. 使用条件语句检测小车和小猫之间的距离,当小车行驶到车头距离小猫一个车身范围以内时,小车自动停止移动。6. 小车停下后,小猫说“哇!!!”2秒钟,程序结束。
解析:【喵呜刷题小喵解析】:
此题目要求实现一个基于Scratch的自动驾驶小车项目。根据题目描述,我们需要完成以下步骤:
1. 设置舞台背景为“blue-sky”,这是题目给出的背景要求。
2. 在舞台上添加1个小车“Car-Bug”角色,并保留默认的小猫角色。这是题目要求的角色设置。
3. 设置小车的初始位置在舞台的左侧,小猫的初始位置随机设置在x坐标为100到200的范围内,y坐标参考图中位置来大致设置。这是题目给出的初始位置要求。
4. 当点击绿旗后,小车自动向右行驶,小猫的位置始终保持不动。这是题目给出的运动要求。
5. 使用条件语句检测小车和小猫之间的距离,当小车行驶到车头距离小猫一个车身范围以内时,小车自动停止移动。这是题目给出的自动停止要求。
6. 小车停下后,小猫说“哇!!!”2秒钟,程序结束。这是题目给出的声音要求。
完成以上步骤后,将程序保存到桌面,命名为“5.sb2”,这是题目给出的保存要求。
注意,在实现过程中,我们需要利用Scratch的积木块来编写程序,包括移动、条件判断、声音播放等积木块。同时,我们还需要注意小猫和小车之间的距离判断,确保小车在行驶到车头距离小猫一个车身范围以内时能够自动停止,避免小车碰到小猫。
4、折扇
题目说明
编程实现:
以坐标(0,0)点为中心绘制一把扇子:扇面和扇把都是三分之一圆,扇面的半径为 100 左右,扇把的半径为 20 左右。
具体要求:
1、每次点击绿旗后,舞台背景为白色,舞台上不显示任何内容。然后连贯地画出扇子图案,中间不可停顿;
2、画出的扇子颜色为黑色,画笔粗细为 1,扇面和扇把的张角都为三分之一圆(120 度),扇面的半径为 100 左右,扇把的半径为 20 左右;
3、坐标(0,0)点是构成扇子的这些线段的相交点。
将程序保存到桌面,命名为“4.sb2”。
参考答案:br />由于题目要求使用Scratch 2.0编程环境,以下是实现题目要求的程序:1. 打开Scratch 2.0编程环境。2. 在“造型”库中,选择“隐藏”作为角色默认造型。3. 在“脚本”区域,为角色添加以下脚本:```scratch当绿旗被点击设定背景为 [白色]设定画笔颜色为 [黑色]设定画笔粗细为 1设定画笔为 [正常画]将画笔移至 (0) (0)画弧 120 100 0画弧 120 20 180```4. 将程序保存至桌面,命名为“4.sb2”。
解析:【喵呜刷题小喵解析】
题目要求使用Scratch 2.0编程环境,要求实现的功能是:每次点击绿旗后,舞台背景为白色,舞台上不显示任何内容,然后连贯地画出扇子图案,中间不可停顿。扇子和扇把都是三分之一圆,扇面的半径为100左右,扇把的半径为20左右。坐标(0,0)点是构成扇子的这些线段的相交点。
根据上述要求,我们可以按照以下步骤实现:
1. 首先,设置舞台背景为白色,并且舞台上不显示任何内容。
2. 然后,设置画笔颜色为黑色,画笔粗细为1,画笔模式为正常画。
3. 将画笔移至坐标(0,0)点,这是构成扇子的这些线段的相交点。
4. 画出扇面,扇面是一个三分之一圆,半径为100左右,起始角度为0度。
5. 画出扇把,扇把也是一个三分之一圆,半径为20左右,起始角度为180度。
6. 最后,将程序保存至桌面,命名为“4.sb2”。
注意:题目中的图片仅作为参考,实际画出的扇子和扇把应该是两个三分之一圆,半径和起始角度需要按照题目要求设置。
5、计算游泳时间
题目说明
编程实现:
你要参加运动会,每天都刻苦练习游泳,并给自己的游泳时间做了精确的计时(本题中的计时都按 24 小时制计算)。你只要说出自己从 a 时 b 分一直游泳到当天的 c 时 d 分,你的小鱼教练就能计算出你这天一共游了多少时间。你的小鱼教练是怎么算出来的呢?
具体要求:
1、程序开始运行时,小鱼教练询问游泳开始时间(分别询问 24 小时制的时和分)和结束时间(分别询问24 小时制的时和分)。
2、小鱼教练计算并说出游了多长时间。但如果你输入的结束时间早于开始时间,小鱼教练就会说“输入错误!结束时间早于开始时间”,程序结束。
将程序保存到桌面,命名为“3.sb2”。
参考答案:由于题目中未提供具体的编程语言,我将使用Python作为示例语言,提供一个简单的解决方案。```pythondef calculate_swimming_time():start_hour, start_minute = map(int, input("请输入游泳开始时间(格式为:时 分):").split())end_hour, end_minute = map(int, input("请输入游泳结束时间(格式为:时 分):").split())if end_hour < start_hour or (end_hour == start_hour and end_minute < start_minute):print("输入错误!结束时间早于开始时间")returnswimming_minutes = (end_hour - start_hour) * 60 + (end_minute - start_minute)hours = swimming_minutes // 60minutes = swimming_minutes % 60print(f"你一共游了hours小时minutes分钟")if __name__ == "__main__":calculate_swimming_time()```
解析:【喵呜刷题小喵解析】:
首先,我们定义了一个函数`calculate_swimming_time()`,用于计算游泳时间。
在函数内部,我们使用`input()`函数获取用户输入的游泳开始时间和结束时间,并使用`map()`函数和`int()`函数将输入的字符串转换为整数。
然后,我们检查结束时间是否早于开始时间。如果是,则输出错误信息并结束程序。
如果结束时间不早于开始时间,我们计算游泳的总分钟数,并将其转换为小时和分钟。
最后,我们使用`print()`函数输出游泳的总时间。
在主程序中,我们调用`calculate_swimming_time()`函数来获取用户输入并计算游泳时间。
注:为了符合题目的要求,我们需要将代码保存为"3.sb2"文件,由于Python脚本无法直接保存为sb2文件,你需要将代码在Python环境下运行,或者使用支持.py文件保存和运行的IDE(如PyCharm、Jupyter等)。
6、小猫打螃蟹
题目说明
准备工作:
背景改为白色背景,保留小猫角色,导入角色库中角色螃蟹“Crab”;自行绘制子弹角色,颜色和大小可自行设定。
编程实现:
一只在舞台左下角的小猫,发射子弹射击一只在舞台顶部的水平移动的螃蟹,击中螃蟹 5 次后程序结束!
具体要求:
1、程序运行后,小猫一直固定在舞台左下角,螃蟹在舞台上部进行最左->最右->最左的循环移动。注意:移动速度不要太快。
2、按下空格键,小猫发射一颗子弹,子弹须沿着鼠标方向发射出去,碰到螃蟹或者舞台边缘后消失。
3、子弹击中螃蟹 5 次后,小猫说:“我赢啦”2 秒钟,游戏结束。要求击中的次数在舞台的左上角实时显示。
将程序保存到桌面,命名为“2.sb2”。
参考答案:1. 导入小猫和螃蟹角色,并设置背景为白色。2. 将小猫固定在舞台左下角,设置螃蟹在舞台上部进行最左->最右->最左的循环移动,移动速度适中。3. 编写按下空格键发射子弹的代码,子弹沿着鼠标方向发射,碰到螃蟹或舞台边缘后消失。4. 编写子弹击中螃蟹后,在舞台左上角实时显示击中次数的代码。5. 编写子弹击中螃蟹5次后,小猫说“我赢啦”2秒钟,游戏结束的代码。6. 将程序保存到桌面,命名为“2.sb2”。
解析:【喵呜刷题小喵解析】:
此题目要求制作一个基于Scratch的简单射击游戏。首先,需要导入小猫和螃蟹角色,并设置背景为白色。然后,将小猫固定在舞台左下角,设置螃蟹在舞台上部进行最左->最右->最左的循环移动,移动速度适中。
接下来,需要编写按下空格键发射子弹的代码,子弹沿着鼠标方向发射,碰到螃蟹或舞台边缘后消失。为了实现这一点,可以使用Scratch的事件块和侦测块中的“当空格键被按下”事件,使用“发射子弹”命令,使用“将 x 设置为鼠标 x”和“将 y 设置为鼠标 y”命令,以及“碰到边缘就消失”和“碰到螃蟹就消失”的事件。
然后,需要编写子弹击中螃蟹后,在舞台左上角实时显示击中次数的代码。可以使用“当子弹碰到螃蟹”的事件,使用“改变击中次数”命令,以及“在舞台左上角显示击中次数”的命令。
最后,需要编写子弹击中螃蟹5次后,小猫说“我赢啦”2秒钟,游戏结束的代码。可以使用“当击中次数等于5”的事件,使用“说出‘我赢啦’2秒后”的命令,以及“结束游戏”的命令。
最后,将程序保存到桌面,命名为“2.sb2”。
7、女孩顶球
题目说明
准备工作:
导入角色库中的两个角色小女孩“Anna”和足球“Ball-Soccer”。
编程实现:
小女孩正在表演用头托住足球。为了把足球一直托在头顶,小女孩需要不停地晃动双手。小女孩还可以跟着鼠标一起移动。
具体要求:
1、程序运行后,小女孩要跟随鼠标一起移动;
2、小女孩可以不停地切换造型(切换造型的间隔时间参考值为 0.2 秒);
3、无论小女孩是否移动,足球都始终处于小女孩的头顶。不用考虑足球是否遮挡住小女孩的头部,只要靠着就可以,参考下图所示。
将程序保存到桌面,命名为“1.sb2”。
参考答案:1. 首先,导入角色库中的两个角色:小女孩“Anna”和足球“Ball-Soccer”。2. 设置小女孩“Anna”的造型,并设置其跟随鼠标移动的属性。3. 使用“重复执行直到”循环,让小女孩不停地切换造型,间隔时间设置为0.2秒。4. 在小女孩的“被点击”事件中,设置足球“Ball-Soccer”的x、y坐标与小女孩的x、y坐标相同,使足球始终位于小女孩的头顶。
解析:【喵呜刷题小喵解析】:
根据题目要求,我们需要实现以下功能:
1. 小女孩跟随鼠标移动:这可以通过设置小女孩的“移动到鼠标指针”属性来实现。
2. 小女孩不停地切换造型:可以使用“重复执行直到”循环,并在循环体内添加“更改造型”积木,设置间隔时间为0.2秒。
3. 足球始终位于小女孩的头顶:可以在小女孩的“被点击”事件中,设置足球的x、y坐标与小女孩的x、y坐标相同,这样无论小女孩如何移动,足球都会保持在她的头顶。
注意,由于题目中并未给出具体的编程环境,因此这里给出的是一种通用的解决方案,具体实现方式可能因编程环境的不同而有所差异。
喵呜刷题:让学习像火箭一样快速,快来微信扫码,体验免费刷题服务,开启你的学习加速器!