Оператор цикла с предварительным условием
Тема 2. Операторы цикла. В практике программирования циклом называют многократное автоматическое выполнение некоторых действий (операторов). Повторяемый фрагмент называют телом цикла. В языке C++ используются операторы цикла трех видов: Ø с предварительным условием, Ø с последующим условием, Ø с параметром. Оператор цикла с предварительным условием Оператор цикла с предварительным условием (с предусловием) является наиболее общим по сравнению с другими конструкциями, которые легко моделируются с помощью оператора цикла с предусловием и, вообще говоря, могут считаться несколько избыточными, в основном служащими для удобства программирования. Оператор цикла с предусловием выполняет повторяющиеся действия до тех пор, пока заданное условие истинно, и выглядит следующим образом: while(условие входа в цикл) оператор; если тело цикла состоит из одного оператора или while(условие входа в цикл){ оператор1; оператор2; ... операторN; } //end while если тело цикла состоит из блока операторов. Если условие входа в цикл сразу ложно, ни один из операторов, образующих тело цикла, не будет выполнен ни одного раза, то есть цикл будет полностью пропущен. Тело цикла обязательно должно содержать действия, влияющие на условие входа в цикл. Иначе цикл станет ”бесконечным”.
Пример 2.1. Распечатать значение переменной m, изменяющейся от 1 до 100, с помощью оператора цикла с предусловием. #include <iostream> using namespace std; int main() { int m = 1; while(m <= 100) { cout << m << ' '; m++; } return 0; }
Пример 2.2. Вычислить среднее арифметическое значение введенной с клавиатуры последовательности целых чисел. Признаком завершения процесса ввода чисел служит ввод нуля. #include <iostream> using namespace std; int main() { int dig, sum=0, cnt=0, middle; cout << "Введите число "; cin >> dig; cnt++; sum = dig; while(dig!= 0) { cout << "Введите число "; cin >> dig; cnt++; sum += dig; } cnt--; if (cnt!= 0) { middle = sum/cnt; // вычисление будет с // точностью до целого cout << "Среднее арифметическое = "; cout << middle <<endl; } else cout << "Последовательность пустая" << endl; return 0; }
|