|
Циклические алгоритмы
Циклические алгоритмы
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
нц
серия повторяющихся команд
кц
Существует также пустой цикл- это цикл без тела цикла. В большинстве случаев он
применяется длясоздания пауз в программах.
Наиболее в алгоритмах и программах применяются два вида циклов. Это циклы "Пока" и
"Для...".
Циклы очень часто используют в прикладных программах и алгоритмах.
| |