Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Л_5. (1 пара) Операторы циклов и управления+.doc
Скачиваний:
10
Добавлен:
05.11.2018
Размер:
146.94 Кб
Скачать

Цикл с предусловием

Основная форма оператора цикла while (цикл с предусловием) имеет следующий вид:

while (условие) оператор;

Оператор может быть простым или составным. Условие – логическое выражение, которое проверяется для выхода из цикла. Цикл выполняется до тех пор, пока условие истинно. Когда условие ложно, программа передает управление следующему по порядку оператору. Так как сначала проверяется условие, а затем выполняется оператор, это цикл с предусловием.

Блок-схема цикла с предусловием имеет вид:

Пример 1. Программа вычисления факториала числа n ( n ! = 1· 2· … · n)

#include <iostream.h>

#include <conio.h>

void main(void)

{

int i, n ; long fact = 1;

cout << “введите любое натуральное число:”;

cin >> n;

i = 1;

while (i <= n)

{ fact = fact*i; // fact *= i;

i++;

}

cout << n<<”! =” << fact; getch ();

}

Результат работы программы:

Цикл с постусловием:

В цикле do … while условие проверяется в конце оператора, а цикл выполняется пока условие истинно (цикл с постусловием). Основная форма оператора do … while следующая:

do {

<последовательность операторов>;

} while (условие);

Какое бы условие ни стояло в конце оператора, набор операторов в фигурных скобках один раз (первый) исполнится обязательно.

Блок-схема цикла с постусловием:

Начальные установки

Операторы

Модификация параметров цикла

нет

да

Пример 2. Вычислять сумму двух чисел с запросом продолжения вычислений.

#include <iostream.h>

#include <conio.h>

void main()

{

float x, y, sum;

char zapros;

do {

cout << "Vvedite 2 chisla: ";

cin >> x >> y;

sum = x + y;

cout << " sum = " << sum << endl;

cout <<" Prodolgit (Y, y) ? ";

cin >> zapros;

}

while ((zapros == 'y') || (zapros == 'Y' ));

}

Результат работы программы:

Цикл с параметром:

Основная форма цикла for (цикл «для каждого») имеет вид:

for ( инициализация; проверка условия; изменение) оператор;

Оператор может быть простым или составным. Инициализация используется для присвоения начального значения параметру цикла. Проверка условия – условное выражение, которое определяет, когда цикл должен быть завершен. Изменение – это приращение параметра цикла. В качестве параметра цикла необязательно использовать целочисленную переменную.

Блок-схема цикла «для каждого»:

Пример 3. Вычислить факториал числа n.

#include <iostream.h>

#include <conio.h>

void main (void)

{

int i, n;

float fact = 1;

cout << "Vvedite chislo:";

cin >> n;

for ( i = 1; i <= n; i++)

fact = fact*i;

cout <<n<<"!= " << fact;

getch();

}

Результат работы программы:

Часто циклы используются для обработки массивов чисел. Каждый элемент массива характеризуется именем массива и порядковым номером (индексом). Любой массив перед использованием необходимо объявить, т.е. указать его имя, количество элементов и тип элементов. Количество элементов должно быть целым числом или константой.

Пример 4. Домножить все элементы массива на квадрат его наименьшего элемента. Вывести измененный массив.

#include <iostream.h>

#include <math.h>

#include <iomanip.h>

#include <conio.h>

void main (void)

{

int i, n, a[20], min;

cout << "Kolichestvo chisel v massive(<20)= "; cin >> n;

for (i=1; i<=n; i++)

{

cout << "Vvedite " << i << " element:";

cin >> a[i];

}

min = a[0];

for (i=1; i<=n; i++)

if (a[i] < min) min = a[i];

for (i=1; i<=n; i++)

{

a[i] = a[i]*pow(min,2);

cout << setw(8) << a[i];

}

getch();

}

Результат работы программы: