русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Операторы управления циклами – break и continue


Дата добавления: 2015-01-08; просмотров: 1036; Нарушение авторских прав


Оператор break уже упоминался при описании переключателя switch. В циклах он выполняет ту же самую работу – прерывает их выполнение. Если break встречается во вложенных циклах, то он прерывает только тот цикл, в котором находится.

Пример использования оператора break:

#include <iostream>

#include <time.h>

using namespace std;

void main ()

{

setlocale(LC_ALL, "Russian");

srand(time(NULL));

int min = 1;

int max = 10;

cout << "Угадайте число от 1 до 10\n";

while (true)

{

int n = ((double)rand() / RAND_MAX) * (max – min + 1) + min;

short ua;

cin >> ua;

if (n == ua)

{

cout << "Правильно!\n";

break;

}

cout << "Неверно.\n";

}

system("pause");

}

Здесь пользователь пытается угадать число, сгенерированное компьютером в диапазоне от 1 до 10. Выражение

((double)rand() / RAND_MAX) * (max – min + 1) + min

как раз позволяет получить подобный диапазон используя функцию rand(), генерирующую псевдослучайные числа в пределах от 0 до RAND_MAX (32767).

При каждой новой попытке пользователя генерируется новое число и продолжается это до тех пор, пока числа не совпадут. При совпадении пользователю выводится сообщение об успехе, после чего вызывается оператор break, который сразу же прерывает выполнение цикла и передает управление на первую инструкцию после него – системную функцию вызова паузы.

Оператор continue выполняет переход к следующей итерации цикла. В цикле for сначала происходит переход на действие в заголовке, изменяющее счетчик и только потом – на условие. В циклах while и do…while переход происходит на проверку условия продолжения. Как и оператор break, в случае вложенных циклов continue относится только к тому циклу, в теле которого он непосредственно находится.



Пример использования оператора continue для вывода четных чисел от 1 до 100 и вычисления их суммы:

#include <iostream>

using namespace std;

void main ()

{

int sum = 0;

for (int i = 1; i <= 100; i++)

{

if (i % 2)

continue;

cout << i << ' ';

sum += i;

}

cout << "\nS= " << sum << endl;

system("pause");

}

Для определения четности числа используется операция % – остаток от деления. Нечетные числа делятся на 2 с остатком в 1, что в условии интерпретируется как истина. При выполнении условия, т.е. если текущее число – нечетное, выполняется оператор continue и происходит переход на следующую итерацию цикла. При этом нечетное число не выводится на экран и не участвует в суммировании.



<== предыдущая лекция | следующая лекция ==>
Цикл while | Оператор безусловного перехода goto


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 0.106 сек.