Учебники

5) C ++ сделать … пока цикл

Что такое цикл do-while?

Цикл do-while повторяет раздел программы на C ++ несколько раз. В цикле do-while тестовое выражение добавляется в конец цикла. Тело цикла находится перед тестовым выражением. Вот почему тело цикла должно выполняться один раз, даже если тестовое выражение оценивается как ложное в первом тесте.

В этом уроке C ++ вы узнаете:

Когда использовать цикл do-while?

Цикл do-while следует использовать, когда число итераций не фиксировано, и цикл должен выполняться как минимум один раз. Компилятор C ++ сначала выполняет тело цикла, прежде чем оценивать условие. Это означает, что цикл должен возвращать результат. Это имеет место даже тогда, когда тестовое условие оценивается как ложное при первой оценке. Поскольку тело цикла уже выполнено, оно должно вернуть результат.

Синтаксис

Основной синтаксис цикла C ++ do while выглядит следующим образом:

do{    
//code 
}while(condition);  

Условие является тестовым выражением. Это должно быть верно для выполнения цикла. {И} отмечают тело цикла do while. Это предшествует условию. Следовательно, оно выполняется до условия.

Как работает цикл do-while?

C ++ Do пока блок-схема

Блок-схема Объяснение:

  1. Начало цикла do while.
  2. Тело сделать пока цикл.
  3. Тестовое выражение или условие для оценки.
  4. Если тестовое выражение имеет значение true, компилятор C ++ выполняет тело цикла do while.
  5. Если тестовое выражение имеет значение false, компилятор C ++ выполняет операторы после тела цикла.
  6. Заявления, которые идут после тела цикла.

Пример 1

#include <iostream>
using namespace std;
int main() {
	// Local variable 
	int x = 1;
	do {
		cout << "X is: " << x << endl;
		x = x + 1;
	} while (x < 5);
	return 0;
}

Вывод:

Вот скриншот кода:

