КАТЕГОРИИ: Архитектура-(3434)Астрономия-(809)Биология-(7483)Биотехнологии-(1457)Военное дело-(14632)Высокие технологии-(1363)География-(913)Геология-(1438)Государство-(451)Демография-(1065)Дом-(47672)Журналистика и СМИ-(912)Изобретательство-(14524)Иностранные языки-(4268)Информатика-(17799)Искусство-(1338)История-(13644)Компьютеры-(11121)Косметика-(55)Кулинария-(373)Культура-(8427)Лингвистика-(374)Литература-(1642)Маркетинг-(23702)Математика-(16968)Машиностроение-(1700)Медицина-(12668)Менеджмент-(24684)Механика-(15423)Науковедение-(506)Образование-(11852)Охрана труда-(3308)Педагогика-(5571)Полиграфия-(1312)Политика-(7869)Право-(5454)Приборостроение-(1369)Программирование-(2801)Производство-(97182)Промышленность-(8706)Психология-(18388)Религия-(3217)Связь-(10668)Сельское хозяйство-(299)Социология-(6455)Спорт-(42831)Строительство-(4793)Торговля-(5050)Транспорт-(2929)Туризм-(1568)Физика-(3942)Философия-(17015)Финансы-(26596)Химия-(22929)Экология-(12095)Экономика-(9961)Электроника-(8441)Электротехника-(4623)Энергетика-(12629)Юриспруденция-(1492)Ядерная техника-(1748) |
Операторы завершения цикла
Вопросы для проверки знаний. 1. Какие циклы называют вложенными? 2. Как производится программирование вложенных циклов? 3. В каком порядке осуществляется проверка окончания вложенных циклов? 4. Каким образом изменяются параметры внутренних циклов при изменении значения параметра внешнего цикла у вложенных арифметических циклов? Практическое задание. 1. Написать с использованием вложенных циклов программу, которая определяет все пары (a, b) не равных друг другу целочисленных значений a и b на отрезке от 1 до 6, у которых выражение a 2+ b 2- ab кратно 7. При выполнении тела цикла могут возникнуть ситуации, когда по тем или иным причинам требуется нарушить естественное выполнение цикла. Возможны два типовых способа такого нарушения: 1) полный выход из цикла с прекращением циклических вычислений или 2) выход только из текущей итерации цикла - прекратить вычисления в ней, но остаться в цикле и перейти к следующей его итерации. Теоретически для выполнения обоих действия можно использовать оператор безусловного перехода GOTO, но в соответствии с принципами структурного программирования такой переход не желателен и для выполнения данных действий в Паскале следует использовать специальные стандартные операторы завершения цикла - break и continue. Процедура Break выполняет безусловный выход из цикла и передачу управления следующему за циклом оператору, т.е. фактически вместо break можно было бы поставить оператор безусловного перехода GOTO, осуществляющий переход к метке, стоящей перед следующим за циклом оператором. Процедура сontinue обеспечивает прерывание выполнения текущей итерации цикла и безусловный переход к началу следующей. Данную процедуру можно эквивалентно заменить оператором GOTO, осуществляющим переход к метке, стоящей перед закрывающей скобкой тела цикла end. При срабатывании его также пропускаются все действия в текущей итерации, но цикл продолжает выполняться. Необходимость применения операторов завершения цикла может быть обусловлена двумя основными причинами: 1) возникновением нештатной ситуации в ходе расчетов, 2) вмешательством пользователя в выполнение алгоритма. Первая причина чаще всего обусловлена тем, что: 1) возникает опасность некорректного выполнения расчетных операций, например, деление на очень малое число, расчет логарифма либо извлечение квадратного корня из отрицательного числа, 2) заранее получен искомый ответ в решаемой задаче, в том числе - выяснено, что его не существует и др. Для анализа нештатной ситуации необходимо хорошо знать свойства алгоритма, применяемого в программе, и использовать проверки текущих значений величин в ходе расчетов. Пример 1 тела цикла, в котором вводятся целые величины a,b и в процессе расчетов необходимо выполнять деление на выражение (b-2a). Анализ величин программы и применение оператора break позволяют предотвратить аварийное завершение программы:
Дата добавления: 2014-01-06; Просмотров: 424; Нарушение авторских прав?; Мы поможем в написании вашей работы! Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет |