karel语言中文手册
时间: 2023-09-10 11:14:17 浏览: 124
Karel 是一种编程语言,用于教授计算机科学的基础知识和算法设计。它主要用于解决简单的问题,例如控制机器人的运动,这些问题需要理解循环、条件和函数等基本概念。以下是 Karel 语言的中文手册。
## Karel 语言基础
### 机器人
Karel 是一个机器人,它可以在一个平面世界中移动。这个世界由方格组成,每个方格要么是墙壁,要么是空地。Karel 能够执行一系列命令,包括移动、转向、放置和获取方块等。
### 方向
Karel 可以面向四个方向:东、南、西和北。它可以向前移动或向左转或向右转。例如,命令 `move` 使 Karel 向前移动一格,命令 `turn_left` 使 Karel 向左转。
### 坐标
Karel 可以在平面世界中移动。每个方格有一个坐标,用 `(x, y)` 表示,其中 `x` 是横坐标,`y` 是纵坐标。例如,左下角的方格坐标为 `(1, 1)`。
### 方块
Karel 可以放置或获取方块。它可以检查当前位置是否有方块,如果有,就获取它;如果没有,就放置一个。
### 例程
Karel 可以执行一系列命令,这些命令称为例程。例如,以下命令使 Karel 向前移动两格,然后向右转:
```
move
move
turn_right
```
### 循环
在 Karel 中,可以使用循环来重复执行一组命令。例如,以下命令使 Karel 向前移动四格:
```
repeat 4 do
move
end
```
### 条件
在 Karel 中,可以使用条件来控制执行流程。例如,以下命令使 Karel 只有在当前位置有方块时才向前移动一格:
```
if no_beepers_present then
move
end
```
## Karel 语言命令
以下是 Karel 语言中可用的命令:
### 移动
- `move`:向前移动一格。
- `turn_left`:向左转。
- `turn_right`:向右转。
- `pick_beeper`:获取当前位置的方块。
- `put_beeper`:放置一个方块到当前位置。
### 例程
- `define name do ... end`:定义一个例程。
- `call name`:调用一个例程。
### 循环
- `repeat times do ... end`:重复执行一组命令。
- `while condition do ... end`:当满足条件时重复执行一组命令。
- `until condition do ... end`:当不满足条件时重复执行一组命令。
### 条件
- `if condition then ... end`:当满足条件时执行一组命令。
- `if condition then ... else ... end`:当满足条件时执行一组命令,否则执行另一组命令。
- `unless condition then ... end`:当不满足条件时执行一组命令。
### 传感器
- `front_is_clear`:当前位置的前方是否为空地。
- `left_is_clear`:当前位置的左侧是否为空地。
- `right_is_clear`:当前位置的右侧是否为空地。
- `beepers_present`:当前位置是否有方块。
- `no_beepers_present`:当前位置是否没有方块。
- `facing_north`:当前方向是否朝北。
- `not_facing_north`:当前方向是否不朝北。
- `facing_south`:当前方向是否朝南。
- `not_facing_south`:当前方向是否不朝南。
- `facing_east`:当前方向是否朝东。
- `not_facing_east`:当前方向是否不朝东。
- `facing_west`:当前方向是否朝西。
- `not_facing_west`:当前方向是否不朝西。
## 示例程序
以下是一个简单的 Karel 程序,它使 Karel 移动到世界的右下角:
```
repeat until not front_is_clear do
move
end
repeat until not left_is_clear do
turn_left
end
```
该程序使用两个循环:第一个循环使 Karel 向前移动,直到到达世界的右边界;第二个循环使 Karel 向左转,直到面对世界的下边界。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)