Processing:Справочник языка Processing/for: различия между версиями
Myagkij (обсуждение | вклад) |
Нет описания правки |
||
Строка 2: | Строка 2: | ||
{{Myagkij-редактор}} | {{Myagkij-редактор}} | ||
= for <ref>[https://processing.org/reference/for.html processing.org - for]</ref>= | = for <ref>[https://processing.org/reference/for.html processing.org - for]</ref>= | ||
Строка 8: | Строка 8: | ||
==Обозначение== | ==Обозначение== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
for | for | ||
</syntaxhighlight> | </syntaxhighlight> | ||
Строка 31: | Строка 31: | ||
==Синтаксис== | ==Синтаксис== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
for (init; test; update) { | for (init; test; update) { | ||
statements | statements | ||
Строка 43: | Строка 43: | ||
==Параметры== | ==Параметры== | ||
<syntaxhighlight lang="c | <syntaxhighlight lang="c"> | ||
init - оператор, выполняемый один раз в начале цикла; | init - оператор, выполняемый один раз в начале цикла; | ||
test - если переменная test вычисляется как true, выполняется набор операторов в теле цикла; | test - если переменная test вычисляется как true, выполняется набор операторов в теле цикла; | ||
Строка 60: | Строка 60: | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
for (int i = 0; i < 40; i = i+1) { | for (int i = 0; i < 40; i = i+1) { | ||
line(30, i, 80, i); | line(30, i, 80, i); | ||
Строка 71: | Строка 71: | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
for (int i = 0; i < 80; i = i+5) { | for (int i = 0; i < 80; i = i+5) { | ||
line(30, i, 80, i); | line(30, i, 80, i); | ||
Строка 82: | Строка 82: | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
for (int i = 40; i < 80; i = i+5) { | for (int i = 40; i < 80; i = i+5) { | ||
line(30, i, 80, i); | line(30, i, 80, i); | ||
Строка 93: | Строка 93: | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
// Вложенные циклы for() могут использоваться | // Вложенные циклы for() могут использоваться | ||
// для создания двумерных структур | // для создания двумерных структур | ||
Строка 105: | Строка 105: | ||
===№5=== | ===№5=== | ||
<syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS | <syntaxhighlight lang="c" line="GESHI_NORMAL_LINE_NUMBERS|GESHI_FANCY_LINE_NUMBERS"> | ||
// Этот пример ничего не рисует в окне программы, | // Этот пример ничего не рисует в окне программы, | ||
// но выводит значения на консоль. | // но выводит значения на консоль. | ||
Строка 149: | Строка 149: | ||
|Высота логотипа издателя для schemaNewsArticle=45 | |Высота логотипа издателя для schemaNewsArticle=45 | ||
}} | }} | ||
{{Навигационная таблица/ | {{Навигационная таблица/Портал/Processing}} |
Версия от 12:09, 20 мая 2023
Содержание | Среда разработки Processing | Справочник языка Processing | Библиотеки | Примеры | Режимы программирования |
for [1]
Обозначение
for
Описание
Управляет последовательностью повторений. Базовая структура цикла for состоит из трех частей: init, test и update. Каждая часть должна быть разделена точкой с запятой (;). Цикл продолжается до тех пор, пока выражение test не примет значение false.
При выполнении цикла for, происходит следующая последовательность событий:
- Выполняется выражение init.
- Вычисляется выражение test, результатом которого может быть true или false.
- Если test равен true переходим к шагу 4. Если false, переходим к шагу 6.
- Выполняются операторы внутри тела цикла.
- Выполняем выражение update и переходим к шагу 2.
- Выходим из цикла.
В первом примере цикл for выполняется 40 раз. В выражении init объявляется переменная i, которой присваивается значение 0. i меньше 40, поэтому выражение test вычисляется как true. В конце каждого цикла значение переменной i увеличивается на единицу. На 41-м шаге выполнения цикла, выражение test вычисляется как false, потому что значение переменной будет i равно 40, поэтому i < 40 больше не верен. Таким образом, мы выходим из цикла.
Второй тип структуры цикла for упрощает итерацию по каждому элементу массива. Последний пример показывает, как он работает. В круглых скобках сначала объявляется переменная, тип данных которой совпадает с типом данных массива. Этой переменной поочередно будут присваиваться значения элементов массива. Наконец, после двоеточия указывается имя массива, по элементам которого, пройдется цикл for.
Синтаксис
for (init; test; update) {
statements
}
for (datatype element : array) {
statements
}
Параметры
init - оператор, выполняемый один раз в начале цикла;
test - если переменная test вычисляется как true, выполняется набор операторов в теле цикла;
update - выполняется в конце каждой итерации;
statement - набор операторов, выполняемых в цикле;
datatype - тип данных элементов в массиве;
element - временное имя для каждого элемента массива;
array - имя массива для итерации;
Пример
№1
for (int i = 0; i < 40; i = i+1) {
line(30, i, 80, i);
}
№2
for (int i = 0; i < 80; i = i+5) {
line(30, i, 80, i);
}
№3
for (int i = 40; i < 80; i = i+5) {
line(30, i, 80, i);
}
№4
// Вложенные циклы for() могут использоваться
// для создания двумерных структур
for (int i = 30; i < 80; i = i+5) {
for (int j = 0; j < 80; j = j+5) {
point(i, j);
}
}
№5
// Этот пример ничего не рисует в окне программы,
// но выводит значения на консоль.
int[] nums = { 5, 4, 3, 2, 1 };
for (int i : nums) {
println(i);
}
См.также
Внешние ссылки
Примеры на Processing | |
---|---|
Основы |
|
Продвинутые графические эффекты |
|
Примеры из сторонних библиотек |