Основные понятия, рассматриваемые на уроке:
· алгоритм;
· свойства алгоритма;
· способы записи алгоритмов.
Каждый человек в повседневной жизни, в учёбе или на работе решает огромное количество задач самой разной сложности. Сложные задачи требуют длительных размышлений для нахождения решения; простые и привычные задачи человек решает не задумываясь, автоматически. В большинстве случаев решение каждой задачи можно разбить на простые этапы (шаги). Для многих таких задач (установка программного обеспечения, сборка шкафа, создание сайта, эксплуатация технического устройства, покупка авиабилета через Интернет и т. д.) уже разработаны и предлагаются пошаговые инструкции, при последовательном выполнении которых можно прийти к желаемому результату.
Пример 1. Задача «Найти среднее арифметическое двух чисел» решается в три шага:
-
задумать два числа;
-
сложить два задуманных числа;
-
полученную сумму разделить на 2.
Пример 2. Задача «Внести деньги на счёт телефона» подразделяется на следующие шаги:
-
подойти к терминалу по оплате платежей;
-
выбрать оператора связи;
-
ввести номер телефона;
-
проверить правильность введённого номера;
-
вставить денежную купюру в купюроприёмник;
-
дождаться сообщения о зачислении денег на счет;
-
получить чек.
Нахождение среднего арифметического, внесение денег на телефонный счёт — на первый взгляд совершенно разные процессы. Но у них есть общая черта: каждый из этих процессов описывается последовательностями кратких указаний, точное следование которым позволяет получить требуемый результат. Последовательности указаний, приведённые в примерах 1-2, являются алгоритмами решения соответствующих задач. Исполнитель этих алгоритмов — человек.
Алгоритм может представлять собой описание некоторой последовательности вычислений или шагов нематематического характера. Но в любом случае перед его разработкой должны быть чётко определены начальные условия (исходные данные) и то, что предстоит получить (результат). Можно сказать, что алгоритм — это описание последовательности шагов в решении задачи, приводящих от исходных данных к требуемому результату.
Алгоритмами являются изучаемые в школе правила сложения, вычитания, умножения и деления чисел, грамматические правила, правила геометрических построений и т. д.
Каждый алгоритм предназначен для определённого исполнителя.
Исполнитель — это некоторый объект (человек, животное, техническое
устройство), способный выполнять определённый набор команд.
Различают формальных и неформальных исполнителей. Формальный исполнитель одну и ту же команду всегда выполняет одинаково. Неформальный исполнитель может выполнять команду по-разному.
Рассмотрим более подробно множество формальных исполнителей. Формальные исполнители необычайно разнообразны, но для каждого из них можно указать следующие характеристики: круг решаемых задач (назначение), среду, систему команд и режим работы.
Круг решаемых задач. Каждый исполнитель создаётся для решения некоторого круга задач — построения цепочек символов, выполнения вычислений, построения рисунков на плоскости т.д.
Среда исполнителя. Область, обстановку, условия, в которых действует исполнитель, принято называть средой данного исполнителя. Исходные данные и результаты любого алгоритма всегда принадлежат среде того исполнителя, для которого предназначен алгоритм.
Система команд исполнителя. Предписание исполнителю о выполнении отдельного законченного действия называется командой. Совокупность всех команд, которые могут быть выполнены некоторым исполнителем, образует систему команд данного исполнителя (СКИ). Алгоритм составляется с учётом возможностей конкретного исполнителя, иначе говоря, в системе команд
исполнителя, который будет его выполнять.
Режимы работы исполнителя.
Для большинства исполнителей предусмотрены режимы непосредственного управления и программного управления. В первом случае исполнитель ожидает команд от человека и каждую поступившую команду немедленно выполняет. Во втором случае исполнителю сначала задаётся полная последовательность команд (программа), а затем он выполняет все эти команды в автоматическом режиме. Ряд исполнителей работает только в одном из названных режимов.
Не любая инструкция, последовательность предписаний или план действий может считаться алгоритмом. Каждый алгоритм обязательно обладает свойствами, с которыми вы можете познакомиться, посмотрев следующий видеоролик.
Каждый алгоритм предназначен для определённого исполнителя.
Исполнитель — это некоторый объект (человек, животное, техническое устройство), способный выполнять определённый набор команд.
Различают формальных и неформальных исполнителей. Формальный исполнитель не вникает в смысл того, что он делает, и не рассуждает, почему он поступает так, а не иначе. Одну и ту же команду формальный исполнитель всегда выполняет одинаково. Неформальный исполнитель может выполнять команду по-разному.
Рассмотрим более подробно множество формальных исполнителей. Формальные исполнители необычайно разнообразны, но для каждого из них можно указать следующие характеристики: круг решаемых задач (назначение), среду, систему команд и режим работы.
Круг решаемых задач. Каждый исполнитель создаётся для решения некоторого круга задач — построения цепочек символов, выполнения вычислений, построения рисунков на плоскости и т. д.
Среда исполнителя. Область, обстановку, условия, в которых действует исполнитель, принято называть средой данного исполнителя. Исходные данные и результаты любого алгоритма всегда принадлежат среде того исполнителя, для которого предназначен алгоритм. Среду можно рассматривать как полный набор характеристик, описывающих состояние исполнителя.
Система команд исполнителя. Совокупность всех команд, которые могут быть выполнены некоторым исполнителем, образует систему команд данного исполнителя (СКИ). Алгоритм составляется с учётом возможностей конкретного исполнителя, иначе говоря, в системе команд исполнителя, который будет его выполнять.
Режимы работы исполнителя. Для большинства исполнителей предусмотрены режимы непосредственного (ручного) управления и программного управления. В первом случае исполнитель немедленно выполняет каждую поступившую команду. В таком режиме работает пульт кондиционера или телевизора. Во втором случае исполнителю сначала задаётся полная последовательность команд (программа), а затем он выполняет все эти команды в автоматическом режиме. Например, в память стиральной машины заложены разные достаточно сложные программы стирки, каждая из которых предполагает ряд последовательных действий.
Рассмотрим примеры исполнителей.
Пример 6
Исполнитель Черепаха перемещается на экране компьютера, оставляя след в виде линии. Система команд Черепахи состоит из следующих команд:
Вперёд п (где п — целое число) — вызывает передвижение Черепахи на п шагов в направлении движения — в том направлении, куда развёрнуты её голова и корпус;
Направо m (где m — целое число) — вызывает изменение направления движения Черепахи на m градусов по часовой стрелке.
Запись
Повтори к [<Команда 1> <Команда 2> … <Команда п>] означает, что последовательность команд в скобках повторится к раз.
Подумайте, какая фигура появится на экране после выполнения Черепахой следующего алгоритма:
Повтори 12 [Направо 45 Вперёд 20 Направо 45]
Пример 7
Система команд исполнителя Вычислитель состоит из двух команд, которым присвоены номера:
- вычти 1
- умножь на 3
Первая из них уменьшает число на 1, вторая увеличивает число в 3 раза. При записи алгоритмов для краткости указываются лишь номера команд.
Например, алгоритм 21212 означает следующую последовательность команд:
умножь на 3
вычти 1
умножь на 3
вычти 1
умножь на 3
С помощью этого алгоритма число 1 будет преобразовано в 15: ((1 • 3 — 1) • 3 — 1) • 3 = 15.
Пример 8
Исполнитель Робот действует на клетчатом поле, между соседними клетками которого могут стоять стены. Робот передвигается по клеткам поля и может выполнять следующие команды, которым присвоены номера:
При выполнении каждой такой команды Робот перемещается в соседнюю клетку в указанном направлении. Если же в этом направлении между клетками стоит стена, то Робот разрушается.
Что произойдёт с Роботом из примера 8, если он выполнит последовательность команд 32323 (здесь цифры обозначают номера команд), начав движение из клетки Л? Какую последовательность команд следует выполнить Роботу, чтобы переместиться из клетки А в клетку В, не разрушившись при этом от столкновения со стеной?
Пример 9
К пятизначному натуральному числу применяется следующий алгоритм:
- Вычислить сумму первых трёх цифр.
- Вычислить сумму последних двух цифр.
- Записать полученные два числа друг за другом в порядке возрастания (неубывания).
Пример работы алгоритма для числа 56789:
- 5 + 6 + 7 = 18.
- 8 + 9 = 17.
- Упорядочив, получаем 1718.
Выясним наименьшее и наибольшее пятизначные числа, в результате применения к которым этого алгоритма получается такой же результат.
В старших разрядах наименьшего пятизначного числа должны быть самые маленькие цифры из возможных; первая цифра должна быть как можно меньше и т. д. В нашем случае это: 17 = 1 + 7 + 9.
Есть единственный вариант, позволяющий получить вторую сумму из двух цифр: 18 = 9 + 9.
Составим наименьшее пятизначное число: 17999.
В старших разрядах наибольшего пятизначного числа должны быть самые большие цифры; первая цифра должна быть как можно больше и т. д. В нашем случае это 18 = 9 + 9 + 0.
Вторую сумму из двух цифр можно получить только так: 17 = 9 + 8.
Составим наибольшее пятизначное число: 99098.
При разработке алгоритма:
- выделяются фигурирующие в задаче объекты, устанавливаются свойства объектов, отношения между объектами и возможные действия с объектами;
- определяются исходные данные и требуемый результат;
- определяется последовательность действий исполнителя, обеспечивающая переход от исходных данных к результату;
- последовательность действий записывается с помощью команд, входящих в систему команд исполнителя.
Можно сказать, что алгоритм — план управления исполнителем.
Методическая разработка занятия по теме:
«Основы алгоритмизации. Алгоритмы и способы их описания»
Цели занятия:
Образовательная — Познакомить с понятием алгоритма, свойствами дискретности, понятности, точности, конечности, массовости, способами записи алгоритмов. Рассмотреть основные алгоритмические структуры: следования, ветвления, цикла.
Развивающая — развивать мышление, грамотную речь, навыки самоконтроля
развивать умения проводить анализ, синтез, сравнение, обобщать полученные знания, делать выводы
Воспитательная — воспитывать толерантное отношение к мнению другого человека, умение работать в группах, на недопустимость действий, нарушающих этические, правовые нормы работы с информацией
План занятия:
1. Организационный момент
2. Повторение пройденного материала:
-
Изложение нового материала.
4. Задание на дом.
5. Итог урока.
Ход занятия
-
Организационный момент. Сообщение темы, постановка цели урока. Знакомство с ходом проведения занятия.
-
Повторение пройденного материала:
1-й уровень Компьютерное тестирование (Приложение 1);
2-й уровень Работа по вопросам (Приложение 2);
3-й уровень Решение задач (Приложение 3);
-
Изложение нового материала.
-
Понятие алгоритма, свойства алгоpитма.
В науке о моделировании среди многих видов информационных моделей называются и алгоритмические модели. Попробуем разобраться, почему алгоритм можно назвать моделью и что он моделирует.
Как вам известно, алгоритм — это понятное и точное предписание конкретному исполнителю совершить конечную последовательность действий, приводящую к поставленной цели.
Сообщение о происхождении и развитии понятия алгоритм.
Из определения следует, что поставленная цель достигается через деятельность (последовательность действий) некоторого исполнителя.
Исполнитель — это некоторый объект (человек, техническое устройство), способный выполнять определённый набор команд, который составляет его СКИ.
Назовите исполнителей для приведённых ниже видов работ:
Стирка белья – (человек, стиральная машина)
Приготовление кофе – (человек, автомат)
Перевозка пассажиров в поезде – (машинист, поез)
Выдача заработной платы – (кассир)
Разработка рецептур на производстве – (технолог)
Сдача зачёта – (студент)
Набор текста на компьютере – (пользователь)
Создание текстового документа – (текстовый процессор, компьютер)
Различают формальных и неформальных исполнителей. Формальный исполнитель одну и ту же команду всегда выполняет одинаково. Формальное исполнение алгоритма обеспечивает возможность автоматизации деятельности человека. Неформальный исполнитель может выполнять команду по-разному.
Этапы деятельности от цели (постановки задачи) к результату:
-
определение цели;
-
планирование работы исполнителя;
-
работа исполнителя;
-
получение результата.
Где же здесь место алгоритму? Алгоритм — это детальный план работы исполнителя, описание последовательности элементарных действий. Но всякий план или описание есть информационная модель. Следовательно:
Алгоритм является информационной моделью деятельности исполнителя.
Свойства алгоритма (работа с электронным учебником ОИ 1 с. 49)
Не любая инструкция, последовательность предписаний или план действий может считаться алгоритмом. Каждый алгоритм обязательно обладает следующими свойствами: дискретность, понятность, точность, конечность и массовость.
-
дискретность (каждый шаг алгоритма выполняется отдельно от других);
т. е. решение задачи разделёно на отдельные шаги (действия). Каждому действию соответствует команда. Только выполнив одну команду, исполнитель может приступить к выполнению следующей.
-
понятность (в алгоритме используются только команды из СКИ);
-
точность (каждая команда определяет однозначное действие исполнителя);
в алгоритме нет команд, смысл которых может быть истолкован исполнителем неоднозначно.
-
конечность (за конечное число шагов алгоритма получается искомый результат).
-
массовость (алгоритм pазpабатывается в общем виде, т.е. должен быть пpименим для некотоpого класса задач)
Мини итог:
-
Дайте определение алгоритма.
-
Объясните почему алгоритм является информационной моделью деятельности исполнителя
-
Перечислите свойства алгоритма.
-
Что значит свойство дискретности, приведи пример.
-
Что значит свойство точности, приведи пример.
-
Способы записи алгоритмов. Существуют различные способы записи алгоритмов, основными среди них являются:
-
словесные;
-
словесное описание в виде набора высказываний на естественном языке, например правило умножения двух дробей; нахождения (НОД) натуральных чисел (алгоритм Евклида). Чтобы найти НОД двух чисел, составьте таблицу из двух столбцов и назовите столбцы X и Y. Запишите первое из заданных чисел в столбце Х, а второе ‑ в столбце Y. Если данные числа не равны, замените большее из них на результат вычитания из большего числа меньшего. Повторяйте такие замены до тех пор, пока числа не окажутся равными, после чего число из столбца Х считайте искомым результатом.
-
построчная запись ‑ это запись на естественном языке, может содержать математические выражения и формулы, к ней предъявляются дополнительных правила: каждое предписание записывается с новой строки; предписания нумеруются; исполнение алгоритма происходит в порядке возрастания номеров шагов. Например, Построчная запись алгоритма Евклида.
-
-
Обозначить первое из заданных чисел X, второе обозначить Y
-
Если X = Y, то перейти к п.8.
-
Если X Y, то перейти к п.4.
-
Заменить X на X – Y
-
Перейти к п.2.
-
Заменить Y на Y – X
-
Перейти к п.2.
-
Считать X искомым результатом.
-
графические;
-
последовательность рисунков;
-
структуропрограмма;
-
блок-схема – используют для наглядного представлениям решения задачи, предписания изображаются с помощью геометрических фигур, а последовательность указывается с помощью линий, соединяющих фигуры. Направления линий слева направо и сверху вниз считаются стандартными, и изображаются без стрелок, в противоположном случае — со стрелками. Вспомним некоторые условные обозначения блок-схем.
-
Например, Запись алгоритма Евклида с помощью блок‑схемы.
-
алгоритмические языки — формальные языки для записи алгоритмов. Каждый из них характеризуется: алфавитом — набором используемых символов; синтаксисом — системой правил, по которым из символов алфавита образуются правильные конструкции языка; семантикой — системой правил, строго определяющей смысл и способ употребления конструкций языка.
-
школьный алгоритмический язык. Для записи используется некоторое служебные слова: алг (алгоритм), дано, надо, нач (начало), кон (конец), арг (аргумент), рез (результат) и др. При записи алгоритмов в книгах служебные слова выделяются жирным шрифтом, в тетради и на доске — подчёркиванием.
-
Пример программы на школьном алгоритмическом языке:
Алгоритм, позволяющий из полного сосуда ёмкостью 12 л отлить половину, пользуясь двумя пустыми сосудами ёмкостью 8 и 5 л.
-
языки программирования (Turbo Pascal)
program primer_1;
var a, b: integer;
begin
writeln(‘Введите значение a=’);
read(a);
b:=2*a;
writeln(‘b = ‘,b);
end.
Мини итог:
-
Перечислите способы записи алгоритмов.
-
Какой из способов записи обладает большей наглядностью.
-
Основные алгоритмические структуры.
Работа с электронным учебником ДИ учебник Босова с. 73-91, 104 №28-30
Уметь распознавать по блок‑схеме основные алгоритмические конструкции.
Научиться определять значение переменной после выполнения фрагмента алгоритма.
По завершению работы тест в фронтальном режиме.
Разнообразие алгоритмов велико, но для записи любого алгоритма достаточно трёх основных алгоритмических структур: следования, ветвления, повторения. Это положение выдвинул и доказал Эдсгер Вибе Дейкстра (1930-2002) — выдающийся нидерландский учёный, идеи которого оказали огромное влияние на развитие компьютерной индустрии.
Следование — алгоритмическая конструкция, отображающая естественный, последовательный порядок действий. Алгоритмы, в которых используется только структура «следование», называются линейными алгоритмами.
Графическое представление алгоритмической конструкции «следование».
Пример. У исполнителя Робот есть 4 команды перемещения (вверх, вниз, влево и вправо), при выполнении каждой из них Робот перемещается на 1 клетку в соответствующем направлении. По команде закрасить Робот закрашивает клетку, в которой он находится. Запишем линейный алгоритм, исполняя который Робот нарисует на клетчатом поле следующий узор и вернётся в исходное положение, обозначенное звёздочкой:
Задание‑анимация Линейный алгоритм
Мини итог:
Приведите примеры линейного алгоритма:
а) из повседневной жизни;
б) из литературного произведения;
в) из любой предметной области, изучаемой в школе.
В тетради составить блок-схему алгоритма нахождение периметра прямоугольника. Один ученик записывает полученный алгоритм на доске, проверяя задание.
Ветвление — алгоритмическая структура, в зависимости от выполнения некоторого условия, совершается одна или другая последовательность действий. Алгоритмы называют разветвляющимися.
Структура «ветвление» |
|
а) полная форма |
а) неполная форма |
На алгоритмическом языке команды ветвления записываются так: |
|
Примеры |
|
Задание‑анимация Разветвляющийся алгоритм
Мини итог:
Приведите примеры разветвляющегося алгоритма:
а) из повседневной жизни;
б) из литературного произведения;
в) из любой предметной области, изучаемой в школе.
Составить блок-схему разветвляющегося алгоритма: задумайте число, прибавь 8, если полученное число меньше 22, то прибавь 5, иначе отнять 5. вывести полученный результат.
Повторение — алгоритмическая конструкция, представляющая собой последовательность действий, выполняемых многократно. Алгоритмы, содержащие конструкцию повторения, называют циклическими или циклами. Последовательность действий, многократно повторяющаяся в процессе выполнения цикла, называется телом цикла.
Типы циклов |
||
1)цикл с заданным условием продолжения работы; |
2)цикл с заданным условием окончания работы; |
3)цикл с заданным числом повторений. |
цикл – ПОКА, цикл с предусловием |
цикл-ДО, цикл с постусловием |
цикл-ДЛЯ, цикл с параметром |
Запись на алгоритмическом языке:
Выполняется цикл_ПОКА следующим образом:
1) проверяется условие (вычисляется значение логического выражения);
2)если условие удовлетворяется (Да), то выполняется тело цикла и снова удовлетворяется, то выполнение цикла заканчивается.
Возможны случаи, когда тело цикла не будет выполнено ни разу.
Запись на алгоритмическом языке:
Запись на алгоритмическом языке:
Выполняется цикл-ДЛЯ следующим образом: 1) параметру цикла присваивается начальное значение; 2) параметр цикла сравнивается с конечным значением; если параметр цикла не превышает конечное значение, то выполняется тело цикла, увеличивается значение параметра цикла на шаг и снова осуществляется проверка параметра цикла; если же параметр цикла превышает конечное значение, то выполнение цикла заканчивается.
В отличие от двух предыдущих конструкций (цикл-ПОКА, цикл-ДО) цикл-ДЛЯ имеет строго фиксированное число повторений, что позволяет избежать зацикливание, т.е ситуации, когда тело цикла выполняется бесконечно.
Задание‑анимация Циклический алгоритм
Мини итог:
Приведите примеры циклического алгоритма:
а) из повседневной жизни;
б) из литературного произведения;
в) из любой предметной области, изучаемой в школе.
Пример. Алгоритм переправы через реку
-
Закрепление материала в ходе выполнения фронтального тестирования. (Приложение 4)
-
Дом задание ОИ1 §9, 16 Составить алгоритм решения задачи: Из кучки, содержащей любое, большее трёх, количество каких-либо предметов, двое играющих по очереди берут по одному или по два предмета. Выигрывает тот, кто своим очередным ходом сможет забрать все оставшиеся предметы.
Алгоритм — это предписание исполнителю совершать определённую последовательность действий для получения решения задачи за конечное число шагов.
Алгоритмизация — процесс разработки алгоритма для решения задачи.
Свойства алгоритмов
1. Понятность — алгоритм должен быть написан на понятном для исполнителя языке.
2. Дискретность (прерывность, раздельность) — алгоритм должен представлять запись отдельных шагов. Необходимо использовать минимальное количество шагов. Каждый шаг должен приносить определённый результат.
3. Определённость — алгоритм должен быть чётким и восприниматься однозначно.
4. Результативность (или конечность) — алгоритм должен обязательно приводить к результату.
5. Массовость — алгоритм решения задачи применим для некоторого класса задач, различающихся лишь входными данными.
Способы записи алгоритмов
- Словесный (описание алгоритма на естественном языке).
- Графический (алгоритм составляется из специальных блоков — геометрических фигур).
- Псевдокоды (описания алгоритмов на условном алгоритмическом языке).
- Программный (тексты на различных языках программирования).
Урок составлен по учебнику «ФГОС ООО. Информатика. 8 класс» авторы: Босова Л.Л., Босова А.Ю.
Целями урока являются
Образовательные:
- ввести понятие алгоритма,
- рассмотреть примеры алгоритмов,
- изучить свойства алгоритмов,
- познакомиться с историей возникновения термина «алгоритм»;
- ввести понятие исполнителя алгоритма,
- рассмотреть примеры формальных и неформальных исполнителей,
- рассмотреть характеристики формального исполнителя;
- разобрать типовую задачу в формате ОГЭ (тип 14) на составление программы для формального исполнителя;
- закрепить рассматриваемый материал с помощью интерактивных и тестовых заданий.
Воспитательные:
- развитие самостоятельности суждений;
- умение работать в группе.
Развивающие:
- развитие логического мышления;
- развитие алгоритмического мышления;
- развитие кругозора;
- развитие памяти, внимательности,
- умение анализировать свою деятельность.
Урок состоит из следующих этапов:
- Мотивация и актуализация.
- Введение новых понятий. Алгоритм и примеры алгоритмов. История алгоритма.
- Первичное закрепление введённых понятий.
- Пробное учебное действие.
- Обобщение и фиксация результатов пробного действия.
- Введение понятия исполнителя алгоритмов.
- Разбор задачи в формате ОГЭ.
- Введение новых понятий. Свойства алгоритма.
- Закрепление полученных знаний.
- Подведение итогов урока и постановка дом. работы.
- Рефлексия.
К уроку прилагается авторская презентация, сюжеты видео с YouTube и тестовые задания в ресурсе LearningApps.org
Комментарии к этапам урока
1 этап (слайды 1-7)
«Здравствуйте, ребята! Сегодня мы начинаем с вами изучать новый модуль «Основы алгоритмизации». Тема нашего урока: «Алгоритмы и исполнители». На уроке вы познакомитесь с новыми понятиями: алгоритм, исполнитель алгоритма, узнаете о свойствах алгоритма и научитесь решать задачи для различных исполнителей». Демонстрируются 1-2 слайды презентации.
«Каждый из вас встречается на уроках и в повседневной жизни огромное количество задач самого разного уровня сложности. Рассмотрим примеры». Демонстрируются 3-6 слайды презентации. Учитель обсуждает с учащимися данные процессы.
В итоге ставится проблемная ситуация: «Пополнение счёта телефона через терминал, приготовление блюд, выполнение правил дорожного движения, решение математического уравнения или задачи, организация Умного дома — совершенно разные процессы. Но у них есть общая черта. Какая?». Примерный ответ: для удобства их решения часто предлагаются пошаговые инструкции, при выполнении которых мы можем достичь желаемый результат.
«Как вы думаете, насколько важно следовать данным инструкциям?» Обсуждаем.
«Так что такое алгоритм?» (слайд 7).
2 этап (слайды 8-9)
Вводим понятие алгоритма и рассматриваем схему работы любого алгоритма.
Записываем основные понятия и выводы в тетрадь:
- определение алгоритма,
- схему работы алгоритма,
- «Арабский учёный Мухаммед Аль Хорезми (8-9 век) впервые ввёл понятие алгоритма».
«Чтобы получше разобраться в этом вопросе посмотрим вместе видеосюжет». Демонстрируется сюжет продолжительностью 1:55 об истории возникновения термина «алгоритм». Ссылка: https://youtu.be/WxD5ffQzfLQ.
Мухаммед Аль Хорезми жил ок. 780 – ок. 850. Описал и сформулировал десятичную систему счисления, правила выполнения арифметических действий над целыми числами и обыкновенными дробями. Правила начинались словами: «Алгоризми сказал…». Алгоризми (Алгоритмус) — это автор правил. Правила стали называть алгоритмами. В XX веке возникла наука, которая занимается теорией алгоритмов.
3 этап (слайды 10-11)
Интерактивное задание «Соберите алгоритм «Открывание входной двери квартиры»» (слайд 10). Варианты правильного ответа на слайде 11. Обращаем внимание, что шаг УБРАТЬ КЛЮЧ можно поставить на последнее место, поэтому получаем два варианта ответа.
4 этап (слайд 12)
Перед введением понятия исполнителя алгоритмов предлагаем учащимся посмотреть два сюжета и ответить на поставленные вопросы.
Сюжет 1. Пылесос. Продолжительность ролика 0:52. Ссылка: https://youtu.be/jPikvNapYqs
Сюжет 2. Медведи в цирке. Продолжительность ролика 0:47. Ссылка: https://youtu.be/PQc6x30rBK8
Вопросы для обсуждения:
- Что или кто являются героями сюжета?
- Как можно назвать данные объекты?
- В чём разница между героями данных сюжетов?
- В чём разница между действиями героев видеосюжета?
5 этап (слайд 13)
Итоги обсуждения вместе с учащимися можно занести в таблицу на интерактивной доске. Таблица с ответами приведена на слайде 13. Таким образом, мы подготовили учащихся к введению понятия формального и неформального исполнителя алгоритмов.
6 этап (слайды 14-18)
Вводим понятие исполнителя алгоритмов.
Каждый алгоритм предназначен для определённого исполнителя. Исполнитель — это некоторый объект (человек, животное, техническое устройство), способный выполнять определённый набор команд. Мы узнали, что различают формальных и неформальных исполнителей. Формальными исполнителями могут быть технические устройства, например, пылесос (как в нашем сюжете 1) или исполнитель в среде программирования, например, Чертежник, Робот, Черепаха, Кузнечик, Рисователь, Водолей в среде КуМир. К неформальным исполнителям можно отнести человека или животное (как в нашем сюжете 2). Формальный исполнитель выполняет одну и ту же команду всегда одинаково, а неформальный исполнитель может выполнять команду по-разному. Формальные исполнители разнообразны, но все они имеют следующие характеристики:
- Круг решаемых задач.
- Среда исполнителя — область, обстановка, условия, в которых действует исполнитель.
- Система команд исполнителя (СКИ) — совокупность всех команд, которые могут быть выполнены исполнителем.
- Режимы работы исполнителя. Для многих исполнителей — это режимы непосредственного управления и программного управления.
В качестве примеров обсуждаем характеристики исполнителей Робот, Чертежник и Водолей в среде Кумир. Рассматриваем этапы разработки алгоритма. Подводим итог, что алгоритм можно рассматривать как модель деятельности исполнителя алгоритмов.
7 этап (слайд 19-20)
Рассматриваем задачу в формате ОГЭ (тип 14). Краткое условие и решение задачи учащиеся записывают в тетрадь.
Задача. Система команд Вычислитель состоит из двух команд, которым присвоены номера:
1 — прибавить 1
2 — умножить на 2.
Первая из них увеличивает число на 1, вторая увеличивает число в 2 раза. При записи алгоритмов для краткости указываются лишь номера команд. Например, алгоритм 12211 означает следующую последовательность команд:
прибавь 1
умножь на 2
умножь на 2
прибавь 1
прибавь 1
С помощью такого алгоритма число 1 будет преобразовано в 10.
Запишите алгоритм для исполнителя Вычислитель, содержащий не более 6-ти команд, получения из числа 5 числа 47.
Объяснения к решению:
Эффективный способ решения задач такого типа — «раскрутить» алгоритм с конца.
1 шаг. 47 не делится на 2, значит, на последнем месте алгоритма применялась команда 1. Вычитаем из 47 число 1 и получаем 46.
2 шаг. 46 делится на 2, значит, число 46 могли получить с помощью команды 2. Число 46 делим на 2 и получаем 23. Если есть возможность применить команду 2, то лучше её использовать, чтобы в алгоритме было как можно меньше шагов.
3 шаг. 23 не делится на 2, поэтому получаем 22 (23 — 1).
4 шаг. Из числа 22 получаем 11 с помощью команды, обратной команде 2.
5 шаг. Число 11 не делиться на 2, поэтому получаем 10 с помощью команды, обратной команде 1.
6 шаг. Число 10 делится на 2. Получаем искомое число 5 с помощью команды, обратной команде 2.
Таким образом, восстановленный алгоритм с конца выглядит следующим образом:
47-46-23-22-11-10-5. Значит, прямой алгоритм получения числа 47 из числа 5 выглядит так:
5-10-11-22-23-46-47 и получаем набор команд 212121. В этом алгоритме не более 6-ти команд.
Ответ: 212121.
8 этап (слайды 21-26) Свойства алгоритма
Как вам уже известно, не всякая последовательность предписаний, инструкция или план действий может называться алгоритмом. Каждый алгоритм обязательно обладает следующими свойствами: дискретность, понятность, определённость, результативность и массовость. Насколько позволяет время обсуждаем свойства и примеры на слайдах.
9 этап
Тестовое задание 1
Проверяем понимание алгоритма и его свойств. Ссылка на задание: https://learningapps.org/4967620.
Выберите, что из перечисленного является алгоритмом. Укажите один или несколько правильных вариантов ответа:
- План решения квадратного уравнения
- Характеристика литературного героя
- Инструкция по сборке шкафа-купе
- Описание последовательности действий при чрезвычайной ситуации
- Схема метро
- Карта Москвы
Правильный ответ:
- План решения квадратного уравнения
- Инструкция по сборке шкафа-купе
- Описание последовательности действий при чрезвычайной ситуации
Тестовое задание 2
Проверяется умение решить задачу в формате ОГЭ (тип 14). Ссылка: https://learningapps.org/4967659.
Ученики на интерактивной доске или мобильных устройствах выполняют тестовое задание.
Если время позволяет, то можно обсудить решения учащихся.
Условие задачи:
Система команд исполнителя Вычислитель состоит из двух команд, которым присвоены номера:
1 — вычти 1
2 — умножь на 3
При записи алгоритма для краткости указываются только номера команд. Составьте алгоритм, содержащий не более 5-ти команд, который число 1 переводит в число 15. Если таких алгоритмов несколько, то запишите один из них.
Комментарий к решению: Рассмотрев алгоритм с конца, получаем следующую цепочку
15–5–6–2–3–1. Таким образом, прямая цепочка вычислений 1–3–2–6–5–15 позволяет получить число 15 из числа 1 за пять команд 21212. Количество команд не более пяти.
Ответ: 21212
Этап 10 (слайд 27)
Подводим общие итоги урока и комментируем домашнее задание. Домашнюю работу можно дать по учебнику — прочитать параграф учебника, ответить на вопросы и выполнить задания после параграфа.
Этап 11 (слайд 28)
Проводим рефлексию. «Выберите вариант картинки, которая соответствует вашей оценке своей деятельности на уроке». Рефлексию можно провести с помощью цветных карточек или с помощью ресурса https://plickers.com/. В этом случае результат будет на экране интерактивной доски.