16. 附录-不同模式的功能性概述

16.1 第一阶段(前4个部分)

第一步,可以用点按钮的方式引导Karel

  • go ... 向前走一步
  • left ... 左转
  • right ... 右转
  • get ... 拾起一枚宝石
  • put ... 放下一枚宝石

16.2 编程模式(5-15部分)

在编程模式中,Karel有如下功能:

  • go ... 向前走一步

  • left ... 左转

  • right ... 右转

  • put ... 放下一枚宝石

  • get ... 拾起一枚宝石

  • repeat ... 计数循环(重复给定次数的操作)

  • if/else ... 条件判断

  • while ... 条件循环(重复某操作直到满足某条件)

  • def ... 定义一个新的命令

  • wall ... 检测机器人前方是否有墙

  • gem ... 检测机器人正下方是否有宝石

  • tray ... 检测机器人正下方是否有托盘

  • empty ... 检测机器人的包里是否没有宝石

  • home ... 检测机器人是否在家方块

  • north ... 检测机器人是否面朝北

  • print ... 打印字符串和变量

  • gpsx ... 水平方向的GPS坐标

  • gpsy ... 垂直方向的GPS坐标

  • a = 0 ... 创建一个变量 a 并实例化为0

    更多实例化方法参考 11.8节

  • inc(a) ... 增加变量 a 的值一个单位

  • inc(a,value) ... 增加变量 a 的值 value 个单位

  • dec(a) ... 减少变量 a 的值一个单位

  • dec(a,value) ... 减少变量 a 的值 value 个单位

  • rand ... 随机命令(随机返回 TrueFalse)

  • return ... 返回一个值,在函数中使用

  • and ... 二元逻辑运算 and

  • or ... 二元逻辑运算 or

  • not ... 一元逻辑运算 not

  • L[] ... 创建空列表 L

  • len(L) ... 列表 L 的长度

  • L[i] ... 列表 L 的第 i+1 个元素.注:L[0]是列表的第一个元素

  • L.append(x) ... 将 x 扩展到列表 L 的结尾

  • x = L.pop() ... 删除列表 L 的最后一个元素并赋值给变量 x

  • del L[i] ... 删除列表 L 的第i个元素

  • for x in L ... 以Python的方式分析列表.

  • 数值和布尔(逻辑)变量

  • 复杂逻辑表达

  • 返回值的函数

  • 列表

  • 递归

17. 进一步学习

祝贺你,你已经完成了Karel机器人!希望你喜欢这个课程.如果你希望改进此应用或教材,我们愿意倾听. 如果你有一个新的游戏或Karel的练习,请告知我们:-)

现在你已经为学习下一个编程语言做好了准备!我们建议你学习Python,它是被广泛使用的动态编程语言, 如商业,科学,工程和其他领域.我们同样提供精致的Python课程.

无论如何,我们的团队希望你好运,希望成为你最爱的书签!

你的作者.