Читайте также: |
|
К.т.н., доц. Троицкий Д.И.
Рассмотрено на заседании кафедры АСС
1 сентября 2007, протокол №1
Зав. кафедрой АСС д.т.н., проф.
_______________ Иноземцев А.Н.
Содержание
1. Задачи с циклами. 4
2. Цикл с предусловием.. 4
2.1 Вечный цикл. 6
3. Цикл с постусловием.. 7
4. Цикл с переменной. 8
5. Дополнительные операторы управления циклами. 10
6. Вложенные циклы.. 12
7. Статические массивы.. 13
8. Многомерные статические массивы.. 14
9. Ввод-вывод массивов. 15
9.1 Ввод с клавиатуры.. 15
9.2 Считывание массива из файла. 17
10. Поиск максимума и минимума. 18
Задачи с циклами
После поворота событий от плохого к худшему цикл повторится.
Из законов Мэрфи
Цикл в программировании позволяет выполнить одну и ту же последовательность операторов несколько раз. Циклы используются в трех случаях:
1. Обработка массивов данных, когда одни и те же операции выполняются над многими данными.
2. Возврат "вверх" (к началу программы). Например, после выдачи результата программа спрашивает пользователя "Повторить?" и при утвердительном ответе повторяет расчет. Это реализуется только с помощью цикла.
3. Повторение операторов до наступления какого-то заданного условия (нажатия клавиши, достижения требуемой точности вычислений и т.д.)
Кроме того, в ряде случаев циклы позволяют избежать повторения одних и тех же операторов. Если в программе есть повторяющиеся фрагменты – она написана неправильно.
Цикл с предусловием
Две интересные передачи всегда идут в одно и то же время.
Из законов Мэрфи.
Наиболее общим в Delphi является цикл с предусловием, реализуемый оператором WHILE…DO. Вот его общий вид:
WHILE условие DO
оператор;
В качестве условия может выступать любое логическое выражение или переменная типа BOOLEAN. Работает такой цикл следующим образом. Сначала проверятся условие (отсюда и название – цикл с предусловием). Если условие истинно, то выполняется оператор (он называется "тело цикла"), а затем программа "пятится назад", снова оказывается на операторе WHILE..DO, снова проверяет условие… и так далее до тех пор, пока условие не станет ложным. Как только это случится, цикл прекращается, и начинает выполняться оператор, следующий за телом цикла.
Цикл с предусловием имеет интересную особенность: если в начале его работы условие оказалось ложным, то цикл вообще не будет выполняться ни разу.
Рассмотрим пример использования цикла WHILE. Пусть мы суммируем ряд натуральных чисел 1+2+3+… и хотим узнать, на каком числе этого ряда сумма превысит 100. Программа будет выглядеть следующим образом:
VAR s:WORD; { сумма }
i: WORD; { текущее число ряда }
BEGIN
s:=0; { сумму обязательно обнуляем!!! }
i:=1; { начинаем суммировать с единицы }
WHILE s<100 DO
BEGIN
s:=s+i;
i:=i+1
END;
Label1.Caption:='Сумма превысит 100 при i='+IntToStr(i)
end;
Кстати, сумма превысит 100 при i=15, так как . Обратите внимание на операторные скобки BEGIN..END. Они позволяют поместить в тело цикла более одного оператора (разумеется, если в теле цикла только один оператор, BEGIN…END не нужны).
Рис. 1. Обозначение цикла с предусловием на блок-схемах.
На блок-схемах все циклы изображаются в виде крышки гроба, самого гроба и лежащего в нем тела цикла. Обозначения же зависят от вида цикла. Для цикла с предусловием блок-схема выглядит, как показано на Рис. 1.
Дата добавления: 2015-07-08; просмотров: 528 | Нарушение авторских прав
<== предыдущая страница | | | следующая страница ==> |
РАБОТА МЕДИЦИНСКОЙ СЕСТРЫ В НЕФРОЛОГИЧЕСКОМ ОТДЕЛЕНИИ | | | Цикл с постусловием |