«Урок на тему «Циклические алгоритмы»


Тема урока: «Циклические алгоритмы»
Цель:
Образовательная. Организовать деятельность учащихся по изучению и первичному закреплению понятия алгоритм, программы, структуры программы, научить создавать программы с циклом
Развивающая. Развивать алгоритмическое мышление, познавательные интересы, навыки работы на компьютере.
Воспитательная. Продолжить формирование коммуникативной культуры, информационной культуры, внимательности, аккуратности, дисциплинированности.
Тип урока: изучение нового материала
Форма урока: синтетическая.
Место урока в учебной теме: первичныйМетоды и методические приемы:
1 Информационно - рецептивный:а) словесный: рассказ - объяснение, описание, беседа,
б) наглядный: иллюстрации, демонстрация, ТСО.Приемы обучения: изложение информации, объяснение, активизация внимания и мышления, получение из текста и иллюстраций новых знаний, работа с раздаточным материалом.2. Репродуктивный. Приемы обучения: подача материала в готовом виде, конкретизация и закрепление уже приобретенных знаний.3. Визуальный: составление логических цепочек.4. Суггестивный: применение различных видов искусства.
5. Перцептивный (восприятие и связь с жизнью): 6. Релаксопедический: психологическая разгрузка.Межпредметные связи: математика, экономика
Материалы и оборудование: флипчарт, проектор, ноутбук
Основные понятия и термины: цикл, программа
Ход урока
Организационный момент
Актуализация знаний
Фронтальный опрос
Что такое разветвляющийся алгоритм?
Что такое линейный алгоритм? Приведите примеры.
Основной алгоритм построения в среде ГРИС
Изучение нового материала
Большинство практических задач требует многократного повторения одних и тех же действий, т. е. повторного использования одного или нескольких операторов.
Пусть требуется ввести и обработать последовательность чисел. Если чисел всего пять, можно составить линейный алгоритм. Если их тысяча, записать линейный алгоритм можно, но очень утомительно и нерационально. Если количество чисел к моменту разработки алгоритма неизвестно, то линейный алгоритм принципиально невозможен.
Другой пример. Чтобы найти фамилию человека в списке, надо проверить первую фамилию списка, затем вторую, третью и т.д. до тех пор, пока не будет найдена нужная или не будет, достигнут конец списка. Преодолеть подобные трудности можно с помощью циклов.
Циклом называется многократно исполняемый участок алгоритма (программы). Соответственно циклический алгоритм — это алгоритм, содержащий циклы.
Различают два типа циклов: с известным числом повторений и с неизвестным числом повторений. При этом в обоих случаях имеется в виду число повторений на стадии разработки алгоритма.
Существует 3 типа циклических структур:
Цикл с предусловием;
Цикл с постусловием;
Цикл с параметром;
Иначе данные структуры называют циклами типа «Пока», «До», «Для».
Графическая форма записи данных алгоритмических структур:
Цикл типа Пока
Цикл типа ДОЦикл типа ДЛЯУсловие
Серия команд
да
нет
Серия команд
i, a, b, h
нет
Виды циклических алгоритмов
Цикл с предусловием
Цикл с постусловием
Цикл с параметром
Условие
Серия команд
да
SHAPE \* MERGEFORMAT Цикл типа Пока
Условие
Тело цикла
да
нет

Цикл с предусловием (иначе цикл пока) имеет вид:
Форматы записи операторов алгоритма Блок-схема Форматы записи операторов на Паскале
Пока (условие)
нцсерия команд
кцУсловие
Серия команд
да
нет
while условие do
begin
серия команд;
end;
где
условие – выражение логического типа.
Цикл может не выполняться ни разу, если значение логического выражения сразу же оказывается ложь.
Цикл с постусловием (иначе цикл до) имеет вид:
Форматы записи операторов алгоритма Блок-схема
В алгоритмическом языке нет команды которая могла бы описать данную структуру, но ее можно выразить с помощью других команд(Например, ветвления). Условие
Серия команд
нет

