Циклические алгоритмы (работа 1)

Циклические алгоритмы

    Алгоритмы содержащие команды повторения, называют циклическими. Команды повторения составляют цикл. Цикл - это такая форма организации действий, при которой одна последовательность действий повторяется несколько раз( или не разу), до тех пор , пока выполняются некоторые условия.

    Существуют три вида циклов. Это: цикл “До”, цикл “Пока”, цикл “ Для...”. Они все состоят из нескольких этапов. Это :

    Подготовка цикла, в которую входят начальные присвоения;

    Тело цикла - команды повторения цикла;

    Условие - обязательная часть циклов “До” и “Пока”.

    Рассмотрим цикл “До”. Цикл “До” это такой цикл, где тело цикла выполняется перед условием. Его лучше использовать в той циклической структуре, где заранее известно число повторений блока условия.

Это простейшая блок-схема цикла “До”.

¯

присвоение

½

½

¯

тело цикла

¯

условие

¯

Приведу программы на языке Бейсик :

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

--

вывод А

кон

    Теперь рассмотрим цикл “Пока”

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

Его простейшая блок-схема выглядит так :

|

|

¯

присвоение

½

¯

условие

¯

тело цикла



Этот цикл может не выполнится .

Приведу программы для языка Бейсик :

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 случае в программа на Бейсике заметно упрощается. Хотя их цели одинаковы.

Оформление в алгоритмах такое :

пока

нц

серия повторяющихся команд

кц

    Цикл “Для ...”

Цикл “Для...” это цикл с параметром, что приводит к тому, что условие не нужно. В этом случае обязательны два параметра. Это - начальное и конечное значение цикла. А также не обязательным это шаг цикла.

Для А от Х до У шаг 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

нц

серия повторяющихся команд

кц

Существует также пустой цикл- это цикл без тела цикла. В большинстве случаев он применяется для создания пауз в программах.

Наиболее в алгоритмах и программах применяются два вида циклов. Это циклы “Пока” и “Для...”.

Циклы очень часто используют в прикладных программах и алгоритмах.

TYPE=RANDOM FORMAT=ARABIC>4