蓝桥题库每日一练 · 2026.07.30

7月30日 EV3 屏幕宽 178、高 128 像素,左上角…

EV3编程题参考难度 ★★★★☆蓝桥杯第十一届 选拔赛 · 已用
EV3 屏幕宽 178、高 128 像素,左上角是 (0,0),x 往右变大,y 往下变大。屏幕上有三个图形(如图):圆球是实心圆,圆心 (50,90)、半径 10;盒子是实心小正方形,左上角 (120,40)、边长 20;空心框是空心正方形,左上角 (80,60)、边长 20。程序持续运行:用主机的上下左右键控制圆球移动,每按一次移动 20 像素,静止时图形不闪烁;当圆球紧挨着盒子、并朝盒子方向移动时,能把盒子一起推着走(反方向移动只能离开、不能把盒子拉回来);当盒子正好和空心框重合(盒子左上角到达 (80,60))时,就算推进框里了:等 3 秒,清屏并显示 GOOD,约 2 秒后三个图形回到开始的位置,可以再玩一局。
(0,0)球 (50,90)盒 (120,40)框 (80,60)圆填圆心,矩形填左上角
评分标准
  • 10 分:屏幕显示 3 个图案且不闪烁
  • 30 分:上下左右键能控制圆球移动
  • 50 分:圆球贴住盒子能把它推着走
  • 70 分:反方向移动时不会把盒子拉回
  • 100 分:盒子进框后等 3 秒清屏显示 GOOD,之后图形恢复开始位置
参考解法
这是一个小小的「推箱子」游戏,功能不少,但拆开看就是几件事叠起来。

先看清坐标(见题图)。EV3 画圆时填的是圆心,画矩形时填的是左上角。这里有个巧妙的地方:把圆球的圆心、盒子的中心都当成它们的「位置点」——圆球在 (50,90),盒子中心在 (130,50),空心框中心在 (90,70),x、y 全都是 10、30、50、70……这种每隔 20 的数。圆球每步也正好走 20,所以整块屏幕就像一张每格 20 像素的棋盘,三个图形都稳稳站在格子上。

于是「紧挨着」就好判断了:圆球中心和盒子中心正好差一格。圆球这一步要走进盒子所在的那一格,就说明它贴着盒子、还正朝盒子走——这时盒子也要朝同一个方向挪一格。

程序用 4 个变量记位置:球x、球y(圆心)、盒x、盒y(左上角),开始分别是 50、90、120、40。
① 画图:把「画三个图形」写成一段——第一个图形「清除屏幕」选「是」,另外两个选「否」。开始时先画一次。
② 一直重复:用「等待」模块等主机按钮「碰撞」(按下再松开),勾选上下左右四个键,它会告诉你按的是哪个(编号 1 左、3 右、4 上、5 下)。按一下只走一步,手按住也不会连着走。
③ 算出圆球的「下一步」:比如按左键,新x = 球x − 20、新y = 球y;按上键,新y = 球y − 20(屏幕上 y 越小越靠上)。……

看此题详解,练更多题目,进入蓝桥题库每日一练 →

此答案或解析由 AI 生成,请谨慎使用。
难度依赛考组别及等考级别粗略评估,仅供参考。