TypeScript - Цикл while: Пособие для начинающих
Привет, начинающие программисты! Сегодня мы окунемся в один из fundamental concepts в программировании: цикл while. Как ваш доброжелательныйneighborhood computer teacher, я рад помочь вам в этом путешествии. Не волнуйтесь, если вы новички в программировании - мы начнем с азов и постепенно поднимемся. Так что возьмите杯 кофе (или ваш любимый напиток) и давайте начнем!
Что такое цикл while?
Прежде чем мы углубимся в детали, давайте поймем, что такое цикл while. Представьте, что вы играете в игру, где вам нужно продолжать кидать кости, пока не выпадет шестерка. Вы не знали бы заранее, сколько раз вам нужно будет кидать, правда? Именно здесь и приходит на помощь цикл while в программировании!
Цикл while позволяет вам повторять блок кода до тех пор, пока определенное условие является истинным. Это как сказать вашему компьютеру: "Эй, продолжай это делать, пока я нескажу тебе остановиться!"
Синтаксис
Теперь давайте посмотрим на синтаксис цикла while в TypeScript:
while (condition) {
// код для выполнения
}
Это довольно просто, не так ли? Вот что означает каждая часть:
-
while
: Этот ключевой слова говорит TypeScript, что мы начинаем цикл while. -
condition
: Это логическое выражение, которое проверяется перед каждым итерацией цикла. Если оно истинно, цикл продолжается; если ложно, цикл останавливается. -
{ }
: Эти фигурные скобки содержат код, который будет повторно выполняться до тех пор, пока условие является истинным.
Диаграмма потока
Чтобы лучше понять, как работает цикл while, давайте посмотрим на диаграмму потока:
┌─────────────┐
│ Start │
└─────┬───────┘
│
▼
┌─────────────────┐
│ Check condition │◄─────┐
└─────────┬───────┘ │
│ │
▼ │
┌────────┐ │
┌────│ True │ │
│ └────┬───┘ │
│ │ │
│ ▼ │
│ ┌─────────────┐ │
│ │ Execute code│ │
│ └─────────────┘ │
│ │ │
│ └──────────────┘
│
│ ┌────────┐
└────► False │
└────┬───┘
│
▼
┌─────────────┐
│ End │
└─────────────┘
Эта диаграмма показывает, как цикл while постоянно проверяет условие и выполняет блок кода до тех пор, пока условие становится ложным.
Пример: Цикл while
Давайте углубимся в практический пример. Мы создадим программу, которая будет обратный отсчет от 5 до 1:
let countdown: number = 5;
while (countdown > 0) {
console.log(countdown);
countdown--;
}
console.log("Blast off!");
Давайте разберем это:
- Мы начинаем с объявления переменной
countdown
и устанавливаем ее в 5. - Цикл while проверяет, больше ли
countdown
0. - Если да, он выводит текущее значение
countdown
. - Затем он уменьшает
countdown
на 1, используя оператор--
. - Этот процесс повторяется до тех пор, пока
countdown
больше 0. - Наконец, он выводит "Blast off!" после того, как цикл заканчивается.
Когда вы запустите этот код, вы увидите:
5
4
3
2
1
Blast off!
Не правда ли это классно? Это как будто мы создали свой собственный маленький обратный отсчет для старта ракеты!
Цикл while с оператором break
Иногда вам может понадобиться покинуть цикл раньш, чем он завершится, на основе определенного условия. Вот где на помощь приходит оператор break
. Это как иметь аварийный выход в вашем цикле!
Давайте модифицируем наш пример обратного отсчета:
let countdown: number = 10;
while (countdown > 0) {
console.log(countdown);
countdown--;
if (countdown === 5) {
console.log("We're halfway there!");
break;
}
}
console.log("Countdown interrupted!");
В этом примере мы начинаем обратный отсчет с 10, но прерываем его, когда достигаем 5. Результат будет следующим:
10
9
8
7
6
5
We're halfway there!
Countdown interrupted!
Оператор break
позволяет нам покинуть цикл досрочно, когда удовлетворяется определенное условие.
Сравнение циклов while и for
Теперь вы можете задаться вопросом: "Why use a while loop when we have for loops?" Отличный вопрос! Давайте сравним их:
Цикл while | Цикл for |
---|---|
Используется, когда количество итераций неизвестно | Используется, когда количество итераций известно |
Условие проверяется в начале каждой итерации | Инициализация, условие и обновление все в одной строке |
Можно легко создать бесконечные циклы | Обычно используется для конечных циклов |
Более гибрая структура | Более компактная структура |
Вот быстрый пример для иллюстрации:
// Цикл while
let i: number = 0;
while (i < 5) {
console.log(i);
i++;
}
// Эквивалентный цикл for
for (let j: number = 0; j < 5; j++) {
console.log(j);
}
Оба этих цикла будут выводить числа от 0 до 4. Цикл while более гибок, так как вы можете изменять переменную цикла (i
) более сложными способами внутри тела цикла. Цикл for, с другой стороны, более краток, когда вы знаете точное количество итераций.
Заключение
И вот мы arrived, друзья! Мы прошли через страну циклов while в TypeScript. От понимания базового синтаксиса до исследования операторов break и сравнения с циклами for, вы теперь обладаете знаниями, чтобы эффективно использовать циклы while в вашем коде.
помните, что программирование как езда на велосипеде - сначала это может казаться неуверенным, но с практикой вы быстро научитесь! Так что не бойтесь экспериментировать с циклами while в ваших собственных проектах. Попробуйте создать игру "угадайка" или программу, которая будет рассчитывать сложные проценты до определенной суммы.
Счастливого программирования, и пусть ваши циклы всегда заканчиваются!
Credits: Image by storyset