Объяснение кода:

  1. Включение заголовочного файла iostream в наш код. Это позволит нам читать и писать в консоль.
  2. Включая пространство имен std, чтобы использовать его классы и функции без его вызова.
  3. Вызов функции main (), внутри которой должна быть добавлена ​​логика программы. {Отмечает начало тела функции main ().
  4. Комментарий. Компилятор C ++ пропустит это.
  5. Объявление целочисленной переменной x и присвоение ей значения 1.
  6. Создание цикла do-while. {Отмечает начало тела цикла.
  7. Чтобы напечатать значение переменной x вместе с другим текстом на консоли. Endl — это ключевое слово C ++, означающее конец строки.
  8. Увеличение значения х на 1 после каждой итерации.
  9. Конец тела цикла. Тестовое выражение было добавлено в конец тела цикла. Он проверяет, является ли значение x меньше 5.
  10. Функция main () должна возвращать значение, если программа работает нормально.
  11. Конец тела функции main ().

Пример 2

#include <iostream>
using namespace std;
int main()
{
	int num, sum = 0;
	do {

		cout << "Enter a number: ";

		cin >> num;

		sum += num;

	} while (num != 0);
	cout << "Sum is " << sum;

	return 0;
}

Вывод:

Вот скриншот кода:

Объяснение кода:

  1. Включение заголовочного файла iostream в наш код. Это позволит нам читать и писать в консоль.
  2. Включая пространство имен std, чтобы использовать его классы и функции без его вызова.
  3. Вызов функции main (), внутри которой должна быть добавлена ​​логика программы.
  4. {Отмечает начало тела функции main ().
  5. Объявление двух целочисленных переменных, num и sum. Переменная sum была инициализирована в 0.
  6. Создание цикла do-while. {Отмечает начало тела цикла.
  7. Распечатка текста «Введите число:» на консоли.
  8. Чтение пользовательского ввода из консоли и сохранение значения в переменной num. Cin (консольный ввод) — это функция, которая читает пользовательский ввод.
  9. Добавление значения num к значению sum и сохранение результата в переменную sum.
  10. } Отмечает конец тела цикла. Тестовое выражение было добавлено в конец тела цикла. Он проверяет, является ли введенное пользователем значение, чтобы убедиться, что оно не равно 0. Символ! = Не равен оператору. Если пользователь вводит 0, цикл должен завершиться.
  11. Печать значения переменной суммы на консоли вместе с другим текстом.
  12. Функция main () должна возвращать значение, если программа работает нормально.
  13. Конец тела функции main ().

Вложенный цикл

В C ++ мы можем создать один цикл do-while внутри другого цикла do-whole. Это приводит к вложенному циклу do-while.

Синтаксис

do{
statement(s)
do{
statement(s)
}while(condition);
statement(s)
}while(condition);

Первый оператор do обозначает часть do внешнего цикла do-while.

Второй оператор do обозначает часть do внутреннего цикла do-while.

Первый оператор while обозначает условие проверки для внутреннего цикла.

Второй оператор while обозначает условие проверки для внешнего цикла.

Как Вложенные Делают Пока Работает Цикл

Вложенный цикл do while работает следующим образом:

Шаг 1: инициализация выполняется сначала и один раз.

Шаг 2: операторы (do) выполняются один раз.

Шаг 3: Тестовое выражение — это оценка с помощью управления потоком.

Шаг 4: Если true, внутренний цикл выполняется.

Шаг 5: Обновляются операторы.

Шаг 6: Процесс выполняется несколько раз, пока тестовое выражение не станет ложным.

Шаг 7: Когда тестовое выражение становится ложным, внутренний цикл завершается, и управление переходит к внешнему циклу.

Шаг 8: Состояние теста оценивается снова.

Шаг 9: Если true, оператор (ы) выполняется для возврата false.

Шаг 10: Выполнение цикла останавливается и управление переходит к операторам после цикла.

пример

#include <iostream>  
using namespace std;
int main() {
	int a = 1;
	do {
		int b = 1;
		do {
			cout << a << "\n";
			b++;
		} while (b <= 3);
		a++;
	} while (a <= 3);
}

Вывод:

Вот скриншот кода:

Объяснение кода:

  1. Включение заголовочного файла iostream в наш код. Это позволит нам читать и писать в консоль.
  2. Включая пространство имен std, чтобы использовать его классы и функции без его вызова.
  3. Вызов функции main (), внутри которой должна быть добавлена ​​логика программы. {Отмечает начало тела функции main ().
  4. Объявление целочисленной переменной а и присвоение ей значения 1.
  5. Создание внешнего цикла do-while. {Отмечает начало тела внешнего цикла.
  6. Объявление целочисленной переменной b и присвоение ей значения 1.
  7. Создание внутреннего цикла do-while. {Отмечает начало тела внутреннего цикла.
  8. Чтобы напечатать значение переменной a на консоли. «\ N» — это символ новой строки, который перемещает курсор мыши на следующую строку.
  9. Увеличение значения b на 1 после каждой итерации.
  10. Конец тела внутреннего цикла. Тестовое выражение было добавлено в конец тела цикла. Он проверяет, является ли значение b меньше или равно 5.
  11. Увеличение значения на 1 после каждой итерации.
  12. Конец тела внешней петли. Тестовое выражение было добавлено в конец тела цикла. Он проверяет, меньше ли значение а или равно 3.
  13. Конец тела функции main ().

Резюме

  • Цикл do-while запускает часть кода несколько раз.
  • Его следует использовать, когда количество итераций не фиксировано.
  • В цикле do-while тело цикла предшествует тестовому выражению.
  • Тело цикла выполняется как минимум один раз, даже если тестовое выражение становится ложным.
  • Этот цикл следует использовать, когда количество итераций не фиксировано.
  • Цикл Do while может выполняться любое количество раз при условии, что условие истинно.
  • Условие оценивается один раз после каждой итерации.
  • Результат оценки состояния определяет действие, которое необходимо предпринять.
  • Если условие истинно, цикл выполняет тело.
  • Выполнение цикла немедленно прекращает выполнение условия как ложное.
  • Поскольку тело цикла do while уже выполнено, он должен вернуть результат.