Цели
урока:
Проверить знания по предыдущим занятиям; дать понятие
исполнителя алгоритма, а также системы
команд исполнителя.
Задачи урока:
учащиеся
познакомятся с понятием исполнитель;
учащиеся
выяснят, что представляет собой система команд исполнителя;
учащиеся смогут создавать словесные алгоритмы для любого
исполнителя;
учащиеся
будут развивать социально-коммуникативную компетентность.
Форма
работы: индивидуальная, групповая.
Образовательный
продукт: работа в тетрадях по опорным конспектам учебного материала.
План урока:
Организационная часть.
Объяснение
нового материала
Упражнения
по новой теме.
Заключительная
часть.
Ход
занятия.
Первые минуты
занятия уделить для того, чтобы отметить в журнале
присутствующих на занятии учеников. Затем
ознакомить класс с кратким ходом и
целью данного занятия.
Ребята, напомните,
пожалуйста , каким образом произошло слово алгоритм.
Здесь необходимо выслушать ответы учеников. При неправильных ответах учитель дает наводящие вопросы. При получения
нужного ответа учитель продолжает
свой рассказ.
Многие годы понятие «алгоритм» использовалось
математиками для описания правил решения математических задач. Например,
существует алгоритм вычисления квадратного
корня положительного числа, алгоритм нахождения наибольшего общего делителя
двух чисел и многие другие.
Однако не следует считать алгоритм чисто математическим
понятием. Каждый из вас с раннего детства, даже не замечая этого, ежедневно
решает задачи, для описания которых используется тот или иной алгоритм, сформулированный в виде
конечной последовательности однозначных
предписаний.
Например, когда вы уходите в школу в отсутствии
родителей, вам следует выполнить цепочку
операций по обеспечению безопасности квартиры: закрыть форточки, выключить газ и электроприборы, запереть дверь и т.д. Входя в
кабину телефона-автомата, вы видите на стене четкий алгоритм, однозначно описывающий
ваши действия, цель которых - разговор с другом: снять трубку, опустить монету,
набрать номер и т.д. Чтобы приготовить вкусное блюдо, ваша мама раскрывает
поваренную книгу, отыскивает рецепт и, следуя его конкретным указаниям (2
стакана муки, 250 гр. Масла, 1 яйцо..., тесто разрезать на полоски..., в
духовке 20-25 минут...), поставленную перед собой задачу.
Носителями алгоритмов являются рецептурные справочники,
инструкции по использованию бытовой
аппаратуры (от утюга до видеомагнитофона), медицинские рекомендации и описания гимнастических упражнений, даже банки и упаковки
с продуктами.
Каждый
алгоритм создается конкретным автором в результате обобщения прошлого опыта или
технологических разработок и рассчитан на конкретного исполнителя.
Алгоритмы из повседневной жизни всегда предполагают
определенный уровень предварительной подготовки исполнителя и потому излагаются
приблизительно, без перечисления ряда
промежуточных операций, способ выполнения которых избирается самим исполнителем. Даже в простейших ситуациях
вы, не задумываясь, оцените уровень исполнителя.
Если
сестренке, которую вы попросили купить хлеба, уже 12 лет, вы ставите задачу в
общей форме:»Купи черного или белого, в такой-то булочной» и даете денег. Если
же девочка еще не ходит в школу, вам
придется разработать более детальный алгоритм: что делать, если по
дороге встретиться большая собака или строители разрыли тротуар; не забыть получит сдачу и сколько; переходить
внимательно проезжую часть дороги и только на зеленый свет светофора и т.д. автор
кулинарного рецепта предполагает, что хозяйка умеет включать и выключать
газовую и электрическую плиты; регулировать нагрев.
Не
только в быту, но и в технике, и даже в математике многие алгоритмы
формулируются неточно, приблизительно.
Разработанный алгоритм может исполнять как человек, так и
техническое устройство, которые понимают правила записи алгоритма и умеют
выполнять предписываемые им действия.
Придерживаясь указаний алгоритма, исполнитель получит пригодный результат даже
в том случае, когда он не понимает существа решаемой
задачи.
При подготовке алгоритмов, исполнителем которых является
компьютер, приходится учитывать, что
уровень его предварительной подготовки близок к нулю, что самый «умный»
компьютер «глупее» шестилетнего ребенка.
Выполняя
инструкции, записанные в виде программы, компьютер получит результат, удовлетворяющий пользователя. Процесс
подготовки задания для компьютера можно разделить на два общих этапа:
создание
алгоритма, где указываются требования к исходным данным и
результатам, постановка задачи, описание
точной схемы решения с
указанием всех особых ситуаций;
изложение
алгоритма на языке, понятном машине.
Здесь учитель предлагает ученикам по прослушанной
информации дать определение
исполнителю. При прослушанных ответах учитель просит учеников записать определение.
Исполнитель
алгоритма - это тот объект или субъект, для управления которым составлен алгоритм. Система команд исполнителя -
это вся совокупность команд, которые исполнитель умеет выполнять.
Определенная
последовательность действий исполнителя всегда применяется к некоторым исходным
данным. Полный набор данных: необходимый и достаточный набор данных для решения
поставленной задачи.
Алгоритмы можно разделить на два вида: алгоритма для
одного исполнителя и алгоритмы для
нескольких исполнителей. Эти алгоритмы легко отличить по внешнему виду - в алгоритме для нескольких исполнителей в
каждой команде указывается имя исполнителя.
Например:
Один исполнитель
|
Несколько исполнителей
|
Выкопать котлован.
|
Экскаваторщик. Выкопать котлован.
|
Сделать фундамент.
|
Бетонщик. Сделать фундамент.
|
Сложить стены.
|
Каменщик. Сложить стены.
|
Установить окна и двери.
|
Плотник. Установить окна и двери.
|
Сделать крышу.
|
Кровельщик. Сделать крышу.
|
Алгоритмы для одного исполнителя называются процедурно-ориентированными.
При составлении процедурно-ориентированных алгоритмов основная задача - это разбиение сложных действий на более простые, затем эти
простые разбиваются на еще более простые.
Алгоритмы
для нескольких исполнителей называются объектно-ориентированными (объекты - это исполнители). При составлении
объектно-ориентированных алгоритмов
основная задача - это определение набора объектов - исполнителей с указанием действий, который может выполнять каждый
из них, при этом каждый объект —
исполнитель может состоять из нескольких составных частей - тоже являющихся объектами — исполнителями.
В
процедурно-ориентированном подходе действия описываются так, как будто все делаешь сам. В объектно-ориентированном подходе
действия описываются так, как будто отдаешь команды для исполнителя
нескольким помощникам.
Объектно-ориентированный
подход более современен и считается более перспективным. Большинство
современных разработок использует именно этот подход.
Для написания программ при процедурно-ориетированном и
объектно-ориентированном подходах
существуют определенные языки. Процедурно-ориентированный
язык программирования строится на основе использования определенного алфавита и
строгих правил построения предложений. В алфавит языка могут входить
буквы, цифры, математические символы, а также операторы. Такие языки
программирования представляют алгоритм в виде последовательности основных
алгоритмических структур: линейная, ветвление, цикл. К таким языкам относятся:
Бейсик, Паскаль, MSX-Бейсик, С и др.
Объектно-ориентированное программирование является
развитием технологии структурного
программирования, однако имеет свои характерные черты. Основной единицей в объектно-ориентированом
программировании является объект, который заключает в себе, как описывающие его данные, так и средства обработки
этих данных. Объектно-ориентированное
программирование по своей сути - это создание приложений из объектов, подобно
тому, как из блоков и различных деталей строят дома. Одни объекты приходится
полностью создавать самостоятельно, тогда как другие можно
позаимствовать в готовом виде из разнообразных библиотек. В системах объектно-ориентированного программирования обычно
используется графический интерфейс, который позволяет визуализировать
процесс программирования. Появляется возможность создавать объекты, задавать им
свойства и поведение с помощью мыши.
Наиболее
распространенными системами объектно-ориентированного визуального
программирования являются Microsoft Visual Basic и Borland Delphi. 3.
Упражнение
1: Назвать исполнителей следующих видов работы: уборка мусора во дворе, перевозка пассажиров, выдача заработной
платы, прием экзаменов, сдача экзаменов, обучение детей в школе. Попробуйте
сформулировать систему команд исполнителя для каждого из этих исполнителей.
Упражнение
2: Описать систему команд исполнителя «Геометр», который мог бы выполнять геометрические построения с помощью
циркуля и линейки.
Упражнение
3: Описать исполнителя «Графопостроитель», который с помощью «пера» строит на бумаге с нанесенной масштабной
сеткой геометрическую фигуру.
4. Подвести краткий итог, проведенному
занятию. Домашнее задание - знать конспект.
Примечание: при резерве времени можно поработать с
программой «Алгоритмика». |