问题标签 [karel]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
1863 浏览

java - 如何将迭代方法转换为递归方法(Java)

我正在自己学习 Java 课程,但我没有任何问题的答案。第一单元的这个问题,基于 Karel++,难倒了我。一堆“蜂鸣器”上有一个机器人对象,它需要确定这堆有多少个并返回该值。我需要将以下迭代方法转换为递归方法。

谁能给我一个提示?

0 投票
2 回答
849 浏览

javascript - 减慢 javascript eval 的执行速度

我创建了一个小机器人,例如基于 javascript的 Karel 机器人(维基百科)。

Karel4Web

机器人可以通过一些简单的命令来控制,例如“前进”、“右转”等。

用户可以编写一个javascript程序来控制机器人,然后通过javascripts“eval()”函数使机器人移动。

问题是我希望机器人慢慢移动,这样你就可以看到他在做什么,这样你就可以在编辑器中突出显示当前的代码行。

当前方法:解析

目前我已经解决了这个问题(在离线版本中),方法是解析文本区域中的每一行,然后构建一个动作堆栈,然后使用 window.setTimeout 一个接一个地执行。但这当然是有限的,因为我必须为每个小的 javascript 语言结构编写解析代码,这需要大量工作并且容易出错。

对此的一些附加信息:

解析版本:http ://abi-physik.de/_niki2/niki.php

解析版js代码:http ://abi-physik.de/_niki2/js/niki.js

重要的函数在脚本的底部:run()、execute()

我目前正在逐行解析用户脚本并将操作添加到堆栈中。如果解析器遇到“if”,它将开始一个新堆栈并将所有操作添加到该堆栈。如果解析器随后遇到“}”,它将关闭“if”堆栈并继续向基本堆栈添加操作。

有什么想法可以改进吗?

0 投票
2 回答
1984 浏览

java - Karel Robot:无法找到或加载主类

我运行这个命令编译,它运行成功:

然后我用它来尝试运行我的课程:

我明白了:

这是整个类文件:

我从这里得到了卡雷尔模拟器:

0 投票
7 回答
4367 浏览

java - 标记“else”的语法错误——到底怎么回事?

我正在以经典的方式学习 Java——与 Karel 一起玩。

但我似乎遇到了一个即使在谷歌的帮助下也无法解决的简单问题。

我在 Eclipse 中收到一个错误,说令牌“else”上有语法错误,我应该删除它。

怎么来的?else 语句上方的代码块中的语法是相同的。

这是我的代码:

0 投票
10 回答
11234 浏览

java - 斯坦福大学的机器人卡雷尔抛出 NullPointerException

我已经开始学习斯坦福网站上的编程方法(CS106A)课程。但我无法在其中启动斯坦福卡雷尔。

我正在使用 eclipse indigo classic 3.7.1 和 Windows 7 64 位操作系统..

我写了以下代码:

它给出了错误

我遵循了此处给出的一些说明,但随后得到了一个空白屏幕作为输出。

斯坦福的 assignment1 可以在这里找到,斯坦福的机器人 karel 可以在这里找到。

0 投票
2 回答
6003 浏览

eclipse - 无法启动斯坦福的 CS106A Eclipse 版本 - Mac 10.6 上的“无法访问 jarfile startup.jar”

我一直在尝试通过 iTunesU 上斯坦福 CS106A 课程,但我一直遇到 Eclipse 问题。我尝试使用 Karel 获得斯坦福的自定义版本,但这一直给出“无法访问 jarfile startup.jar”错误。我什至尝试获取当前版本并尝试http://www.freesoftwaremagazine.com/articles/getting_stanfords_karel_robot_run_debians_eclipse上的说明,但是当我尝试运行编程作业时会引发空指针异常。

我不确定要提供什么信息,但我正在运行 Mac OS 10.6.8(我认为是 64 位?),我的 Java 版本是 1.6.0_22。

您能给我的任何帮助将不胜感激。我脑子里有算法,我需要把它们拿出来!:)

0 投票
2 回答
2484 浏览

java - 并发编程。使用机器人卡雷尔

我在上计算机科学课,我们已经开始使用 Karel the Robot 作为 Java OOP 的介绍。我想同时运行两个 Karel the Robots,执行两个不同的任务。我曾尝试在互联网上查找解决方案,并且我已经成功地制作了一个工作线程,但是,我无法同时运行两个 Karel the Robots。对此并发编程问题的任何帮助将不胜感激。这是我一直在使用的代码:

我还使用了 Karel J Robot book 的示例,其中线程设置代码如下:

请以任何方式提供帮助,我正在尝试制作一个多线程并发程序。我是新手,感谢您的时间和关注。

0 投票
1 回答
1455 浏览

java - 如何在 eclipse 中使用 karel.jar 而不安装斯坦福版本的 eclipse 和 JRE7?

我正在尝试按照斯坦福大学 CS106A 在线课程中的建议与机器人 Karel 一起玩。我不想按照文档的建议安装旧版本的 Java 和 eclipse。我找到了解释如何做到这一点的教程,在独立的 eclipse 安装上,甚至是 stackoverflow 中的一个线程,但它们都基于 JRE6。

有没有办法让它与 JFE7 一起工作?

提前致谢。

其他问题,我可能会在接下来的几周内发现这些问题很明显:

  • 为什么这个库不能与 JRE7 一起使用?(我希望较新的 lib 不能与较旧的 JRE 一起使用,但事实并非如此)
  • 如何在 Eclipse 中强制使用较旧的 JRE 进行编译?不安装JRE6可以吗?
  • 我如何知道 .jar 文件的兼容性?

再次感谢。

0 投票
1 回答
141 浏览

stanford-nlp - 卡雷尔系列版本

我最近开始通过 iTunes U 学习编程,在斯坦福的 CS106A 通过视频。我现在正在和 Karel 一起写作。

我按照关于将所有内容下载到信中的说明进行操作,但是当我开始编写一组方法时,系统告诉我它找不到我正在使用的版本,并且在我查看 Eclipse 时,在 Assignment1 包中, Assignment1 的每个子部分都有一个警告三角形。

collectnewspaperKarel 带有黄色下划线。

每个程序都用黄色下划线。当我尝试通过生成软件版本来进行更改时,它仍然无法运行它。我该怎么办,因为我什至无法尝试我创建的任何组合?卡雷尔在所有给定的世界中仍然静止不动。

0 投票
1 回答
902 浏览

eclipse - Eclipse 不会开始运行 Stanford karel

我是一名编程初学者,我决定参加斯坦福在线编程方法入门课程 (cs106a)。我按照说明将 Eclipse 文件解压缩到我的计算机上。当我试图打开它时,它说“发生错误,请参阅日志文件。”我不知道如何解决这个问题,我真的很想学习这个程序。我搜索了其他类似的问题,只找到了一个,建议的解决方案是设置环境变量。不幸的是,我不知道该怎么做。

如何让 Eclipse 运行?