Циклические алгоритмы
I. Алгоритмы содержащие команды повторения, называют циклическими. Команды повторения составляют цикл. Цикл - это такая форма организации действий, при которой одна последовательность действий повторяется несколько раз( или не разу), до тех пор , пока выполняются некоторые условия.
II. Существуют три вида циклов. Это: цикл “До”, цикл “Пока”, цикл “ Для...”. Они все состоят из нескольких этапов. Это :
1. Подготовка цикла, в которую входят начальные присвоения;
2. Тело цикла - команды повторения цикла;
3. Условие - обязательная часть циклов “До” и “Пока”.
III. Рассмотрим цикл “До”. Цикл “До” это такой цикл, где тело цикла выполняется перед условием. Его лучше использовать в той циклической структуре, где заранее известно число повторений блока условия.
Это простейшая блок-схема цикла “До”.
¯
присвоение
½
½
¯
тело цикла
¯
условие
¯
Приведу программы на языке Бейсик :
10 A=0
20 A=A+1
30 IF NOT A=10 THEN GOTO 20
40 PRINT A
50 END
|
10 A=0
20 A=A+0.01
30 IF INT(A)=0 THEN GOTO 20
40 PRINT A
50 END
|
Этот цикл выполняется не менее одного раза.
Блок-схемы на эти программы :
нач
А:=0
А:=А+1
-- А=10
+
вывод А
кон
|
2)
нач
А:=0
А:=А+0.01
+
INT(A)=0
--
вывод А
кон
|
IV. Теперь рассмотрим цикл “Пока”
Цикл “Пока” это такой цикл, где тело цикла выполняется, пока
выполняются некоторые условия . Его лучше использовать там, где сразу неизвестны начальные значения цикла.
Его простейшая блок-схема выглядит так :
|
|
¯
присвоение
½
¯
условие
¯
тело цикла
Этот цикл может не выполнится .
Приведу программы для языка Бейсик :
1)
10 INPUT A
20 IF A=>50 THEN GOTO 50
30 A=A+1
40 GOTO 20
50 PRINT A
60 END
|
2)
10 INPUT A
20 IF A<50 THEN A=A+1: GOTO 20
30 PRINT A
40 END
|
Блок-схемы на эти программы:
нач
ввод А
+ А=>50
--
А:=А+1
вывод А
кон
|
нач
ввод А
-- A<50
+
А:=А+1
вывод А
кон
|
В блок-схемах различий очень мало, но во 2 случае в программа на Бейсике заметно упрощается. Хотя их цели одинаковы.
Оформление в алгоритмах такое :
пока
нц
серия повторяющихся команд
кц
V. Цикл “Для ...”
Цикл “Для...” это цикл с параметром, что приводит к тому, что условие не нужно. В этом случае обязательны два параметра. Это - начальное и конечное значение цикла. А также не обязательным это шаг цикла.
Для
А от
Х до
У шаг
Z
Х- начальное значение
У- конечное значение
Z- шаг или приращение
А- переменная, которой присваивается значения начиная с Х до У с шагом Z.
Пример в программе на языке Бейсик :
10 X=1: Y=10: Z=1: B=0
20 FOR A=X TO Y STEP Z
30 B=B+1
40 NEXT A
50 PRINT A
60 END
В этой записи можно использовать числовые значения, вместо переменных. И если шаг равен 1, то строка
STEP
Z
не обязательна.
На алгоритмическом языке запись такая:
Для
А от
Х до
У шаг
Z
нц
серия повторяющихся команд
кц
Существует также пустой цикл- это цикл без тела цикла. В большинстве случаев он применяется для создания пауз в программах.
Наиболее в алгоритмах и программах применяются два вида циклов. Это циклы “Пока” и “Для...”.
Циклы очень часто используют в прикладных программах и алгоритмах.
|