StudyCode
basics

Циклы

for, while и итерация по коллекциям

Войди, чтобы отслеживать прогресс
Показать языки:
JSJavaScript
// Цикл for
for (let i = 0; i < 5; i++) {
  console.log(i);
}

// while
let i = 0;
while (i < 5) {
  console.log(i++);
}

// for...of (по элементам)
const arr = [1, 2, 3];
for (const item of arr) {
  console.log(item);
}
PYPython
# range
for i in range(5):
    print(i)

# while
i = 0
while i < 5:
    print(i)
    i += 1

# по элементам
arr = [1, 2, 3]
for item in arr:
    print(item)
C#C#
// for
for (int i = 0; i < 5; i++)
{
    Console.WriteLine(i);
}

// while
int i = 0;
while (i < 5)
{
    Console.WriteLine(i++);
}

// foreach
int[] arr = {1, 2, 3};
foreach (int item in arr)
{
    Console.WriteLine(item);
}
C++C++
// for
for (int i = 0; i < 5; i++) {
    cout << i << endl;
}

// while
int i = 0;
while (i < 5) {
    cout << i++ << endl;
}

// range-based for
vector<int> arr = {1, 2, 3};
for (int item : arr) {
    cout << item << endl;
}
Пояснение

Python не имеет классического for (i=0; i<n; i++) — вместо него range(n). Итерация напрямую по элементам коллекции без индексов.

C# использует foreach вместо for...of (JavaScript).

C++ получил range-based for только в C++11 — до этого нужно было писать итераторы вручную.

Во всех языках есть break (выход из цикла) и continue (следующая итерация).