Главная страница

Различные варианты программирования циклического алгоритма. Циклические алгоритмы


Скачать 182.51 Kb.
НазваниеЦиклические алгоритмы
АнкорРазличные варианты программирования циклического алгоритма
Дата10.06.2022
Размер182.51 Kb.
Формат файлаpptx
Имя файлаРазличные варианты программирования циклического алгоритма.pptx
ТипУрок
#583707

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

Сколько циклических алгоритмов можно увидеть вокруг, если внимательно посмотреть на события: чередование времен года
  • ВЕСНА
  • ЛЕТО
  • ОСЕНЬ
  • ЗИМА

посещения магазинов, школы или секции, получение за контрольные оценок и др.

а) Пока не сдал выпускные экзамены делай     начало       готовь уроки;       посещай школу;     конец;

б) Пока есть желание, возможность и здоровье делай начало посещай спортивные занятия;

конец;

Для реализации повторяющихся действий существуют специальные алгоритмические структуры, получившие название – циклы или команды повторения.

Цикл типа Пока

Цикл типа ДО

Цикл типа ДЛЯ

Условие

Серия команд

да

нет

Серия команд

i, a, b, h

Условие

Серия команд

да

нет

Виды циклических алгоритмов

Цикл с

предусловием

Цикл с постусловием

Цикл с параметром

Виды циклических алгоритмов

Цикл с

предусловием

Цикл с постусловием

Цикл с параметром

Цикл типа Пока

Цикл типа ДО

Цикл типа ДЛЯ

Условие

Серия команд

да

нет

Условие

Серия команд

да

нет

Серия команд

i,a,b,h

Цикл с предусловием (типа «пока» )

Условие

Серия команд

да

нет

Пока (условие)

нц

Серия команд;

кц

while условие do

begin

Серия команд;

end;

Запись на языке программирования Pascal:

Обратите внимание
  • Цикл заканчивается, когда условие становится не верным (ложным).
  • Если условие с самого начала ложно, то серия команд не выполняется ни разу.

while условиеdo

begin

Серия команд;

end;

Условие

Серия команд

да

нет

В алгоритмическом языке нет команды которая могла бы описать данную структуру, но ее можно выразить с помощью других команд( ветвления).

repeat

Серия команд;

until условие

Цикл с постусловием ( типа «До»)

Запись на языке программирования Pascal:

Обратите внимание
  • Серия команд между repeat и until выполняется хотя бы один раз.
  • Цикл заканчивается когда, условие становится верным (истинным).

repeat

Серия команд;

until условие

Циклы типа repeat и while, используются в программе, если надо провести некоторые повторяющиеся вычисления (цикл), однако число повторов заранее не известно и определяется самим ходом вычисления.

Серия команд

i:= а, b, h

Для i от a до b шаг h делай

Нц

Cерия команд;

кц

Цикл с параметром (типа «ДЛЯ»)

for i:= b downto a do

begin

Cерия команд;

end;

for i:= a to b do

begin

Cерия команд;

end;

h = 1

h = -1

Пример:

Вычислить произведение чисел от 1 до 5 используя различные варианты цикла.

Математическая модель:

Р= 1· 2· 3· 4· 5=120

«Пока»

нач

i:=1

P:=1

i<=5

P:=P*i

i:=i+1

кон

P

да

нет

Шаг

Операция

Р

i

Проверка условия

1

P:=1

1

2

i:=1;

1

1

3

i<=5

P:=P*I

i:=i+1

1

1

1<=5, да (истина)

4

i<=5

P:=P*I

i:=i+1

2

2

2<=5, да (истина)

5

i<=5

P:=P*I

i:=i+1

6

3

3<=5, да (истина)

6

i<=5

P:=P*I

i:=i+1

24

4

4<=5, да (истина)

7

i<=5

P:=P*I

i:=i+1

120

5

5<=5, да (истина)

8

i<=5

P:=P*I

i:=i+1

6<=5, нет (ложь)

Шаг

Операция

Р

i

Проверка условия

1

P:=1;

1

2

i:=1;

1

1

3

P:=P*i;

i:=i+1;

i>5

1

2

2>5, нет (ложь)

4

P:=P*i

i:=i+1

i>5

2

3

3>5, нет (ложь)

5

P:=P*i

i:=i+1

i>5

6

4

4>5, нет (ложь)

6

P:=P*i

i:=i+1

i>5

24

5

5>5, нет (ложь)

7

P:=P*i

i:=i+1

i>5

120

6

6<=5, да (истина)

«ДО»

нач

i:=1

P:=1

P:=P*i

i:=i+1

i>5

кон

P

нет

нач

i:=1

P:=1

P:=P*i

i:=i+1

i>5

кон

P

нет

да

«ДО»

нач

i:=1

P:=1

P:=P*i

i:=i+1

i>5

кон

P

нет

нач

i:=1

P:=1

P:=P*i

i:=i+1

i>5

кон

P

нет

да

« ДЛЯ»

нач

P:=1

I:= 1, 5

P:=P*i

кон

P

Шаг

Операция

Р

i

Проверка условия

1

P:=1

1

2

i:=1

P:=P*i

1

1

3

i:=2

P:=P*i

2

2

4

i:=3

P:=P*i

6

3

5

i:=4

P:=P*i

24

4

6

i:=5

P:=P*i

120

5

«Пока»

«ДО»

« ДЛЯ»

нач

i:=1

P:=1

i<=5

P:=P*i

i:=i+1

кон

P

да

нет

нач

P:=1

I:= 1, 5

P:=P*i

кон

P

нач

i:=1

P:=1

P:=P*i

i:=i+1

i>5

кон

P

нет

да

Program Pr1;

Var i: integer;

Begin

P:=1;

i:=1;

While i<=5 do

begin

P:=P*i;

i:=i+1;

end;

Write (‘P=’, P);

end.

Program Pr2;

Var i: integer;

Begin

P:=1;

i:=1;

Repeat P:=P*i;

i:=i+1;

until i>5;

Write (‘ P=’, P);

end.

Program Pr3;

Var i: integer;

Begin

P:=1;

For i:=1 to 5 do

P:=P*i;

Write (‘P=’, P);

end.

«Пока»

«ДО»

« ДЛЯ»

Задача

Вывести на экран числа от 1 до 5 в:

a) прямом порядке;

b) обратном порядке.

Математическая модель:

a) 1 2 3 4 5

b) 5 4 3 2 1

нач

I:= 1, 5,1

кон

i

I:= 5, 1,-1

кон

i

нач

Для чисел в прямом порядке h = 1

Для чисел в обратном порядке h= - 1

В результате на экране будет:

1 2 3 4 5

В результате на экране будет:

5 4 3 2 1

Program Pr4;

Var i: integer;

Begin

For i:=1 to 5 do

Write (i);

end.

Program Pr5;

Var i: integer;

Begin

For i:=5 downto 1 do

Write (i);

end.

И так мы рассмотрели следующие вопросы:
  • Алгоритмическая структура цикл;
  • Виды алгоритмических структур:
  • Цикл с предусловием;
  • Цикл с постусловием;
  • Цикл с параметром;
  • Рассмотрели способы записи данных структур;
  • Разобрали примеры решения задач с помощью этих структур.


написать администратору сайта