Студопедия

КАТЕГОРИИ:


Архитектура-(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. Как эквивалентно можно заменить процедуру break оператором GOTO?

5. Как эквивалентно можно заменить процедуру сontinue оператором GOTO?

6. В чем различие ввода информации с клавиатуры при помощи операторов read и readln и функций KeyPressed и ReadKey?

7. Почему при фоновом вводе информации с клавиатуры в тело цикла необходимо вводить обращение к процедуре delay?

Практическое задание.

1. Модифицировать код программы, в примере 2 п.6.5 так, чтобы программа принимала в качестве правильного ответа не только прописную, но и заглавную латинскую букву "Y"?

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

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

Несмотря на отрицательные свойства бесконечных циклов, они широко используются на практике для управления многими программными продуктами (операционные системы, диалоговые окна и др.) и аппаратными средствами (микроконтроллеры, датчики и т.п.), для которых заранее неизвестно условие окончания их работы.

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

while True do оператор;

Также бесконечный цикл в Паскале можно задать при помощи итерационного цикла с постусловием, в котором задано всегда ложное значение выражения:

<== предыдущая лекция | следующая лекция ==>
If KeyPressed then | Вопросы для проверки знаний
Поделиться с друзьями:


Дата добавления: 2014-01-06; Просмотров: 444; Нарушение авторских прав?; Мы поможем в написании вашей работы!


Нам важно ваше мнение! Был ли полезен опубликованный материал? Да | Нет



studopedia.su - Студопедия (2013 - 2024) год. Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав! Последнее добавление




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