Урок по теме Циклический алгоритм

Предмет: Информатика и ИКТ. Урок ознакомления с новым материалом
Тема: «Циклические алгоритмы»
Продолжительность: 1 урок - 45 минут
Класс: 9 класс
Технологии: Презентация, интерактивная доска
Цель: изучение алгоритмической структуры циклы, создание моделей и алгоритмов для решения практических задач.
Ход урока
Актуализация знаний
Повторить понятие алгоритма, основные конструкции алгоритмического языка.
Уметь разрабатывать математическую модель, алгоритм и блок схему решения задачи.
Иметь понятие о языках программирования и их назначении.
Уметь работать в среде программирования.
Знать структуры программы.
Уметь записывать выражения, содержащие числовые и символьные величины.
Знать структуры операторов и особенности их работы.
Уметь применять операторы при написании программ с линейными и ветвящимися структурами.
Уметь на компьютере создавать и запускать программы на отладку.
II. Теоретический материал урока
Большинство практических задач требует многократного повторения одних и тех же действий, т. е. повторного использования одного или нескольких операторов. ([ Cкачайте файл, чтобы посмотреть ссылку ]
Пусть требуется ввести и обработать последовательность чисел. Если чисел всего пять, можно составить линейный алгоритм. Если их тысяча, записать линейный алгоритм можно, но очень утомительно и нерационально. Если количество чисел к моменту разработки алгоритма неизвестно, то линейный алгоритм принципиально невозможен.
Другой пример. Чтобы найти фамилию человека в списке, надо проверить первую фамилию списка, затем вторую, третью и т.д. до тех пор, пока не будет найдена нужная или не будет достигнут конец списка. Преодолеть подобные трудности можно с помощью циклов.
Циклом называется многократно исполняемый участок алгоритма (программы). Соответственно циклический алгоритм это алгоритм, содержащий циклы.
Различают два типа циклов: с известным числом повторений и с неизвестным числом повторений. При этом в обоих случаях имеется в виду число повторений на стадии разработки алгоритма.
Существует 3 типа циклических структур:
Цикл с предусловием;
Цикл с постусловием;
Цикл с параметром;
Иначе данные структуры называют циклами типа «Пока», «До», «Для».
Графическая форма записи данных алгоритмических структур:
13 SHAPE \* MERGEFORMAT 141513 SHAPE \* MERGEFORMAT 1415

Цикл с предусловием (иначе цикл пока) имеет вид:

Форматы записи операторов алгоритма
Блок-схема
Форматы записи операторов на Паскале

Пока (условие)
нц
серия команд
кц

13 SHAPE \* MERGEFORMAT 1415
while условие do
begin
серия команд;
end;



где
условие – выражение логического типа.
Цикл может не выполняться ни разу, если значение логического выражения сразу же оказывается ложь.
Серия команд, находящихся между begin и end, выполняются до тех пор, пока условие истинно.
Для того чтобы цикл завершился, необходимо, чтобы последовательность инструкций между BEGIN и END изменяла значение переменных, входящих в условие.

Цикл с постусловием (иначе цикл до) имеет вид:

Форматы записи операторов алгоритма
Блок-схема
Форматы записи операторов на Паскале

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

repeat серия команд
until условие



где
условие – выражение логического типа.
Обратите внимание:
Последовательность инструкций между repeat и until всегда будет выполнено хотя бы один раз;
Для того чтобы цикл завершился, необходимо, чтобы последовательность операторов между repeat и until изменяла значения переменных, входящих в выражение условие.
Инструкция repeat, как и инструкция while, используется в программе, если надо провести некоторые повторяющиеся вычисления (цикл), однако число повторов заранее не известно и определяется самим ходом вычисления.
Цикл с параметром (иначе цикл для) имеет вид:

Форматы записи операторов алгоритма
Блок-схема
Форматы записи операторов на Паскале

Для i от а до b шаг h делай
Нц
Серия команд
кц

13 SHAPE \* MERGEFORMAT 1415
h = +1
for i:= a to b do
begin
серия команд
end;
h = -1
for i:= b downto a do
begin
Cерия команд;
end;

где
i- параметр цикла;
a – начальное значение цикла;
b- конечное значение цикла;
h-шаг изменения параметра.
Структура данного цикла иначе называют циклом i раз.
Эта команда выполняется таким образом: параметру i присваивается начальное значение а, сравнивается с конечным значением b и, если оно меньше или равно конечному значению b, выполняется серия команд. Параметру присваивается значение предыдущего, увеличенного на величину h - шага изменения параметра и вновь сравнивается с конечным значением b.

На языке программирования Паскаль шаг изменения параметра может быть равным одному или минус одному.
Если между begin и end находится только один оператор, то операторные скобки можно не писать. Это правило работает для цикла типа «Пока» и «Для».
Рассмотрим пример решения задач с использованием данных структур
Пример.
Вычислить произведение чисел от 1 до 5 используя различные варианты цикла
Математическая модель:
Р= 1
· 2
· 3
· 4
· 5=120
Составим алгоритм в виде блок-схемы.

13 SHAPE \* MERGEFORMAT 1415
Для проверки правильности алгоритма заполним трассировочную таблицу.

Шаг
Операция
Р
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 присваивается значение один.
Шаг третий: при i равном единице проверяем условие один меньше или равен пяти, да, условие истинно, значит Р присваивается значение один умноженное на один, будет два. Для i: один плюс один, будет два.
Шаг четвертый: при i равном двум проверяем условие два меньше или равен пяти, да, условие истинно, значит Р присваивается значение 2 умноженное на один, будет 2. Для i: два плюс один, будет три.
Шаг пятый: при i равном трем проверяем условие три меньше или равен пяти, да, условие истинно, значит Р присваивается значение два умноженное на три, будет шесть. Для i: три плюс один, будет четыре.
Шаг шестой: при i равном четырем проверяем условие четыре меньше или равен пяти, да, условие истинно, значит Р присваивается значение шесть умноженное на четыре, будет двадцать четыре. Для i: четыре плюс один, будет пять.
Шаг седьмой: при i равном пяти проверяем условие пять меньше или равен пяти, да ,условие истинно, значит Р присваивается значение двадцать четыре умноженное на пять, будет сто двадцать. Для i: пять плюс один, будет шесть.
Шаг восьмой: при i равном шести проверяем условие шесть меньше или равен пяти, нет, условие ложно, тогда мы выходим из цикла, а в результате получаем последнее значение равное сто двадцати.
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.
Для цикла с постусловием построим блок-схему и трассировочную таблицу. (слайд16)
В результате получаем последнее значение равное сто двадцати на седьмом шаге

И для Цикла с параметром построим блок-схему и трассировочную таблицу. (слайд17)
В результате получаем последнее значение равное сто двадцати на шестом шаге

Задача:
Вывести на экран числа от 1 до 5 в:
a) прямом порядке;
b) обратном порядке.
Математическая модель:
a) 1 2 3 4 5;
b) 5 4 3 2 1.

