Основы алгоритмизации и программирования. Часть первая. Алгоритмический язык. Операторы. Асламова В.С - 26 стр.

UptoLike

Составители: 

51
Пример 16 Итерационный цикл
Смотри условие примера 12.
Программа 10
Var A,n: longint;
K,S: byte;
begin write('Введите целое
положительное число');
readln(n);
A
:
=n; K
:
=0; S
:
=0;
repeat S
:
=S+n mod 10;
K
:
=K+1;
n
:
=n div 10;
until n = 0;
writeln('В числе ',A,' количество
цифр = ',K,' их сумма = ',S);
end.
Из приведенных примеров видно, что при исполнении операторов
цикла с предусловием (цикл
while) и с постусловием (цикл repeat until)
необходимо самому программисту выполнять:
определение начального значения параметра цикла,
проверку условия выполнения цикла,
изменение параметра цикла на один шаг,
Следует заметить, что для всех итерационных циклов лучше
использовать операторы цикла с предусловием или с постусловием.
Организация итерационного цикла соператором цикла с параметром
связана с некоторыми трудностями, так как нужно заранее оп
ределить
максимальное значение параметра цикла, когда это не всегда возможно
предугадать.
n = 0
НАЧАЛО
КОНЕЦ
A:=n;
K:=0; S:=0
S:=S+n mod10;
K:=K+1;
n:=n div10
Экран
Ввод n
Экран
S,K
да
нет
Рисунок 39 Блок-схема
п
р
ог
р
аммы 10
52
Оператор цикла с параметром
Этот оператор используется, когда число повторений цикла заранее
известно. Данный оператор цикла определяет диапазон изменения
значений управляющей переменной (параметра цикла). А также
направление изменения параметра цикла (возрастание с шагом +1 “
toили
убывание с шагом –1
downto”).
DoДиапазон Оператор
:
=
For
Переменная
;
Рисунок 40 Оператор цикла с параметром
Выражение
(начальное
значение
)
To
Downto
Выражение
(конечное
значение
)
Рисунок 41 Диапазон
В данных алгоритмах используется символ действия
модификация”.
Присваивание параметру
начального значения
Проверк а: значение параметра в
облас ти дейс твия?
Изменение параметра
на шаг
Выполнение операторов,
составляющих те ло цикла
Выход из цик ла
Рисунок 42 Принцип действия оператора цикла
Нельзя войти в цикл, минуя его заголовок. Из цикла можно выйти и
до его окончания с помощью оператора
If. Такой выход называется
неестественным. При таком выходе из цикла текущее значение параметра
цикла сохраняется.
Пример 16 Итерационный цикл
                                                                         Оператор цикла с параметром
        Смотри условие примера №12.                                            Этот оператор используется, когда число повторений цикла заранее
       НАЧАЛО                                                            известно. Данный оператор цикла определяет диапазон изменения
                                   Программа 10
                                                                         значений управляющей переменной (параметра цикла). А также
        Экран                                                            направление изменения параметра цикла (возрастание с шагом +1 “to” или
                                   Var A,n: longint;
        Ввод n                                                           убывание с шагом –1 “downto”).
                                         K,S: byte;
                                                                                For        Переменная     :=   Диапазон   Do     Оператор     ;
         A:=n;
                                   begin     write('Введите      целое
       K:=0; S:=0
                                   положительное число');                Рисунок 40 Оператор цикла с параметром
    S:=S+n mod10;                          readln(n);
       K:=K+1;                                                                                       To
                                                                              Выражение                            Выражение
      n:=n div10                             A:=n; K:=0; S:=0;                (начальное                            (конечное
                                                                               значение)                            значение)
                                   repeat S:=S+n mod 10;                                          Downto

                    да   Экран               K:=K+1;
          n=0             S,K                                            Рисунок 41 Диапазон
             нет                             n:=n div 10;
                         КОНЕЦ                                                В    данных       алгоритмах     используется     символ      действия
                                   until n = 0;                          “модификация”.
   Рисунок 39 Блок-схема          writeln('В    числе ',A,' количество
                                                                                                   Присваивание параметру
   программы №10                  цифр = ',K,' их сумма = ',S);                                      начального значения
                                                                                                Проверк а: значение параметра в
                                  end.
                                                                                                      облас ти дейс твия?
      Из приведенных примеров видно, что при исполнении операторов                                  Изменение параметра
цикла с предусловием (цикл while) и с постусловием (цикл repeat until)                                       на шаг
необходимо самому программисту выполнять:
   ⊕ определение начального значения параметра цикла,
                                                                                                                                 Выход из цик ла
   ⊕    проверку условия выполнения цикла,                               Выполнение операторов,
                                                                         составляющ их тело цик ла
   ⊕    изменение параметра цикла на один шаг,

      Следует заметить, что для всех итерационных циклов лучше
использовать операторы цикла с предусловием или с постусловием.          Рисунок 42 Принцип действия оператора цикла
Организация итерационного цикла с “оператором цикла с параметром”
                                                                               Нельзя войти в цикл, минуя его заголовок. Из цикла можно выйти и
связана с некоторыми трудностями, так как нужно заранее определить       до его окончания с помощью оператора If. Такой выход называется
максимальное значение параметра цикла, когда это не всегда возможно      неестественным. При таком выходе из цикла текущее значение параметра
предугадать.                                                             цикла сохраняется.



                                                                   51    52