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

Цикл while – цикл с предусловием.

Условия цикла проверяется перед самим циклом.

Синтаксис: while (выражение)

один оператор или блок.

Если выражение истинно, выполняется тело цикла, иначе цикл прерывается.

Пример:

1. Вычислить сумму натуральных чисел от одного до ста.

i=1;

sum=0;

while(i<=100)

{

sum+=i;

i++;

}

2. Вывести на экран ASCII код введенного символа до тех пор, пока не нажата q.

char sim;

sim=’a’;

while(sim!=’q’)

{

cin>>sim;

cout<<(int)sim<<", "<<sim<<endl;

}

Цикл do while – цикл с постусловием

Условие проверяется после выполнения цикла один раз.

Синтаксис: do

один оператор или блок

while(выражение);

Примеры:

do

{

cout<<"Ввести стороны треугольника ";

cin>>a>>b>>c;

}

while(!(a+b>c&&a+c>b&&c=b>a));

do

{

................

................

cout<<"Продолжить?(Yes-да,…) ";

}

while(getch()!=27);

Цикл for

Рекомендуется применять, когда известно количество повторений цикла.

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

Цикл выполняется:

а) один раз до начала цикла выполняется инициализация – один или несколько операторов разделенных запятой.

б) если условие цикла истинно, выполняется пункт 3, если ложно цикл прекращается.

в) выполняется тело цикла.

г) выполняется коррекция – один оператор или несколько, разделенные запятой.

д) выполнение пункта б.

Любая из трех частей заголовка может отсутствовать но ; писать обязательно.

Примеры:

1. for (i=0; i<10; i++) //повтор 10 раз

cout<<“Это тело цикла”;

2. for(i=10; i>0; i--)

cout<<“Осталось ” <<i<<” секунд”;

3. for(cout<<“\nСчет десятками\n”, i=10; i<101; i+=10)

cout<<i<<endl;

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

{

…………………..

…………………..

}

Безусловная передача управления внутри цикла

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

break – применяется внутри оператора switch и циклах и прерывает их выполнение. Использование оператора break предоставляет возможность проверки особого условия окончания цикла.

Пример:

Определить является ли простым натуральное число N.

#include<iostream> //подключение системных средств для

using namespace std; //возможности использовать потоки ввода-вывода

int main(void) //имя функции main

{

int n, i;

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

cin>>n;

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

if (n%i= =0)

break;

if (i= =n)

cout<<"\nЧисло простое";

else

cout<<"\nЧисло не простое";

return 0;

}

continueприменяется внутри тела цикла и приводит к выполнению следующей итерации, оставшаяся часть текущей итерации пропускается. Оператор continue в цикле применяется всегда в составе условного оператора, также как и break.

Пример:

Вычислить среднее арифметическое положительных чисел из n – введенных чисел.

#include<iostream> //подключение системных средств для

using namespace std; //возможности использовать потоки ввода-вывода

int main(void) //имя функции main

{

int n, i, current, sum, kol;

cout<<"Ввести количество чисел ";

cin>>n;

cout<<"Ввести числа по одному ";

for (i=1, sum=0, kol=0; i<n+1; i++)

{

cin>>current;

if (current<=0)

continue;

sum+=current;

kol++;

}

if (kol)

cout<<"\nСреднее арифметическое=",(double)sum/kol<<endl;

else

cout<<"Положительных чисел нет"<<endl;

return 0;

}

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

Синтаксис: Не входить внутрь блока из вне, не входить внутрь условных операторов и не входить внутрь цикла из вне.

goto m1;

.............

m1:

.............

.............

Пример:

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

for (j=5; j<70; j+=5)

{

if (условие ошибочной ситуации)

goto m1:

.............

.............

}

............

............

m1:

puts (“Сообщение об ошибке”);

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