> For the complete documentation index, see [llms.txt](https://alhorm-projects.gitbook.io/sprut/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://alhorm-projects.gitbook.io/sprut/basics/loops.md).

# Циклы

### Цикл for

Вот простой пример цикла for:

```javascript
words = ["word1", "word2", "word3"]

for (i = 0, i < length(words), i++) {
    println words[i]
}
```

Сокращённая запись:

```javascript
words = ["word1", "word2", "word3"]

for (i = 0, i < length(words), i++) println words[i]
```

### Цикл for-in

С версии 1.1.0 Sprut поддерживает цикл for-in. Вот его пример:

```javascript
my_dict = {"number": 13.5, "word": "something"}

for (key in my_dict) {
    printf(key, ": ", my_dict[key], "\n")
}
```

### Цикл while

Вот простой пример цикла while:

```javascript
words = ["word1", "word2", "word3"]

i = 0
while (i < length(words)) {
    println words[i]
    i++
}
```

### Цикл do-while

Вот простой пример цикла do-while:

```javascript
words = ["word1", "word2", "word3"]

i = 0
do {
    println words[i]
    i++
} while (i < length(words))
```
