![]() Заглавная страница Избранные статьи Случайная статья Познавательные статьи Новые добавления Обратная связь FAQ Написать работу КАТЕГОРИИ: ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ![]() ТОП 10 на сайте Приготовление дезинфицирующих растворов различной концентрацииТехника нижней прямой подачи мяча. Франко-прусская война (причины и последствия) Организация работы процедурного кабинета Смысловое и механическое запоминание, их место и роль в усвоении знаний Коммуникативные барьеры и пути их преодоления Обработка изделий медицинского назначения многократного применения Образцы текста публицистического стиля Четыре типа изменения баланса Задачи с ответами для Всероссийской олимпиады по праву ![]() Мы поможем в написании ваших работ! ЗНАЕТЕ ЛИ ВЫ?
Влияние общества на человека
Приготовление дезинфицирующих растворов различной концентрации Практические работы по географии для 6 класса Организация работы процедурного кабинета Изменения в неживой природе осенью Уборка процедурного кабинета Сольфеджио. Все правила по сольфеджио Балочные системы. Определение реакций опор и моментов защемления |
Оператор цикла с параметром (for) или пошаговый.Содержание книги
Поиск на нашем сайте Оператор for имеет вид (синтаксис):
Любое из выражений в скобках может отсутствовать, однако их разделители “;” обязательны. Семантика: оператор for выполняется следующим образом: 1. Вычисляется выражение1 (начальное значение счетчика), если оно есть; 2. Вычисляется условие (условие продолжения цикла); 3. Если оно истинно (¹0) или его вообще нет, то a) Выполняется оператор; b) Вычисляется выражение2 (новое значение счетчика); c) Переход к пункту 2. Иначе - выход из цикла (переход к следующему после for оператору.
p=1; s=0; for(i=1; i<=8; i=i+1) { s=s+i; p=p*i; } То же можно написать короче в ущерб читабельности, воспользовавшись операциями “,”, присваивания и постдекремента: for(p=1, s=0, i=1; i<=8; s+=i, p*=i++); В этом примере тело цикла отсутствует, поскольку при вычислении выражения2 изменяются и s, и p, а затем и i. Пример 14. Напишем оператор задержки продолжения программы до нажатия клавиши “g”. for(ch=‘A’; ch!= ‘g’;) ch=getch(); В данном примере отсутствует выражение2, поскольку значение переменной ch изменяется в теле цикла. Вложенные циклы. В каждом из видов циклов тело цикла может быть тоже оператором цикла. Такие циклы называются вложенными. Важно, чтобы тело внутреннего цикла не выходило за пределы тела внешнего цикла. Пример 15. Напишем программу печати таблицы умножения. for(i=1; i<10; i++) // Для каждой строки i таблицы { for(j=1; j<10; j++) // Для каждого столбца j таблицы // выводим j*i=произведение j на i printf(“%d*%d=%2d “,j,i,j*i); // В конце строки (после цикла по j) cout << '\n'; // переход на новую строку } Попытайтесь исправить эту программу так, чтобы обойтись тремя операторами (без cout). Подсказка: использовать условную операцию (?:). 3.3.5 Операторы break и continue. Иногда требуется прекратить выполнение цикла не по результату проверки условия, а другим способом. Это можно сделать оператором break, который вызывает немедленный выход из самого внутреннего из объемлющих его циклов for, while или do, а также оператора switch. Пример 16. Приведем программу вычисления суммы неизвестного заранее количества положительных чисел, вводимых с клавиатуры. Признаком окончания расчета является ввод любого отрицательного числа. 1 в условии означает, что цикл бесконечный, т.е. выход возможен только по оператору break. summ=0; While (1) { cin >> a; if (a >= 0) summ += a; else break; } Оператор continue тоже прерывает выполнение операторов тела цикла, однако не заканчивает цикл, а вызывает следующий шаг итерации. Для for это изменение счетчика, а для while или do - проверка условия. Пример 17. Программа вычисляет сумму только тех чисел, вводимых с клавиатуры, которые положительны. Признаком окончания расчета является ввод числа 0. summ=0; While (1) { cin >> a; if (a > 0) // положительное summ += a; else if (a < 0) // отрицательное continue; else // введено число 0 break; }
|
|||||||||||||||||||
Последнее изменение этой страницы: 2020-12-09; просмотров: 84; Нарушение авторского права страницы; Мы поможем в написании вашей работы! infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 13.59.84.60 (0.009 с.) |