Скачать презентацию
Идет загрузка презентации. Пожалуйста, подождите
Презентация была опубликована 9 лет назад пользователемЕлена Мещерская
1 Циклические алгоритмы
2 ВЕСНА ЛЕТООСЕНЬ ЗИМА Сколько циклических алгоритмов можно увидеть вокруг, если внимательно посмотреть на события: чередование времен года
3 посещения магазинов, школы или секции, получение за контрольные оценок и др.
4 а) Пока не сдал выпускные экзамены делай начало готовь уроки; посещай школу; конец; б) Пока есть желание, возможность и здоровье делай начало посещай спортивные занятия; конец;
5 Для реализации повторяющихся действий существуют специальные алгоритмические структуры, получившие название – циклы или команды повторения.
6 Цикл типа Пока Цикл типа ДО Цикл типа ДЛЯ Условие Серия команд да нет Серия команд i, a, b, h Условие Серия команд да нет Виды циклических алгоритмов Цикл с предусловием Цикл с постусловием Цикл с параметром
7 Виды циклических алгоритмов Цикл с предусловием Цикл с постусловием Цикл с параметром Цикл типа Пока Цикл типа ДОЦикл типа ДЛЯ Условие Серия команд да нет Условие Серия команд да нет Серия команд i,a,b,h
8 Цикл с предусловием (типа «пока» ) Условие Серия команд да нет Пока (условие) нц Серия команд; кц while условие do begin Серия команд; end; Запись на языке программирования Pascal:
9 Обратите внимание 1. Цикл заканчивается, когда условие становится не верным (ложным). 2. Если условие с самого начала ложно, то серия команд не выполняется ни разу. while условие do begin Серия команд; end;
10 Условие Серия команд да нет В алгоритмическом языке нет команды которая могла бы описать данную структуру, но ее можно выразить с помощью других команд( ветвления). repeat Серия команд; until условие Цикл с постусловием ( типа «До») Запись на языке программирования Pascal:
11 Обратите внимание Серия команд между repeat и until выполняется хотя бы один раз. Цикл заканчивается когда, условие становится верным (истинным). repeat Серия команд; until условие
12 Циклы типа repeat и while, используются в программе, если надо провести некоторые повторяющиеся вычисления (цикл), однако число повторов заранее не известно и определяется самим ходом вычисления.
13 Серия команд 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
14 Пример: Вычислить произведение чисел от 1 до 5 используя различные варианты цикла. Математическая модель: Р = 1· 2· 3· 4· 5=120
15 «Пока» нач i:=1 P:=1 i<=5 P:=P*i i:=i+1 кон P да нет Шаг ОперацияРi Проверка условия 1P:=11 2i:=1;11 3i<=5 P:=P*I i:=i <=5, да (истина) 4i<=5 P:=P*I i:=i <=5, да (истина) 5i<=5 P:=P*I i:=i <=5, да (истина) 6i<=5 P:=P*I i:=i <=5, да (истина) 7i<=5 P:=P*I i:=i <=5, да (истина) 8i<=5 P:=P*I i:=i+1 6<=5, нет (ложь)
16 Шаг ОперацияРi Проверка условия 1P:=1;1 2i:=1;11 3P:=P*i; i:=i+1; i>5 12 2>5, нет (ложь) 4P:=P*i i:=i+1 i> >5, нет (ложь) 5P:=P*i i:=i+1 i> >5, нет (ложь) 6P:=P*i i:=i+1 i> >5, нет (ложь) 7P:=P*i i:=i+1 i> <=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 нет да
17 « ДЛЯ» нач P:=1 I:= 1, 5 P:=P*i кон P Шаг Опера ция Рi Проверка условия 1P:=11 2i:=1 P:=P*i1 1 3i:=2 P:=P*i2 2 4i:=3 P:=P*i6 3 5i:=4 P:=P*i24 4 6i:=5 P:=P*i120 5
18 «Пока» «ДО» « ДЛЯ» нач 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 нетда
19 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. «Пока» «ДО» « ДЛЯ»
20 Задача Вывести на экран числа от 1 до 5 в: a) прямом порядке; b) обратном порядке. Математическая модель: a) b)
21 нач I:= 1, 5,1 кон i I:= 5, 1,-1 кон i нач Для чисел в прямом порядке h = 1 Для чисел в обратном порядке h= - 1
22 В результате на экране будет: В результате на экране будет: 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.
23 И так мы рассмотрели следующие вопросы: 1. Алгоритмическая структура цикл; 2. Виды алгоритмических структур: Цикл с предусловием; Цикл с постусловием; Цикл с параметром; 3. Рассмотрели способы записи данных структур; 4. Разобрали примеры решения задач с помощью этих структур.
Еще похожие презентации в нашем архиве:
© 2024 MyShared Inc.
All rights reserved.