🤖 机器人行走路径

C5-2 坐标与空间上的模拟 · 拓展项目(推荐度第1名)

⭐ 趣味性 ★★★★★  |  推荐度 ★★★★★

📝 题目内容

🤖 欢迎来到机器人行走路径!

你是一名图形设计师,需要用函数画出各种图形。写三个函数来完成任务:

  • ① drawLine(n):画一条横线,n个星号
  • ② drawRect(width, height):画矩形,width列,height行(可调用drawLine)
  • ③ drawTriangle(n):画直角三角形,n层(第i层画i个星号)
  • ④ 主程序调用函数画出5×3的矩形和4层的直角三角形

📚 知识点回顾

🔄 本节课知识点

  • 二维坐标:用(x, y)表示平面位置,x横坐标,y纵坐标
  • 方向数组:dx[]={-1,1,0,0}, dy[]={0,0,-1,1} 表示上下左右
  • 路径记录:用pathX[]和pathY[]数组记录每一步坐标
  • 坐标更新:x += dx[d], y += dy[d] 根据方向更新坐标

🔙 之前知识点

  • 数组定义:int dx[] = {-1, 1, 0, 0};
  • for循环:for(int i=0;i 模拟每一步移动
  • cin输入:cin >> d; 读取方向指令
  • 数组访问:dx[d] 获取方向d对应的x变化量

🗺️ 解题逻辑线路

第1步:定义坐标和方向数组 x=0,y=0; dx[]={-1,1,0,0}, dy[]={0,0,-1,1}
↓
第2步:循环读取移动指令 for(i=0; i> d; }
↓
第3步:更新坐标并记录路径 x += dx[d]; y += dy[d]; pathX[step]=x; pathY[step]=y;
↓
第4步:输出完整路径 遍历pathX[]和pathY[]输出每个坐标点

💻 C++ 在线编辑器

📝 代码填空题:黄色虚线标记的 _____ 是需要你填写的部分。

📝 robot_path.cpp(填空题)
1

          
        
📌 使用说明:
① 编辑代码:直接在代码区点击即可编辑,支持Tab键缩进(4个空格)
② 运行测试:点击"运行测试"按钮,会进行语法检查并模拟运行
③ 复制代码:点击"复制代码"按钮,一键复制到剪贴板
④ 真正编译:本编辑器为模拟运行环境,如需精确结果,请复制代码到 Dev-C++、Code::Blocks 或在线C++编译器中真正编译运行
⑤ 查看提示/答案:遇到困难可以点击"查看提示",完成后可以对照"查看答案"

🎮 拓展四关 · 逐关精讲(🔐 每关独立密码)

下面 4 个关卡由易到难。每关点 🔐 查看本关讲解与参考代码 按钮,输入本讲密码后才能看到该关的解题思路、完整代码与易错点提示。

关卡1:一维移动模拟 简单
机器人在直线跑道上移动,从原点(位置0)出发,每次老师吹哨就掉头。已知吹哨 n 次,每次跑 x 米,求机器人最终位置。
关卡2:二维坐标移动 简单
机器人在二维平面上从原点 (0, 0) 出发,给一串移动指令 U(上)/D(下)/L(左)/R(右),求最终坐标。
关卡3:曼哈顿距离 中等
计算机器人从 A 点走到 B 点的曼哈顿距离(只能横平竖直走),输出总路程。
关卡4:迷宫路径模拟 困难
机器人从 (0, 0) 出发,用方向数组表示上下左右,输入 n 个方向编号,模拟每一步移动,输出走过的路径坐标。(就是上方编辑器的填空题目)