Информатика
Тема 3: Алгоритм и исполнителиУрок 4: Формы записи алгоритмов. Исполнители
- Видео
- Тренажер
- Теория
Тема: Алгоритм и исполнители
Урок: Формы записи алгоритмов. Исполнители
1. Тема урока
На этом уроке мы познакомимся с исполнителями алгоритмов, то есть с теми, в чьи задачи и обязанности входит исполнение последовательности действий, описанной в алгоритмах.
2. Исполнители алгоритмов
Мы помним, что алгоритмы должны быть строгими, чёткими. То есть, алгоритм должен быть таким, чтобы его исполнитель не задумывался над каждым следующим шагом. Грубо говоря, исполнитель не должен «думать», а должен механически выполнять последовательность действий.
Естественно, возникла необходимость в стандартизации записи алгоритмов. Представьте себе, что каждый человек записывает алгоритм произвольным образом, как ему удобно. Естественно, у тех, кому придётся выполнять эти алгоритмы, будет возникать путаница. Например, представим, что все учителя выставляют оценки на своё усмотрение: кто-то продолжит ставить по 5-балльной шкале, кто-то перейдёт на 12-балльную, кто-то поставит оценки по 100-балльной шкале, а для кого-то будет достаточна система «зачёт-не зачёт». И как теперь поступить человеку, который отвечает за распределение «золотых медалей»? Раньше у него был чёткий алгоритм: золотую медаль дать тому, у кого все оценки – «5». А теперь? 85 баллов – это «4» или «5»? А 86 баллов? Или 5 баллов оставить по любой шкале? Тогда возникнет вопрос, «зачёт» – это 5 баллов или нет?
Как видно из этого примера, алгоритмы должны быть максимально стандартизированы.
Сегодня мы поговорим о форме записи алгоритмов, а также о том, кто исполняет эти самые алгоритмы.
Современного человека окружает множество разнообразных технических устройств: телевизор, магнитофон, фотоаппарат, телефон, стиральная машина, автомобиль и пр. (Рис. 1). Каждое из этих устройств предназначено для решения своей задачи и способно выполнять некоторый ограниченный набор действий, или команд.
Устройство, способное выполнять определенный набор команд, мы будем называть исполнителем.
Команды, которые может выполнить конкретный исполнитель, образуют систему команд исполнителя (СКИ). Исполнители бывают разные. Одним из самых простых исполнителей можно считать кнопку включения/выключения электропитания на корпусе монитора.
Более сложным исполнителем является современная стиральная машина, в электронную память которой заложены разработанные инженерами различные программы стирки белья (Рис. 2). Весь процесс стирки (замачивание, отстирывание, полоскание, отжим, сушка) машина выполняет автоматически, без участия человека, но по программе, выбранной человеком.
Среди автоматических устройств наиболее совершенными исполнителями являются роботы (Рис. 3).
Едва ли человек сможет так быстро, безошибочно и качественно собрать сложнейшую электронную плату, как это делает робот-манипулятор на автоматизированном производстве (Рис. 4).
Почему в тестах не ставят 5?
Большинство из вас через несколько лет будут поступать в высшие учебные заведения и, соответственно, сдавать вступительные экзамены. Сейчас они проводятся в форме Единого Государственного Экзамена (ЕГЭ). Эта форма очень популярна в мире. Например, в Украине существует аналог ЕГЭ – ВНО (внешнее независимое оценивание).
Казалось бы, до этих экзаменов ещё жить и жить – зачем же заводить о них разговор?
Нас будет интересовать система оценивания таких тестов.
Дело в том, что оценки на ЕГЭ выставляются по 100-балльной шкале. Возникает вопрос – зачем?
Чем не устраивает обычная 5-балльная шкала?
Проблема в том, что каждый предмет имеет свои специфические особенности, поэтому заданий по каждому предмету разное количество, оцениваются они тоже по-разному. Если бы не было единой шкалы, то по разным предметам ученик мог бы набрать разное количество баллов. И как бы тогда сравнивали результаты по разным предметам?
Получалось бы, что один предмет «весомее», чем другой. Согласитесь – несправедливо. Поэтому все баллы по специальному алгоритму переводятся в единую 100-балльную шкалу. Почему не хватает 5 баллов? Это тоже легко объяснить – представьте, сколько всего выпускников сдаёт ЕГЭ ежегодно. Естественно, разброс их результатов очень большой. Поэтому поделить их на 4 категории: 2, 3, 4, 5 весьма проблематично. Можно было бы ввести баллы в стиле 4,375, но это слишком громоздко и неудобно. Поэтому гораздо удобнее использовать 100-балльную шкалу.
В Украине тоже используется 100-балльная шкала, только баллы начисляются от 100 до 200 баллов. То есть, меньше 100 баллов набрать нельзя.
3. Универсальный исполнитель алгоритмов
Самый впечатляющий пример исполнителя – компьютер. Его отличительная черта – универсальность. Вы знакомы с компьютерными программами, предназначенными для обработки текстовой, числовой и графической информации, с обучающими программами и компьютерными играми. Кроме того, существуют программы, с помощью которых компьютер управляет работой других связанных с ним устройств (исполнителей).
Во многих случаях и сам человек является исполнителем алгоритмов. Например, каждый из нас при определении времени по часам со стрелками является исполнителем следующего алгоритма:
- если у часов есть числовые метки, то перейти к пункту 2; если нет, то каждой из 12 обычных меток мысленно поставить в соответствии числа от 1 до 12, помня, что 12 находится вверху, 3 – справа, 6 – снизу, 9 – слева, после этого перейти к пункту 2;
- определить, между какими целыми числами находится маленькая стрелка: количество часов равно меньшему из этих чисел; если маленькая стрелка указывает строго на какое-то целое число, то количество часов равно этому числу;
- определить, между какими целыми числами находится большая стрелка: умножить меньшее из этих чисел на 5; если стрелка указывает строго на какое-то целое число, то умножить его на 5 – это и будет количество минут – и перейти к пункту 5;
- определить, на какую по счёту маленькую метку от меньшего целого числа, найденного в пункте 3, указывает минутная стрелка, затем прибавить номер этой метки к числу, полученному в пункте 3 – это и будет количество минут;
- получить итоговое время: количество часов, полученное в пункте 2 и количество минут, полученное в пунктах 3 или 4 (Рис. 5).
Как видим, сам по себе алгоритм достаточно сложен в описании, хотя его выполнение у нас занимает не больше 2 секунд. Это связано с тем, что частое выполнение приводит к автоматизации большинства действий и ускорения процесса.
Итак, исполнитель – это человек, группа людей, животное или техническое устройство, способные выполнять заданные команды.
Любой исполнитель имеет ограниченную систему команд. Даже среди людей вряд ли найдется исполнитель, умеющий делать все. Если в качестве исполнителей рассматривать школьников, то шестиклассник способен выполнять значительно больше предписаний, чем ученик первого класса, но гораздо меньше, чем выпускник.
Разработка алгоритма – трудоемкая задача, требующая от человека глубоких знаний и больших затрат времени. Решение задачи по готовому алгоритму требует от исполнителя только строгого следования заданным предписаниям. С этим связана возможность автоматизации деятельности человека:
- процесс решения задачи представляется в виде последовательности простейших операций;
- создается машина (автоматическое устройство), способная выполнять эти операции в последовательности, заданной в алгоритме;
человек освобождается от рутинной деятельности, выполнение алгоритма поручается автоматическому устройству.
Можно ли прожить без алгоритмов?
Мы много говорим о важности алгоритмов в жизни человека. Однако может возникнуть вопрос: можно ли прожить без алгоритмов?
Сфера применения алгоритмов проста: алгоритмы нужны тогда, когда необходимо научить кого-то или что-то выполнять определённые функции, не особо вдаваясь в подробности.
Действительно, даже в школе алгоритмы решения тех или иных задач формулируются скорее для того, чтобы школьники могли при случае вспомнить правила, по которым эти задачи надо решать. Понимание же решения происходит лишь тогда, когда ученик не просто запоминает алгоритм, а понимает, почему алгоритм выглядит именно так и умеет составлять аналогичный алгоритм для решения видоизменённых задач.
Собственно, этим человек и отличается от компьютера: компьютер может лишь выполнять функции, которые в него «запрограммирует» человек. Да, компьютер может делать их гораздо быстрее, чем люди, но исключительно по алгоритму, составленному людьми.
В последнее время всё больше и больше попыток предпринимается для создания так называемого искусственного интеллекта, который позволит компьютеру самому принимать какие-то решения и выполнять определённые самостоятельные действия.
На данный момент максимальным известным прогрессом можно считать возможность компьютера «анализировать» свои ошибки. То есть, существует ряд алгоритмов, которые позволяют компьютеру анализировать результат своих действий в тех или иных ситуациях и корректировать своё поведение в дальнейшем в аналогичных ситуациях, в зависимости от достигнутого результата.
У людей гораздо больше ценится именно возможность мыслить нестандартно, не по шаблону. Ведь именно креативно мыслящие люди, то есть те, кто не слепо копирует существующие алгоритмы, а придумывает свои, являются основными двигателями прогресса. Ведь не могло быть алгоритма для придумывания компьютера, поскольку не существовало самого компьютера.
Примером важности нешаблонных действий могут служить различные виды спорта. Например, в футболе больше всего ценятся те футболисты, которые могут сыграть нестандартно, неожиданно для соперника. Безусловно, существуют определённые алгоритмы подготовки хороших футболистов, но хорошие не всегда могут стать лучшими.
4. Формы записей алгоритмов
Чтобы составить алгоритм, необходимо знать систему команд предполагаемого исполнителя, правила записи отдельных команд и всего алгоритма в целом. Будем рассматривать алгоритмы, исполнителем которых является человек. Последовательность шагов, которые выполняются человеком при решении некоторой задачи, удобно записывать в виде нумерованного списка (словесная форма), таблицы или изображать с помощью блок-схемы. В последнем случае для обозначения шагов алгоритма используются следующие геометрические фигуры:
1.
Овал: Начало или окончание процесса.
2.
Параллелограмм: Ввод или вывод.
3.
Ромб: Принятие решения.
4.
Прямоугольник: Выполнение действия.
Последовательность действий указывается с помощью стрелок, соединяющих фигуры, обозначающие шаги алгоритма. Вот так, например, с помощью блок-схемы можно представить алгоритм кипячения воды с помощью электрического чайника:
Пример записи алгоритма
Давайте попробуем вместе составить алгоритм действий и изобразить его в виде блок-схемы.
В качестве примера, возьмём процесс покупки билета на поезд.
Сначала составим словесную схему:
- Прийти в ж/д кассы.
- Дождаться своей очереди.
- Спросить, есть ли билеты, указав при этом: дату отправления, приблизительное время отправления, пункт отправления и пункт назначения и номер поезда.
- Если такой билет есть, купить его.
- Если такого билета нет, узнать, какие ещё есть поезда, удовлетворяющие остальным критериям.
- Выбрать из предложенного списка поездов самый подходящий и купить билет на него.
Мы, безусловно, упростили схему покупки в целях экономии места и времени.
Теперь изобразим блок-схему данного алгоритма, пользуясь стандартной формой записи:
На этом уроке мы поговорили об исполнителях алгоритмов и формах их записи.
На следующем уроке мы поговорим о типах алгоритмов.
Список литературы
- Босова Л.Л. Информатика и ИКТ: Учебник для 6 класса. – М.: БИНОМ. Лаборатория знаний, 2012
- Босова Л.Л. Информатика: Рабочая тетрадь для 6 класса. – М.: БИНОМ. Лаборатория знаний, 2010.
- Босова Л.Л., Босова А.Ю. Уроки информатики в 5-6 классах: Методическое пособие. – М.: БИНОМ. Лаборатория знаний, 2010.
Дополнительные рекомендованные ссылки на ресурсы сети Интернет
- Фестиваль педагогических идей "1 сентября" (Источник).
- Методическая копилка учителя информатики (Источник).
- Nsportal.ru (Источник).
Домашнее задание
- §3.2, 3.3 (Босова Л.Л. Информатика и ИКТ: Учебник для 6 класса);
- Стр. 72 задание 4 (Босова Л.Л. Информатика и ИКТ: Учебник для 6 класса);
- Стр. 75 задание 3 (Босова Л.Л. Информатика и ИКТ: Учебник для 6 класса);