Блок-схема и программа решения задачи представлена для чисел в прямом порядке и обратном порядке.
(слайд21)

Запишем рассмотренные алгоритмы на языке программирования Паскаль.
(слайд 22)

III. Подведение итогов урока

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

Список использованной литературы
Программы для общеобразовательных учреждений. Информатика 2-11 класс. / Составитель М. Н. Бородин. – 2-е изд., М. Бином. Лаборатория знаний, 2007.- 463 с.: ил.
Информатика и ИКТ. Базовый курс: Учебник для 9 класса / И. Г. Семакин, Л. А. Залогова, С. В. Русаков, Л. В. Шестакова.-3-е изд.- 2-е изд., М.: Бином. Лаборатория знаний, 2007.- 359 с.: ил.
Преподавание базового курса информатики в средней школе: Методическое пособие / И. Г. Семакин, Т. Ю. Шеина. – 2-е изд., исп. И доп.- М.: Бином. Лаборатория знаний, 2004.- 540 с.: ил.
Задачник-практикум. Том 1. под ред. И. Г. Семакина - М. Бином. Лаборатория знаний, 2007.- 309 с.: ил.
Задачник-практикум. Том 2. под ред. И. Г. Семакина М. Бином. Лаборатория знаний, 2007.- 294 с.: ил.
[ Cкачайте файл, чтобы посмотреть ссылку ] Программирование для начинающих.
[ Cкачайте файл, чтобы посмотреть ссылку ] Все о языке программирования Turbo Pascal.
[ Cкачайте файл, чтобы посмотреть ссылку ] Сайт о языке программирования Turbo Pascal.








13PAGE 15


13PAGE 14315



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

Цикл типа ДО

Цикл типа ДЛЯ

Условие

Серия команд

да

нет

Серия команд

i, a, b, h

нет

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

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

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

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



Условие

Серия команд

да

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

Условие

Тело цикла

да

нет

Условие

Серия команд

да

нет

Условие

Серия команд

нет

Серия команд

i:= а, b, h

нач

i:=1

P:=1

i<=5

P:=P*i

i:=i+1

кон

P

да

нет



E:\с альбинк компа\Для ЕГПУ Халикова В.Р\Циклические алгоритмы!!!.pptђ15

Приложенные файлы

Добавить комментарий