Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Metodichka_Vinogradova.doc
Скачиваний:
2
Добавлен:
01.05.2025
Размер:
628 Кб
Скачать
☆

4.4 Операторы цикла

Операторы цикла используются для организации многократно повторяющихся вычислений.

Для удобства, а не по необходимости, в С++ есть три разных оператора цикла – for, while, do while.

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

4.4.1.1 Цикл for.

Цикл for имеет следующий формат:

for ( инициализация; выражение; модификации) //заголовок цикла

оператор или блок; //тело цикла

Инициализация реализует объявления и присвоения начальных значений величинам, используемым в цикле. В этой части можно записать один или несколько операторов, разделенных запятой (операцией «последовательное выполнение»), например, так.

1) for (int = 0; …

2) int k, m;;

for (k = 1, m = 0; …

  1. инициация может отсутствовать:

for( ;

Областью действия переменных, объявленных в части инициализации цикла, является цикл. Инициализация выполняется один раз в начале исполнения цикла.

Выражение определяет условие выполнения цикла: если его результат, приведенный к типу bool, равен true, цикл выполняется.

Модификации выполняются после каждой итерации цикла и служат обычно для изменения параметров цикла. В части модификаций можно записать несколько операторов через запятую. Любая из частей оператора for может быть опущена (но точки с запятой надо оставить на своих местах!).

Примеры.

1. int i;

for(i=0;i<10;i++)

cout<<i<<’ ‘;

Цикл выводит на экран числа от 0 до 9 включительно.

  1. int s,i;

for ( i = 1, s = 0; 1<=10; i++) s += i;

Оператор вычисляет сумму чисел от 1 до 10.

Данный фрагмент вычислений можно записать иначе:

int s=0,i;

for ( i = 1; 1<=10; s += i, i++);

  1. Программа определяет, является ли целое положительное число- совершенным.

Совершенное число равно сумме своих делителей, включая 1.

Например 28=1+2+4+7+14

#include <iostream.h>

int main(){

int a, d,Sum=1;;

cout << "\nВведите число : ";

cin >>a;

f=a/2;

for ( d = 2; d <= f; d++)

if (a % d==0) Sum+= d ;

cout<<a;

if(a==Sum)cout<<”-coвершенно”;else cout<<”- не совершенно”;

return 0:

}

4.4.1.2 Цикл с условием (while)

Очень часто заранее невозможно сказать, сколько раз надо выполнить какую-то опера-

цию, но можно определить условие, при котором она должна повторяться.

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

while ( выражение ) //заголовок цикла

оператор или блок; //тело цикла

Выражение определяет условие повторения тела цикла, представленного простым оператором или блоком операторов. Выполнение оператора начинается с вычисления выражения. Если оно истинно, то выполняется шаг цикла. Если при первой проверке выражение равно false, цикл не выполнится ни разу. Выражение может быть арифметическим, логическим или типа указатель и вычисляется перед каждой итерацией цикла.

Пример.

1. Программа проверяет, является ли целое положительное- простым числом.

#include <iostream.h>

int main(){

int a,d;

cout << "\nВведите число : ";

cin >> a;

int f = a / 2;

d = 2:

while (d <= f&&a%d!=0)

d++;

cout<<a;

if(d>f)cout<<”- простое”; else cout<<”- не простое”;

return 0:

}

Данную задачу можно решить при помощи цикла for.

#include <iostream.h>

int main()

{

int a,d;

cout << "\nВведите число : ";

cin >> a;

int f = a / 2 ;

for(d=2;d <= f&&a%d!=0; d++);

if(d>f)cout<<a<<”- простое”; else cout<<a<<”- не простое”;

return 0:

}

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]