Компьютер формальный или неформальный исполнитель
Обращаем Ваше внимание, что в соответствии с Федеральным законом N 273-ФЗ «Об образовании в Российской Федерации» в организациях, осуществляющих образовательную деятельность, организовывается обучение и воспитание обучающихся с ОВЗ как совместно с другими обучающимися, так и в отдельных классах или группах.
Рабочие листы и материалы для учителей и воспитателей
Более 2 500 дидактических материалов для школьного и домашнего обучения
Столичный центр образовательных технологий г. Москва
Получите квалификацию учитель математики за 2 месяца
от 3 170 руб. 1900 руб.
Количество часов 300 ч. / 600 ч.
Успеть записаться со скидкой
Форма обучения дистанционная
- Онлайн
формат - Диплом
гособразца - Помощь в трудоустройстве
Видеолекции для
профессионалов
- Свидетельства для портфолио
- Вечный доступ за 120 рублей
- 311 видеолекции для каждого
Исполнители алгоритмов. Формальное выполнение алгоритма. Компьютер как формальный исполнитель алгоритмов (программ).
Тип урока: комбинированный.
Ввести понятие «объект-исполнитель»;
Познакомить учащихся с третьей стадией разработки алгоритма;
Ввести понятие «Программа»;
Познакомить с правилами оформления и вызова программы;
Научить решать задачи на составление программ с линейным алгоритмом.
Задачи урока:
Познавательные :
Организовать работу учащихся по изучению и первичному закреплению знаний путем коллективной и самостоятельной практической деятельности.
Развивающие:
Используя интегрированный подход, показать учащимся значение, которое имеет понятие «объект-исполнитель» в природе, быту, технике и повседневной жизни.
Обеспечить развитие у школьников навыков, способствующих развитию памяти, логического мышления и применению имеющихся знаний и умений при составлении программ на языке программирования.
Воспитательные:
Формирование информационной культуры, умения и навыков коллективного и самостоятельного овладения знаниями;
Воспитывать культуру речи при ответах у доски, уважение ко всем участникам образовательного процесса.
Ход урока
Организационный этап
Взаимные приветствия учителя и учащихся; фиксация отсутствующих; проверка внешнего состояния классного помещения; проверка подготовленности учащихся к уроку; организация внимания и внутренней готовности.
Объявление темы и целей урока. Повторение материала
Сегодня на уроке мы с вами продолжим изучать технологию решения задач с помощью компьютера. Мы уже с вами познакомились с понятием алгоритма и его свойствами. И прежде чем преступить к изучению нового материала, проверим вашу подготовленность к уроку.
Перечислите этапы решения задачи с помощью ПК (постановка задачи, определение условий, построение модели задачи, описание алгоритма решения задачи, выбор оптимальной среды для решения, описание алгоритма с помощью выбранных программных средств, тестирование решения задачи, при необходимости – коррекция решения задачи)
Перечислите основные свойства алгоритма (дискретность, точность, понятность, массовость, результативность)
Перечислите основные формы представления алгоритмов (словесный, графический, программный, табличный)
Объяснение нового материала:
Алгоритмы решения разных задач должны быть выполнимы в той среде, где необходимо получить результат. В этой среде должен существовать объект, который будет выполнять алгоритм. Рассмотрим пример. Пете захотелось чаю. Он вскипятил в чайнике воду, положил в чашку пакетик заварки, налил туда кипяток, добавил две чайные ложки сахара, размешал их ложкой и с удовольствием выпил свой чай. Оформим алгоритм действий Пети в виде блок-схемы (учитель вызывает ученика к доске).
В данном примере все указанные действия выполняет Петя, следовательно он и есть тот объект, который выполняет алгоритм. Петя умеет и может выполнять действия, указанные в алгоритме. Он выполняет эти действия в указанном порядке. Объект, который выполняет алгоритм называют исполнителем .
Различают формальных и неформальных исполнителей. Формальный исполнитель одну и туже команду выполняет одинаково. Неформальный исполнитель может выполнять команду .
Формальные исполнители необычайно многообразны, но для каждого из них можно указать следующие характеристики: круг решаемых задач (назначение), среду, систему команд и режим работы.
Круг решаемых задач. Каждый исполнитель создаётся для решения некоторого круга задач – построения цепоцек символов, выполнения вычислений, построения рисунков на плоскости и так далее.
Среда исполнителя – условия, при которых возможно исполнение алгоритма.
Система команд исполнителя (СКИ) – перечень действий, который способен понять и выполнить исполнитель.
Система отказов исполнителей – перечень отказов возникающий, при невозможности выполнения алгоритма в конкретных условиях.
Режимы работы исполнителя – режим непосредственного и программного управления. Непосредственное управление – исполнитель ждёт команды от человека и каждую команду выполняет немедленно. Программное управление – исполнителю задаётся последовательность команд (программа), а затем исполняет команды в автоматическом режиме. Некоторые исполнители работает только в одном из режимов.
Исполнители, встречающиеся в задачах – «Кузнечик», «Калькулятор», «Маятник», «Черепашка», «Стрелка», «Красильщик», «Стрелочка», «Черепаха», «Водолей» и. др.
Пример: Исполнитель Черепашка перемещается на экране компьютера, оставляя след в виде линии. Система команд состоит из следующих команд:
Вперёд n (где n – целое число) – вызывает передвижение на n шагов в направлении движения – в том направлении, куда развёрнуты ее голова и корпус.
Направо m (где m – целое число) – вызывает изменение направления движения на m градусов по часовой стрелке.
Запись Повтори K [ … ] – означает, что последовательность команд в скобках повториться k раз.
Подумайте, какая фигура появиться на экране после выполнения Черепашкой следующего алгоритма:
Повтори 12 [ Направо 45 Вперёд 20 Направо 45 ]
Пример: Система команд Вычислитель состоит из двух команд, которым присвоены номера:
2 – умножить на 3
При записи алгоритма для краткости указываются только номера команд. Например, алгоритм 21212 означает следующее
С помощью этого алгоритма число 1 преобразовано в 15: ((1*3-1)*3-1)*3=15
Пример: Исполнитель Робот действует на клетчатом поле, между соседними клетками которого могут стоять стены. Робот передвигается по клеткам поля и может выполнять следующие команды: вверх, вниз, вправо, влево.
При выполнении каждой такой команды Робот перемещается в соседнюю клетку в указанном направлении. Если же в этом направлении между клетками стоит стена, то Робот разрушается.
Что произойдет с Роботом если он выполнит последовательность команд: вправо, вниз, вправо, вниз, вправо. Начав движение из клетки А. Какую последовательность команд надо выполнить Роботу, чтобы переместиться из клетки А в клетку В, не разрушившись от встречи со стенами?
Алгоритм, представленный на понятном Исполнителю языке, называют программой .
Программа – упорядоченная последовательность команд (инструкций), необходимых компьютеру для решения поставленной задачи.
Основная сложность при разработке программ для компьютера заключается именно в создании или нахождении алгоритма. Составление программы по известному алгоритму называют кодированием.
Программирование (кодирование) – процесс составление программы для компьютера.
Каждый алгоритм, представленный в виде программы, должен иметь уникальное имя, не совпадающее со встроенными в язык словами. Программа имеет заголовок, в котором указано ее имя. Новый алгоритм сохраняется в памяти компьютера под своим именем, и его можно вызвать (выполнить), введя имя этой программы. Программы обладают такими же свойствами, как и алгоритмы.
На этом уроке профессор Знатоков напомнит, что такое алгоритм, какими свойствами он обладает и какие формы записи алгоритмов существуют, а также вспомнит и что такое исполнитель алгоритмов. Объяснит, какими свойствами должен обладать объект, чтобы его можно было назвать исполнителем. Расскажет, чем отличается формальный исполнитель от неформального. А также разберёт, какие программы называются системными, а какие прикладными. А в конце урока ребятам будет предложено выполнить несколько практических заданий с дальнейшим объяснением и решением.
В данный момент вы не можете посмотреть или раздать видеоурок ученикам
Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет, приобретя в каталоге.
Конспект урока "Компьютер как исполнитель"
На прошлых уроках мы с вами узнали очень много нового и интересного. Надеюсь, вы не забыли, что алгоритм – это описание подробного плана последовательности действий, который необходимо выполнить, чтобы решить задачу.
Также вы помните свойства, которыми должен обладать алгоритм?
А какие формы записи алгоритмов существуют?
На прошлом занятии мы с вами говорили об исполнителе алгоритма. Так?
Давайте вспомним, кто же это такой? Или что это такое?
Исполнитель алгоритма – это объект, который выполняет команды (шаги, инструкции) по определённым правилам и в нужном порядке.
Давайте разберёмся, какими свойствами должен обладать объект, чтобы его можно было назвать исполнителем.
Первое свойство. Исполнитель работает только в определённой обстановке, или среде, то есть это такое «место обитания», в котором исполнитель может выполнить алгоритм. В какой-то другой, не его, среде исполнитель может сломаться, например, от перегрузки, или от высокой температуры, при большой влажности и так далее.
Второе свойство. Каждый исполнитель выполняет команды (действия, инструкции) только из заданного списка, то есть из системы команд исполнителя. Каждая команда имеет свои условия применимости – это состояние среды, в которой может быть выполнена команда.
Третье свойство. Исполнитель может отказаться выполнить действие, если даётся инструкция, которая не входит в системы команд исполнителя. Также возникает отказ исполнителя, если для выполнения команды используется неправильная среда.
Исполнителем может быть человек, машина, животное, управляемая игрушка. А ещё компьютер. Вот о нём мы сегодня и поговорим.
Исполнитель-компьютер ничего не знает о цели алгоритма. Он не задаёт вопросов: Зачем? Почему? Кому это надо?
Вы помните, что компьютер выполняет алгоритм, написанный человеком на одном из языков программирования.
И такой алгоритм называется программой.
Когда человек написал программу, её обязательно необходимо ввести в память компьютера, а затем запустить на исполнение. После таких действий программа автоматически выполняется компьютером.
Поэтому и говорят, что компьютер – это исполнитель алгоритмов. Он все работы выполняет по программе. И только ту последовательность команд, что задана в его системе команд и написана на специальном языке программирования.
Так как компьютер не отказывается выполнять команды, которые ему заданы, то его называют формальным исполнителем алгоритмов.
Так-так-так, давайте разберёмся, что такое формальный исполнитель.
Существуют два типа исполнителей: формальные и, как вы, наверное, догадались, неформальные.
Формальный исполнитель – это исполнитель, который выполняет одну и ту же команду всегда одинаково.
Неформальный исполнитель – это исполнитель, который может выполнять команду по-разному.
Рассмотрим такой пример: вы слушаете песню, которая проигрывается в вашем телефоне определённым певцом. Телефон воспроизводит его исполнение всегда одинаково. Получается, что телефон – это формальный исполнитель.
Но вряд ли тот же самый певец, которого мы слушаем с помощью телефона, в реальности исполняет эту же песню на концертах всегда одинаково. Вполне возможно, что он забудет слова, или его голос будет немного хриплым, после болезни, или же во время песни, он скажет какие-то слова – всё это вносит в исполнение что-то новое. Певец в данном случае является неформальным исполнителем.
Можно сказать, что неформальным исполнителем обычно бывает человек, а формальным – технические устройства, например, компьютер, телефон.
Но не забываем, что человек вполне может быть и формальным исполнителем. В отличие от технических средств, человек понимает, что он делает, зачем и почему. Он всегда может отказаться выполнить какое-то действие. Отказ от выполнения команды может быть по моральным соображениям, например, обидеть слабого, или если выполнение действия опасно для жизни человека, например, прыгнуть с большой высоты.
Вы помните, что компьютер – это универсальный исполнитель. Он может обрабатывать такие данные, как текстовые, числовые, графические, звуковые.
В компьютере может быть мно-о-о-го разнообразных программ. Поэтому воспользоваться компьютером могут люди любого возраста: школьники, студенты, бабушки и дедушки. И конечно, компьютер применяется в разных сферах деятельности. Сейчас компьютеры помогают в работе врачам, учителям, писателям.
Есть в компьютере программы, которые управляют самим компьютером. Такие программы называются системными. Эти программы не только управляют компьютером, они выполняют и другие функции, например, создают копии информации, проверяют, может ли работать устройство, входящее в компьютер, выдают справочную информацию о компьютере и многие другие. Системные программы используются для эффективной работы компьютера и пользователя, а также для результативного выполнения прикладных программ.
Прикладные программы – это программы, предназначенные для решения задач пользователя. Они помогают создавать и изменять информационные объекты, например, тексты в программе Microsoft Word, рисунки в простой программе Paint, или, например, в программе Adobe Photoshop, которую используют профессиональные художники, и другое. Есть разные виды программ, но изучать их мы будет в другое время.
Ребята, а вы знаете, что слово «компьютер» возникло давным-давно ещё в латинском языке, только, конечно, произносилось оно немного иначе. И переводилось как «вычислять». Позже в английском языке появилось слово «to compute», а уже от него – такое знакомое нам «computer».
Раньше компьютерами называли людей. Да-да, это были люди, которые производили арифметические, то есть математические вычисления. Со временем людей заменили вычислительные машины, и уже машины стали называться компьютерами. Однако, как мы знаем, современные компьютеры выполняют не только арифметические вычисления, но и многие другие команды.
Ну что же, сегодня было очень много интересной и познавательной информации. Давайте проверим, как вы усвоили полученную информацию.
Вот список терминов:
Исполнитель алгоритмов, формальный исполнитель, неформальный исполнитель, системные программы, прикладные программы.
Давайте найдём для каждого определения его значение.
Давайте проверим, правильно ли вы выполнили задание, а заодно и повторим, что мы сегодня изучили на уроке.
Исполнитель алгоритмов – это объект, который выполняет команды (шаги, инструкции) по определённым правилам и в нужном порядке.
Формальный исполнитель – это исполнитель, который выполняет одну и ту же команду всегда одинаково.
Неформальный исполнитель – это исполнитель, который может выполнять команду по-разному.
Системные программы – это программы, которые управляют самим компьютером.
Прикладные программы – это программы, предназначенные для решения задач пользователя.
А теперь поиграем.
В этих предложениях некоторые слова сбежали и собрались в одном месте. Помогите словам найти свои места в предложениях.
Давайте, проверим насколько правильно вы расставили слова, и ещё раз повторим информацию, с которой вы сегодня познакомились.
Исполнитель работает только в определённой обстановке, или среде, то есть это такое «место обитания», в котором исполнитель может выполнить алгоритм.
Когда человек написал программу, её обязательно необходимо ввести в память компьютера, а затем запустить на исполнение.
Телефон – это формальный исполнитель.
Человек обычно бывает неформальным исполнителем.
Отказ от выполнения команды может быть по моральным соображениям.
Компьютер выполняет алгоритм, написанный человеком на одном из языков программирования.
Каждый исполнитель выполняет команды только из заданного списка, то есть из системы команд исполнителя.
Вот и подошла к концу наша встреча. Но расстаёмся мы, я надеюсь, ненадолго. До свидания, ребята. До новых встреч.
В уроке вводится понятие «исполнитель», приводятся примеры исполнителей из окружающей среды, поясняется, что такое система команд исполнителя и так далее. В практической части урока учащиеся познакомятся со средой исполнителя «Чертежник»
Конспект урока "Исполнители вокруг нас"
· формальные и неформальные исполнители;
· круг решаемых задач;
На прошлом занятии мы узнали, что разработчиком алгоритмов является человек и рассмотрели примеры, где и исполняют эти алгоритмы люди. Одним из таких алгоритмов является алгоритм перехода через дорогу на регулируемом светофором перекрёстке.
Сначала остановись на тротуаре перед светофором. Затем посмотри на светофор. Если горит красный свет, жди, пока на светофоре загорится зелёный. Если горит зелёный свет, перейди дорогу до тротуара противоположной стороны улицы.
Но давайте подумаем, всегда ли алгоритмы создаются для исполнения их человеком? Конечно, исполнять алгоритмы могут не только люди. Современный человек привык, что в повседневной жизни его окружают технические помощники и уже с трудом представляет своё существование без них. Например, электрочайник, микроволновая печь, кондиционер или кофеварка выполняют алгоритмы, составленные человеком, и справляются с поставленной для них задачей. Эти технические устройства являются исполнителями алгоритмов.
Также исполнителем может быть и животное, выполняющее заданные ему команды, например, дрессированная собака.
Конечно, исполнитель может выполнять не все команды, а только те, для выполнения которых он предназначен, если мы говорим о техническом устройстве; или которые он понимает и умеет делать, если мы имеем в виду человека или животное. Эти команды образуют систему команд исполнителя. Итак, сформулируем определение:
Исполнитель – это некоторый объект способный выполнять определённый набор команд. Это может быть и человек, и животное, и техническое устройство. Команды, которые может выполнить конкретный исполнитель, образуют систему команд исполнителя.
На примере рассмотрим, систему команд музыкального проигрывателя. Это техническое устройство может выполнять следующие команды: воспроизведение аудиозаписи, остановка воспроизведения, переход в начало записи, и в конец записи.
Ещё одним примером простого исполнителя является кнопка включения-выключения питания монитора. При нажатии на неё в первый раз она отключает питание монитора, при нажатии второй раз - отключает.
Для выполнения каждой из этих команд потребуются действия человека. Существуют и более сложные устройства, которые выполняют все действия автоматически, без участия человека, но работают по заранее выбранной им программе. Одним из таких устройств является стиральная машина. Все циклы: полоскание, стирку одежды, отжим и сушку она выполняет автоматически.
Но более совершенными исполнителями являются роботы.
Робот – это автоматическое устройство, созданное по принципу живого организма. Действует такое устройство по заранее заложенной в его память программе и самостоятельно выполняет операции, обычно выполняемые человеком. Существуют различные типы роботов: и промышленные, и медицинские, и бытовые и боевые и даже работы учёные. Но наибольший интерес у общества вызвало создание человекообразного робота. Одним из таких устройств является робот Асимо типа Android, созданный корпорацией Honda в Японии. Асимо умеет ходить, спускаться по лестнице и имеет массу функций, которые позволяют ему общаться с людьми.
Компьютер - это тоже исполнитель алгоритмов. Он может использоваться для решения самых разнообразных задач. Компьютер может работать и с символьной, и с графической, и с числовой, и с аудиоинформацией. Поэтому его отличительной чертой этого исполнителя, является универсальность. Для него, как и любого исполнителя существует определённая система команд.
Алгоритм, исполнителем которого является компьютер, называют программой. Мы уже знакомы с компьютерными программами, которые используются для обработки текстовой, графической и числовой информации и являемся активными пользователями обучающих программ и компьютерных игр. Иногда компьютер и сам управляет работой подключённых к нему устройств, например, принтером.
Исполнители делятся на два типа: формальные и неформальные. Формальный исполнитель одну и ту же команду выполняет всегда одинаково, а неформальный исполнитель одну и ту же команду может выполнять совершенно по-разному.
Например, певец является неформальным исполнителем, потому что одна и та же песня может быть исполнена им совершенно по-разному. А проигрыватель – формальным, потому что одна и та же песня исполняется им всегда одинаково. Или при приготовлении кофе человек является неформальным исполнителем, так может сначала добавить сахар и затем насыпать в чашку кофе ли наоборот. А кофеварка является формальным исполнителем, так как работает строго по заданной программе и готовит кофе всегда одинаково.
Как правило, люди и животные являются неформальными исполнителями, а технические устройства – формальными. Неформальный исполнитель может внести какие-то изменения в алгоритм, например, поменять последовательность шагов или пропустить какие-то из них. Выполняя алгоритм формально, исполнитель не вникает в смысл поставленной ему задачи, а только строго выполняет последовательность действий, не меняя ее. Допустим Миша набирает текст доклада на компьютере. Давайте укажем исполнителей в этом примере и определим, какого к какому типу они относятся. Итак, исполнителями являются и Миша и компьютер. Миша является неформальным исполнителем, т.к самостоятельно продумывает и отвечает за каждое действие, а компьютер – формальным, так как действует по заданной программе.
Остановимся на множестве формальных исполнителей. Таких исполнителей чрезвычайно много, но для каждого из них существует круг решаемых задач, среда исполнителя, система команд исполнителя, система отказов исполнителя и режим работы. Рассмотрим каждый пункт подробнее.
Для каждого формального исполнителя есть свой круг решаемых задач. То есть каждый формальный исполнитель решает не все задачи, а только определенные, для которых он был создан. Например, в круг задач стиральной машины не входит задача варить кофе, так это устройство было создано только для стирки одежды.
Среда исполнителя – это обстановка в которой исполнитель может действовать.
Для примера рассмотрим исполнителя Кузнечик в системе программирования Кумир.
Среда обитания Кузнечика – это координатная прямая.
Рассмотрим систему команд исполнителя кузнечик. Кузнечик может двигаться по координатной прямой на заданное количество единиц впереди назад, а также перекрашивать квадратики над числами.
Значит в СКИ Кузнечика входят команды:
Давайте придумаем для кузнечика алгоритмы, при помощи которых он перекрасит квадратики над числами 1, 2 и 3.
Сегодня на уроке мы узнали, что
• исполнитель – это некоторый объект (человек, животное или техническое устройство) способный выполнять определенный набор команд.
• исполнители могут быть формальными и неформальными. Формальный исполнитель одну и ту же команду всегда выполняет одинаково и не вникает в смысл задачи, а неформальный может поменять шаги алгоритма местами и сам несет ответственность за выполняемые действия.
• Для каждого формального исполнителя можно указать круг решаемых задач, среду, систему команд, систему отказов и режим работы
Ежедневно вокруг нас происходят различные события и во всех этих ситуациях нужно выполнять определённые последовательности действий, которые приведут нас к поставленной цели. То есть, чтобы решить задачу, сначала её нужно алгоритмизировать. Умение выделять алгоритмическую суть явления и строить алгоритмы очень важно для человека любой профессии. С помощью данного урока учащиеся узнают, что такое алгоритм, а также кто может быть исполнителем алгоритма и каковы основные характеристики исполнителя.
В данный момент вы не можете посмотреть или раздать видеоурок ученикам
Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет, приобретя в каталоге.
Получите невероятные возможности
Исполнитель «Черепашка»
При помощи простых команд и красочного интерфейса пользователь легко освоит построение алгоритмов. На первом этапе в игровой форме, используя готовые кнопки и цвета. На следующем уровне уже можно программировать, записывая команды на русском по всем правилам программирования.
Получите невероятные возможности
В данный момент вы не можете посмотреть или раздать видеоурок ученикам
Чтобы получить доступ к этому и другим видеоурокам комплекта, вам нужно добавить его в личный кабинет, приобретя в каталоге.
Получите невероятные возможности
Алгоритм – исполнитель
Детальные инструкции значительно упрощают решение сложных задач для исполнителя. А пошаговые рекомендации позволяют автоматизировать процесс. Каждый такой алгоритм создается для определенного исполнителя. Если им будет маленький ребенок, команды будут одними, если взрослый человек – другими, компьютер или робот – третьими.
Примеры задач из жизни и люди, которые их обычно решают:
- прием ЕГЭ – члены комиссии;
- управление поездом, перевозка пассажиров, груза – машинист;
- написание статей – журналист;
- забота о детях – родители.
Если вопрос касается профессиональной сферы, то работники опираются на должностные и рабочие инструкции, в них описан круг обязанностей и порядок их выполнения. Если же это социальные задачи, люди ориентируются на то, как это делалось в семье их родителей, как это делают другие люди или как описано в литературе.
Конспект урока "Понятие алгоритма. Исполнитель алгоритма"
Ежедневно вокруг нас происходят различные события.
Например, восьмиклассница Кристина решила:
· приготовить новое блюдо по рецепту;
· развесить бельё на верёвке после стирки;
Во всех этих ситуациях нужно выполнить определённую последовательность действий, которые приведут Кристину к поставленной цели. Значит, чтобы решить задачу, сначала её нужно алгоритмизировать.
Умение выделять алгоритмическую суть явления и строить алгоритмы очень важно для человека любой профессии.
Навыки алгоритмического мышления способствуют формированию особого стиля культуры человека, составляющими которого являются:
· целеустремлённость и сосредоточенность;
· объективность и точность;
· логичность и последовательность в планировании и выполнении своих действий;
· умение чётко и лаконично выражать свои мысли;
· умение правильно ставить задачу и находить окончательные пути её решения;
· умение быстро ориентироваться в стремительном потоке информации.
Происхождение термина «алгоритм» связано с математикой. История его возникновения такова.
В девятом веке в Багдаде жил учёный Аль-Хорезми, математик, астроном, географ. В одном из своих трудов он описал десятичную систему счисления и впервые сформулировал правила выполнения арифметических действий над целыми числами и обыкновенными дробями.
Арабский оригинал этой книги был утерян, но остался латинский перевод двенадцатого века, по которому Западная Европа ознакомилась с десятичной системой счисления и правилами выполнения арифметических действий.
Аль-Хорезми стремился к тому, чтобы сформулированные им правила были понятными. Достичь этого в девятом веке, когда ещё не была разработана математическая символика (знаки операций, скобки, буквенные обозначения и т.д.), было трудно. Однако ему удаюсь выработать чёткий стиль строгого словесного предписания, который не давал читателю возможность уклониться от предписанного или пропустить какие-нибудь действия.
Правила в книгах Аль-Хорезми в латинском переводе начинались словами «Алгоризми сказал». В других латинских переводах автор именовался как Алгоритмус. Со временем было забыто, что Алгоризми (Алгоритмус) - это автор правил, и эти правила стали называть алгоритмами. Многие столетия разрабатывались алгоритмы для решения всё новых и новых классов задач, но само понятие алгоритма не имело точного математического определения.
В двадцатом веке возникла наука, которая занимается теорией алгоритмов. В рамках этой науки понятие алгоритма было уточнено.
Наверняка каждый из вас слышал слово алгоритм. То есть
Алгоритм — это конечная последовательность команд, выполнение которых приводит к решению поставленной задачи.
Причём исполнителем может выступать как человек, животное так и техническое устройство.
Например, украшение торта будет алгоритмом.
Или установка игры на компьютер, так же выполняется по алгоритму.
Очень часто мы выполняем определённые алгоритмы, даже не задумываясь, например, в новом кофе подключиться к сети Wifi.
Сейчас вам кажется, что подключиться к сети проще простого, но ведь в начале вас этому научили. В первый раз вам сказали, что нужно:
· спросить пароль у администратора кафе;
· открыть настройки телефона;
· зайти в меню Wifi;
· найти сеть Wifi данного кафе;
· ввести пароль и подключиться к сети.
В следующий раз помощь вам уже не понадобится.
Как видно из предыдущего примера, для достижения конечного результата, нам необходимо последовательно выполнить определённые действия или шаги. Действия по алгоритму встречаются во всех сферах, например,
Задача «Приготовить чай» решается в пять шагов:
· вскипятить в чайнике воду;
· положить в чашку пакетик заварки;
· налить туда кипяток;
· добавить две чайные ложки сахара;
· размешать сахар ложкой.
А задача по химии «Получение водорода» решается в четыре шага:
· налить в колбу соляной кислоты;
· бросить в колбу кусочек цинка;
· собрать выделяющийся газ в пробирку.
Если рассмотреть все наши примеры, то на первый взгляд, кажется, что все они абсолютно различны, но на самом деле у всех этих процессов есть общая черта. Все эти процессы описываются последовательностью кратких указаний, точное следование которым позволяет получить нужный результат.
Таким образом, для разработки алгоритма, нам необходимо понимать, какие начальные условия нам даны, и какой конечный результат мы должны получить.
Иначе говоря, алгоритм – это описание последовательности шагов в решении задачи, приводящих от исходных данных к требуемому результату.
Работу алгоритма можно представить в виде следующей схемы:
Сначала мы получаем задание и оцениваем какие исходные данные у нас есть, затем составляем алгоритм действий и в итоге приходим к результату.
Каждый день, изучая что-то новое на уроках в школе или дома, мы учимся действовать по алгоритму.
Рассмотрим следующий пример.
Дан алгоритм, который приводит к тому, что из одной цепочки символов получается новая цепочка:
1. Необходимо вычислить длину в символах исходной цепочки.
2. Если длина начальной цепочки нечётна, то к ней справа приписывается цифра 1, иначе цепочка не изменяется.
3. Символы попарно меняются местами (первый — со вторым, третий — с четвёртым, пятый — с шестым и т. д).
4. Справа к полученной цепочке приписывается цифра 2.
После выполнения действий получить новую цепочку, которая будет
являться результатом работы алгоритма. Итак, пусть нам дана исходная цепочка КОТ. Выполним над ней действия по алгоритму.
1. Считаем символы.
2. Символов – 3. Это нечётное число. Значит нужно справа приписать цифру один.
3. Меняем символы попарно местами. То есть К меняем местами с О и Т с единицей.
4. Справа к полученной цепочке приписываем цифру два
В результате получаем цепочку: ОК1Т2.
Если исходной была цепочка ЛЕТО, то результатом работы алгоритма будет цепочка ЕЛОТ2.
Перейдём ко второму вопросу урока и определим кто же такой исполнитель алгоритма. Как мы уже выяснили, исполнителем алгоритма может быть, как человек, животное так и техническое устройство, т.е.
Исполнитель – это объект живой природы или техническое устройство, способное выполнять алгоритм.
Различают формальных и неформальных исполнителей. Формальный исполнитель выполняет одну и ту же команду всегда одинаково. А неформальный может импровизировать.
Например, вспомним алгоритм приготовления чая. Здесь вы можете действовать по-разному. Можете сначала положить в чашку пакетик с чаем, а затем вскипятить в чайнике воду. Или положить в чашку сначала сахар, а затем чай. В данном примере человек, который готовит чай является неформальным исполнителем алгоритма.
То есть Неформальный исполнитель может выполнять алгоритмы по-разному.
К неформальным исполнителям можно отнести все объекты живой природы.
А вот формальный исполнитель одну и ту же команду всегда выполняет одинаково.
Например, при многократном прослушивании диска с любимой мелодией вы можете быть уверенными, что она воспроизводится проигрывателем (формальным исполнителем) одинаково.
Но вряд ли кому-нибудь из певцов (неформальному исполнителю) удастся несколько раз совершенно одинаково исполнить песню из своего репертуара.
Рассмотрим более подробно формальных исполнителей. Определить формального исполнителя можно по следующим характеристикам: это круг решаемых задач (назначение), среда, система команд, режим работы. Остановимся подробнее на каждой характеристике.
Итак, круг решаемых задач. Каждый исполнитель создаётся для решения определённого круга задач – выполнение вычислений, приготовления кофе, управлять дорожным движением и т.д.
Среда исполнителя – это та область, обстановка и условия в которых действует исполнитель. Исходные данные и результаты любого алгоритма всегда принадлежат среде того исполнителя, для которого предназначен алгоритм.
Система команд исполнителя. Каждое отдельное предписание исполнителю об исполнении отдельного законченного действия называется командой. Совокупность всех команд является системой команд данного исполнителя (сокращённо - СКИ). Алгоритм всегда составляется с учётом возможностей конкретного исполнителя, который будет его выполнять, т.е. в системе команд исполнителя.
Режим работы исполнителя. Выделяют два процесса управления исполнителем: режим непосредственного управления
и программное управление.
В первом случае исполнитель принимает команды от человека и немедленно их выполняет. Во втором случае исполнителю задаётся полная последовательность команд (программа), а он выполняет эти команды в автоматическом режиме.
Рассмотрим примеры исполнителей.
Исполнитель Автобус может выполнять команды: налево, направо, вперёд.
По команде налево автобус поворачивает налево, по команде направо автобус поворачивает направо, по команде вперёд Автобус перемещается на одну клетку вперёд. Давайте составим алгоритм, в результате которого Автобус окажется в клетке с остановкой.
Итак, в результате мы получим следующий алгоритм: вперёд, вперёд, вперёд, налево, вперёд, вперёд, вперёд, налево, вперёд, вперёд, вперёд, налево вперёд, направо, вперёд.
Следующий пример. Исполнитель Тюбик перемещается по экрану компьютера и оставляет след в виде линии. Система команд Тюбика состоит из следующих команд:
Вперёд N (где N — целое число) — вызывает передвижение Тюбика на N шагов в направлении движения;
Направо M (где M — целое число) — вызывает изменение направления движения Тюбика на M градусов по часовой стрелке.
Налево M (где M — целое число) — вызывает изменение направления движения Тюбика на M градусов против часовой стрелки.
Давайте посмотрим, что получится в результате выполнения следующего алгоритма: налево сорок пять, прямо два, направо сорок пять, прямо шесть, налево девяносто, прямо три, направо девяносто, прямо два, направо девяносто, прямо один, направо девяносто, прямо два, налево девяносто, прямо шесть, направо сорок пять, прямо два, направо сорок пять, прямо восемь.
В результате выполнения алгоритма Тюбик на экране нарисовал лодку.
Таким образом, для составления алгоритма необходимо:
· Выделить объекты, фигурирующие в задаче, установить свойства этих объектов, отношения между объектами и возможные действия с ними.
· Определить исходные данные и требуемый результат.
· Определить последовательность действий исполнителя для достижения результата.
· Данную последовательность действий записать с помощью команд, входящих в систему команд исполнителя.
Из всего выше сказанного следует, что алгоритм - это модель деятельности исполнителя алгоритма.
Пришло время подвести итоги урока:
Алгоритм – это конечная последовательность команд, выполнение которых приводит к решению поставленной задачи.
Команда алгоритма – это точное предписание выполнить конкретное действие.
Исполнитель алгоритма – это объект живой природы или техническое устройство, способное выполнить алгоритм. Исполнители делятся на формальные и неформальные.
Система команд исполнителя – это набор команд, которые понимает и может исполнить данный исполнитель.
Чтобы достичь цели, следует идти к ней шаг за шагом, и чем подробнее и проще инструкция, тем легче выполнить все этапы процесса. Поэтому, каждую команду нужно писать с учетом опыта, возраста и мастерства исполнителя. Этого принципа следует придерживаться не только в обычной жизни, но и во время создания программ для компьютера. А чтобы изучать языки программирования весело и просто, следует делать это в учебной среде КуМир, на приложениях Чертежник, Робот, другие.
План урока:
Вспомогательные алгоритмы или процедуры
Во время работы с учебными исполнителями приходится часто выполнять однотипные команды или серии команд. Намного удобнее создать вспомогательные подзадачи или процедуры. Таким блокам команд присваивается имя и потом не нужно каждый раз повторять ту или иную последовательность операций, достаточно указать имя вспомогательной процедуры.
Характеристики исполнителей
Перед написанием алгоритма следует определиться не только с конечной задачей, но и с особенностями исполнителей. Это позволит использовать правильные слова, а также учесть все факторы, которые могут повлиять на конечный результат.
- круг решаемых задач – существует определенных объем заданий по типу и объему, которые под силу конкретному человеку. Это значит, что нет смысла просить собаку прочесть газету, даже если инструкция будет написана с максимальной детализацией. Также не рационально просить ученого физика спеть рок-оперу. Но всегда есть исключения;
- среда – место, окружение, где исполнитель будет выполнять команды. При написании рабочей инструкции высотнику следует учитывать технику безопасности, правила работы с высотным оборудованием, медицинские аспекты и непосредственно то, что будет делать этот специалист (управлять краном, заниматься отделкой или строительством зданий);
- режим непосредственного выполнения команд исполнителю или программного управления. В первом случае даются простые единичные указания, которые сразу выполняются (например, команда собаке «Сидеть»). Во втором случае задается множество заданий, выполняемых в определенном порядке, с соблюдением условий, указанных в программе/алгоритме (пошаговый рецепт приготовления борща);
- СКИ – любой алгоритм рассчитан на конкретного исполнителя, поэтому написан при помощи понятной ему системы команд (СКИ). В случае с живым существом (человек, собака), это будут слова, которые он понимает. Для неживого (робот, ПК) – строгие команды, и правила оформления, которые нельзя изменять (язык программирования).
СКИ – набор простейших команд, понятных данному исполнителю.
Перспективными исполнителями являются роботы, автоматы и компьютеры. Несмотря на формальность работы, их можно запрограммировать и «научить» очень и очень многому. Даже если это светофор, стиральная машинка, не говоря уже о роботах, космических кораблях, персональных или научных компьютерах.
Особенно удивительно выглядит компьютер, ведь он:
- универсальный – позволяет запрограммировать разные процессы (визуальные, звуковые, текстовые);
- многозадачный – готов рисовать, писать, считать, рассчитывать и транслировать, даже одновременно;
- пользовательский – его интерфейс можно сделать «под пользователя».
Пользователи ПК могут использовать готовые приложения, чтобы задать ту или иную команду своему смартфону, компьютеру или другой умной технике. Или же самостоятельно написать «внутренности», программный код, задавая приложению те характеристики и функции, которые нужны.
Исполнитель «Робот»
На клеточном поле произвольно выставляется робот, который обозначается любым удобным символом (*, Р, ●, ♦, другими). Задания пишутся при помощи системы команд исполнителя Робот.
В этой учебной системе можно самому рисовать стены, выращивать клумбы, задавать маршрут прохождения. Можно закрашивать клетки, даже если они до этого были цветные. Делать это можно при помощи линейных алгоритмов, с разветвлением или с повторением цикличных команд.
Для программирования используются простейшие алгоритмы и элементы программирования (правила написания команд, условия, обязательные символы), которые применяются в большинстве компьютерных языков.
В случае ошибок система выдает отказ. Отказы могут быть в случае неправильного написания элемента программы, противоречивых команд или логических ошибок. Отказ в виде ответа Робота: «Не могу» (пройти через стену), «Не понимаю» (ошибочно написана команда) или результат не тот, что нужен (перепутаны горизонталь и вертикаль).
Исполнитель «Чертежник»
Учебная система «Исполнитель Чертежник» используется для рисования графиков, чертежей в системе координат (x;y). Поле поделено на пиксели, в параметрах можно указать размер поля и количество точек по осям.
Перо – инструмент чертежника, его, как настоящее, можно поднимать и опускать на рисовальное поле, перемещать в нужное место, менять цвет и добавлять надпись. Если перо приподнято, то не остается следа, если опущено – за ним тянется линия.
Во время рисования видно труженика Чертежника, который выполняет команды. Но его иконку можно скрыть, тогда будет виден только карандаш.
Начинать работу следует с команды «использовать Чертежник». Писать можно одиночные команды, а можно целые серии. Правила написания программы соответствуют основам большинства компьютерных языков. Это облегчит в будущем изучение программированию, улучшит понимание процесса построения алгоритмов, начиная от линейных и заканчивая циклическими.
На следующем этапе можно перейти к написанию алгоритма на языке Pascal. Процесс построения аналогичен, только команды пишутся на языке программирования (на английском):
uses Drawman;
begin
PenUp;
ToPoint (1, 1);
PenDown;
ToPoint (1, 5);
ToPoint (3, 5);
ToPoint (2, 4);
ToPoint (3, 3);
ToPoint (1, 3);
end.
Освоив построение алгоритмов на родном языке, запомнив правила написания команд, пользователь с легкостью перейдет на задания, написанные на языке программирования.
Составляем алгоритм для Робота
- Нужно заставить робота двигаться вдоль стены, закрашивая клетки, которые он прошел:
- Следует высадить цветы по пути следования робота, но чтобы он не разрушился (не упирался в стены):
Как видно из этого примера, в некоторых случаях команды многократно повторяются. Тогда используют подзадачи и циклы.
Основная программа с именем подзадачи:
Алгоритм Рисунок
Начало
Алгоритм Узор (5 раз);
Конец.
Указав только имя подзадачи в теле программы, пользователь вызывает ее столько раз, сколько указано в скобках. Полный текст вспомогательного алгоритма описывается под основным.
Алгоритм Узор
Начало
конец.
Если не использовать подзадачи, которые повторяются много раз, то размер программы увеличится в десятки раз.
Чтобы выполнить движение, робот может выполнять команды проверки наличия стены на пути: Сверху/снизу/слева/справа свободно?
Используя условие «если», робот проверяет дорогу и только тогда идет:
(Снизу_свободно), то вниз (3)
Или условие «пока» есть куда идти (нет стены сверху), робот будет идти прямо вверх и сажать цветы.
Учебная среда Исполнителя
Для того, что сделать мир программирования и алгоритмизации ярким и веселым, были разработаны различные приложения. Существует учебная среда Исполнитель Кумир для учащихся, в которую входят Чертежник, Робот, Редактор и другие.
Различные приложения отличаются интерфейсом и набором команд, но общий принцип у них одинаковый – пользователь учится писать инструкции для компьютерного исполнителя (робот, черепашка, чертежник и другие). Он дает ему команды, изучая программирование от единичных заданий, постепенно переходя от элементарных линейных алгоритмов до циклических с условиями. Обучение проходит в игровой форме, при помощи кнопок. Далее этап написания команд на русском языке. На финальном этапе ученик осваивает СКИ на языке программирования (на английском).
Если ученик/пользователь дает задание исполнителю, которое невозможно выполнить физически (непреодолимое препятствие), математически (деление на ноль) – запускается система отказов.
Сравнительная характеристика основных приложений:
Виды исполнителей, их особенности
Одной из основных классификаций является деление исполнителей по отношению к тому, как они выполняют. Одушевленных называют неформальными, потому что они понимают, что делают, могут анализировать и даже видоизменять команды при изменении условий. Неодушевленных – формальными исполнителями, так как они строго выполняют команды, механически, не понимая, что делают, не задумываясь над задачей или промежуточными итогами.
Хорошим примером формального исполнителя является любая программируемая система, иногда даже человек, который подходит к выполнению определенных задач бездумно, как робот, не только не волнуясь о результате, и не анализируя происходящее.
Алгоритм пишут, учитывая особенности того, для кого он предназначен. Для некоторых людей сухого набора команд мало, им нужны дополнительные инструменты (изображения, примеры). Инструкция будет разной, если написана она для конкретного Игоря Козакова или для учеников 6-класса. Точно также команды для бездомной собаки Жуля будут одни, а для дрессированных полицейских овчарок – другие.
Читайте также: