河南省建设教育协会网站首页,中建一局集团有限公司官网,辽宁省营商环境建设局网站,阿里企业邮箱免费版怎么申请JSKarel教学编程机器人使用介绍
为了避免被编程语言固有的复杂性所困扰#xff0c;有一个被称为卡雷尔#xff08;Karel#xff09;机器人的微型世界#xff08;microworld#xff09;的简化环境#xff0c;可以让编程初学者从中学习理解编程的基本概念#xff0c;而不…JSKarel教学编程机器人使用介绍
为了避免被编程语言固有的复杂性所困扰有一个被称为卡雷尔Karel机器人的微型世界microworld的简化环境可以让编程初学者从中学习理解编程的基本概念而不必掌握大量无关的细节让编程初学者更容易理解编程的要点和思维方式。
先看一个效果 一、Karel简介
Karel 是一个非常简单的教学编程机器人是斯坦福大学的研究生理查德·帕蒂Richard Pattis研制的编程语言教学机器人可以通过一组指令指挥 Karel 在它的世界里执行某些任务。Karel 的编程语言的规则与其他更复杂的语言类似。不同之处在于 Karel 的编程语言非常小复杂度较低你可以通过学习编程解决问题的本质。
本文介绍在Windows PC上如何下载和运行JavaScript版本的卡雷尔JSKarel。
JSKarel的安装要点
JSKarel依赖Java因此需要在计算机上安装JDK。
进入cs106j网站http://cs106j.stanford.edu 点击Software软件链接。 您将看到JDK的两个链接(针对32位版本或64位版本)。您应该单击适合您的Windows版本的版本。
因为我的PC安装的是64位的Windows10操作系统因此选用64-bit版本JDK执行典型安装并按照给出的其余说明完成安装。
再下载JSKarel for Windows。这个不需要安装双击打开。
JSKarel解释器窗口
双击JSKarelJSKarel.jar就启动了JSKarel解释器interpreter窗口分为四个部分参见下图 标题栏下是菜单栏。
左上角你可以看到卡雷尔的世界查看器它可以让你看到Karel卡雷尔的进度。
左下侧Karel ConsoleKarel控制台窗口允许您输入函数调用并观察它们如何影响Karel卡雷尔的世界。
右侧是编辑器窗口在这里您可以输入新程序并编辑现有程序。
底部包含控制条其中包含一组图标——可称为控制按钮允许您控制解释器的操作。
菜单栏中的一些命令项和控制条上的一些控制按钮功能重复。
二、JSKarel解释器的使用
Karel 的世界
Karel 的世界由从西向东的大街street和从南向北的大道avenue 所定义。大街和大道的交叉点叫作街角corner 。Karel 只能被放置在一个街角必须面对四个标准的罗盘方向之一北、东、南、西。在下面的示例世界中Karel 在第1 大街和第1 大道的街角处并且面向东方。 例子中可以看到Karel 的世界的其他几个组成部分。Karel 前面那个灰色的 菱形物体是一个蜂鸣器beeper 。当Karel 和蜂鸣器在同一个街角时才能听到这些声音。例如图中此时Karel 并未意识到蜂鸣器的存在只有当Karel 移动到下一个街角时才会发现它。图中的实线是墙壁wall 。Karel 的世界总是由边缘的墙壁包裹着并且也可能包含内墙。 创建和编辑世界
创建和编辑世界
你需要知道的另一件事——特别是如果你计划参加卡雷尔竞赛的话——是如何创建新的世界和编辑现有的世界。
使用“编辑世界”按钮会弹出编辑调色板palette其中包含一堆图标允许您编辑当前世界。
•调色板右侧的大方块包含一对数字允许您指定世界的大小。如果你点击这个图标你可以输入一个新的尺寸它由两个用x隔开的整数组成。第一个整数是道列数的数量;第二个整数是街行数的数目。改变世界的大小会删除所有方块和内墙所以你需要在编辑之前设置世界的大小。最大的世界大小为50x50。
•按钮允许您创建和删除墙壁。要创建墙壁请选择绘制墙壁工具。如果你去地图上点击街角之间的空间墙壁将在这些空间创建。如果你以后需要拆除这些墙你可以点击擦除墙工具然后回到地图以消除不需要的墙。
•五个蜂鸣器形状的工具允许您更改正方形上的蜂鸣器数量。空的蜂鸣器工具会在您选择的任何街角放置一个蜂鸣器。标有和–符号的工具会添加一个蜂鸣器或从街角中删除一个。标有0和∞的工具将拐角处的蜂鸣器计数分别设置为0或无穷大。如果您选择其中一个工具然后单击工具区域中的蜂鸣器袋图标您可以调整Karel袋子中的蜂鸣器数量。
•四个卡Karel卡雷尔形状的工具允许您改变卡雷尔面对的方向。如果您需要将Karel移动到新的起始位置请单击世界视图中的Karel并将其拖动到某个新位置。如果你需要把蜂鸣器放在Karel所在的街角你必须先把Karel移到另一个街角调整蜂鸣器的数量然后把Karel移回来。
•各种颜色的方块可以让你画出卡雷尔世界的各个街角。
•当你完成后你可以选择Save World工具将新世界保存到文件中。用 “不要保存世界”工具将更新后的世界返回给卡雷尔解释器但不会将其保存在文件中。
Karel 的内置函数
Karel 运行程序时执行的操作称为函数function。Karel 的内置函数有4个 Karel 的活动有特定的限制。如果 Karel 试图做一些非法的事情如穿过墙壁或拾起一个不存在的蜂鸣器则会出现错误状态error condition。每当出现错误时Karel 都会显示一条消息说明哪里出错了并停止执行程序。 使用库函数
对于最常见的操作以一种方便其他程序重用的方式存储它们是有意义的。在计算机科学中有用的函数和其他程序组件的集合称为程序库或库library。例如turnRight函数——向右转和同样有用的 turnAround函数——旋转 180 度都包含在一个名为 turns 的特殊 Karel 程序库你可以在程序开始处简单地引入一行代码
use turns; 学习 Karel 编程就是要弄清楚如何使用 Karel 有限的操作集来解决特定问题。
Karel 编程语言具有定义新函数的能力——用户自定义函数。当你有一个用于执行某些有用的任务比如向右转的操作序列时可以给这个序列起个名称。用一个新名称封装指令序列的操作称为定义函数defining a function。定义函数的格式如下
function name() { 构成函数体的一些语句
} Karel 编程语言的控制语句control statement
有以下两类
1. 条件语句conditional statement。条件语句指定程序中的某些语句仅在特定条件成立时才执行。在 Karel 中使用 if 语句指定条件执行。
if (条件测试) { 当条件为真时执行的一些一句
}
或者
if (条件测试) { 当条件为真时执行的一些一句
} else { 当条件为假时执行的一些一句
} 可以被 Karel 测试的条件如下 2. 循环语句或迭代语句iterative statement。循环语句指定程序中的某些语句应该重复执行形成程序员所谓的循环loop。Karel 支持两种循环语句一种是 repeat语句它允许你按固定次数重复执行一组指令另一种是 while 语句它允许你只要某些条件保持不变可以重复执行一组指令。
repeat 语句如下所示
repeat ( 重复的次数 ) { 需要重复执行的语句
} while 语句的通用形式如下所示
while ( 条件测试 ) { 需要重复执行的语句
} 待续