где
условие – выражение логического типа.
Цикл с параметром (иначе цикл для) имеет вид:
Форматы записи операторов алгоритма Блок-схема
Для i от а до b шаг h делай
НцСерия команд
кцСерия команд
i:= а, b, h

где
i- параметр цикла;
a – начальное значение цикла;
b- конечное значение цикла;
h-шаг изменения параметра.
Структура данного цикла иначе называют циклом i раз.
Эта команда выполняется таким образом: параметру i присваивается начальное значение а, сравнивается с конечным значением b и, если оно меньше или равно конечному значению b, выполняется серия команд. Параметру присваивается значение предыдущего, увеличенного на величину h - шага изменения параметра и вновь сравнивается с конечным значением b.
Обсудим решение следующей задачи.
Задача 1. Исходное положение: ГРИС — у левого края поля, направление — на восток. Требуется нарисовать горизонтальную линию через весь экран.
Задачу можно решить, написав 15 раз команду шаг (если поперек поля рисунка 15 шагов). Но есть и более короткий вариант программы. Вот он:
пока впереди не край, повторятьнц         шагкцЗдесь использована команда, которая называется циклон. Формат команды цикла следующий:
пока <условие>, повторятьнц                <тело цикла>кцСлужебное слово нц обозначает начало цикла, кц — конец цикла.
Это первая команда из СКИ, которая использует обратную связь между графическим исполнителем и управляющим им компьютером. Она заключается в том, что проверяется, не вышел ли ГРИС на край поля и не грозит ли ему следующий шаг или прыжок в этом направлении аварией. Проверяемые условия звучат так: «впереди край?» или «впереди не край?». На что машина получает от исполнителя ответ «да» или «нет».
В приведенном примере проверяется условие «впереди не край?». Если «да», то делается шаг (т. е. выполняется <тело цикла>). Затем происходит возврат на проверку условия, и все повторяется. Если проверка условия дает отрицательный результат (т. е. впереди край), то выполнение цикла завершается и исполняется следующая команда программы.
При программировании цикла важно думать о том, чтобы цикл был конечным. Цикл, записанный выше, — конечный. Двигаясь в одном направлении, исполнитель обязательно достигнет края, и на этом выполнение цикла закончится.
Ситуация, при которой выполнение цикла никогда не заканчивается, называется зацикливанием. Пусть ГРИС находится в середине поля. Исполнение следующего цикла:
пока впереди не край, повторять нц       шаг       повороткцникогда не закончится. ГРИС будет бесконечно рисовать квадратик, так как проверка условия «впереди не край?» всегда будет давать положительный ответ.
Цикл в процедуре
-81915613410Задача 2. Теперь составим программу, по которой графический исполнитель нарисует прямоугольную рамку по краю поля. Исходное положение: ГРИС находится в левом верхнем углу, смотрит на юг.
Рамка состоит из четырех линий, поэтому разумно воспользоваться процедурой, проводящей линию от края до края поля. Опять будем действовать методом последовательной детализации. Напишем сначала основную программу.
программа Рамканач    сделай ЛИНИЯ     поворот    сделай ЛИНИЯ     поворот    сделай ЛИНИЯ     поворот     сделай ЛИНИЯ кон
Программа проведения линии нами уже рассматривалась. Осталось оформить ее в виде процедуры.
процедура ЛИНИЯнач        пока впереди не край, повторять        нц                 шаг        кцкон
22860528320При составлении этой программы использовалась одношаговая детализация в такой последовательности:
Подведение итогов урока
И так мы рассмотрели следующие вопросы:
Алгоритмическая структура цикл;
Виды алгоритмических структур:
Цикл с предусловием;
Цикл с послеусловием;
Цикл с параметром;
Рассмотрели способы записи данных структур;
Разобрали примеры решения задач с помощью этих структур.
Домашнее задание
§ 6 стр. 33 – 39, задание 7,8 стр. 39

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


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