Кто разрабатывает алгоритмы компьютер человек или исполнитель

Обновлено: 07.07.2024

Понятие алгоритма. Понятие алгоритма известно в математике давно. Термин происходит от имени великого ученого мусульманского мира - узбека, жителя города Хорезм Абу-Абдуллы-Мухаммеда ибн Мусы аль Маджуса аль Хорезми (VIII-IXв). Его труд "Китаб мухтасар аль джебр ва-л-мукабала" в XII веке был переведен на латынь и стал доступным для европейцев. В нем были изложены правила 4-х арифметических действий над числами в десятичной системе счисления и правила решения уравнений первой степени. Эти правила и были названы в Европе АЛГОРИТМАМИ. Кстати, в этом же труде впервые был введен и термин АЛГЕБРА (восстановление, перенос отрицательных членов уравнения с изменением знака). Затем понятие алгоритма переместилось в область логики, где появилась теория алгоритмов, изучавшая процесс доказательств или разрешимость и неразрешимость математических задач. Само понятие алгоритма до XX века оставалось не определённым в строгой форме, меняющим свой смысл во времени, часто понимаемым только интуитивно. Но при возникновении перед человеком необходимости создания вычислительных устройств более высокого уровня это понятие обрело свой законченный научный смысл. Это произошло в 1937 году, когда английский математик Алан Тьюринг доказал теоретически возможность построения устройства, осуществляющего алгоритм. Такое абстрактное устройство получило название МАШИНА ТЬЮРИНГА. Аналогичный, но более простой исполнитель алгоритма - МАШИНА ПОСТА. Когда же были созданы первые ЭВМ, понятие алгоритма и теория алгоритмов переместились в новую науку, связанную с этими вычислительными устройствами - информатику.

Алгоритм - это точное описание упорядоченной последовательности действий, приводящей за конечное число шагов к необходимому результату. Свойства алгоритмов:

  1. понятность
  2. однозначность
  3. дискретность (пошаговость)
  4. массовость (универсальность)
  5. результативность
  6. конечность
  7. безошибочность

Очевидно, что предписание "Пойди туда, не знаю куда, принеси то, не знаю что" алгоритмом не является. В качестве исполнителя алгоритмов в "докомпьютерную" эру подразумевался человек (в крайнем случае, животное - в цирке). Человек постоянно пользуется алгоритмами при решении задач, не задумываясь над этим, машинально (автоматически). Наглядными примерами алгоритмов являются различные инструкции, правила, рецепты. Открывая дверь ключом, никто не размышляет над тем, как это сделать. Но чтобы научить этому другого, придется составить алгоритм. Например, так:

  1. Достать ключ.
  2. Вставить ключ в замочную скважину.
  3. Повернуть ключ против часовой стрелки на 2 оборота.
  4. Вынуть ключ.

Этот алгоритм обладает всеми необходимыми свойствами. Но если переставить второе и третье действия, алгоритм тоже можно будет выполнить, но дверь не откроется! Вот почему важен не только набор действий, но и их порядок. Кроме того, в приведённом примере следует обратить внимание на два обстоятельства. Первое не требует пояснений: всякий алгоритм должен иметь имя. Второе состоит в том, что перед выполнением алгоритма задаётся или определяется некоторое начальное состояние, исходные условия алгоритма: открывающий дверь должен находиться перед ней, а не переходить улицу перед подъездом. И ключ также должен находиться под рукой. Сегодня в качестве исполнителей алгоритмов человеку служат многие автоматические устройства и, прежде всего, конечно, компьютер. При этом составление алгоритма должно быть особенно ответственным и тщательным, так как машина не может домысливать и исправлять ошибки. В этом смысле она - идеальный исполнитель. При реализации алгоритма для ЭВМ его шаги становятся операторами, а вся их последовательность - программой. Для исполнителя всегда нужно определить те команды, которые он должен и может выполнять, чтобы совершать действия, предусмотренные алгоритмом. Набор таких команд называется системой команд исполнителя. Таких команд ограниченное число и их не может быть много. Чем меньше команд, тем легче построить техническое устройство в роли их исполнителя. И если исполнителем получена команда, не входящая в его систему команд или неправильно заданная, он должен сообщить об отказе. Т.к. необходимо, чтобы исполнитель получил алгоритм в понятной ему форме, становится важным, каким способом представлен алгоритм. Способы представления алгоритма:

  1. словесный;
  2. табличный;
  3. графический;
  4. программа на алгоритмическом языке.

Для словесного представления алгоритма используется естественный язык (пример - любые инструкции, рецепты и т.п.) С табличным способом представления алгоритма Вы сталкиваетесь в расчетных книжках при плате за квартиру, в бухгалтерских ведомостях, в таблицах инженерных расчетов и т.п. Графический способ представления алгоритма - это блок-схема (рассмотрим на следующем уроке) является наиболее наглядным. Схема алгоритма состоит из графических блоков. Программа - изложение алгоритма специально для ЭВМ в понятных ей символах, словах и командах (иначе говоря - языком программирования). Четвёртый способ – единственный «понятный» компьютеру как автоматическому исполнителю. Первые три служат для понимания решения задачи самим человеком.

В любом алгоритмическом языке (языке программирования) можно выделить четыре основные конструкции (виды алгоритмов):

  1. линейный алгоритм (образование последовательности из нескольких команд);
  2. алгоритм ветвления (выбор одной или нескольких команд);
  3. циклический алгоритм (повторение одной или нескольких команд с заданным количеством повторов или в зависимости от некоторого условия);
  4. вспомогательный алгоритм (самостоятельный алгоритм, облегчающий реализацию модульного принципа составления программы).

Использование комбинаций таких структур позволяет реализовать практически любой алгоритм.

Контрольные вопросы:

  1. Можно ли создать исполнителя алгоритмов, который может всё?
  2. Назовите известные вам способы представления алгоритма.

Индивидуальная работа.

  1. Запишите алгоритм рыбной ловли (или заварки чая).
  2. Какими допустимыми командами Вы снабдили бы автомат, заменяющий:

а) кассира в магазине; б) дворника; в) охранника; г) директора школы?

  1. Имеются два кувшина ёмкостью 3 л и 8 л. Напишите алгоритм для того, чтобы набрать из реки 7 л воды (можно пользоваться только этими кувшинами).
  2. (Старинная русская задача). Некий человек должен перевезти в лодке через реку волка, козу и капусту. За один перевоз он может перевезти только кого-то одного. Составьте алгоритм перевоза так, чтобы никто никого не съел.
  3. С числом разрешается производить только два действия: умножать на два и стирать последнюю цифру. Составьте алгоритм получения из числа 458 числа 14.

Исполнитель может заменять в слове одну букву на другую так, чтобы новое слово имело смысл. Например: «слон» - «слог». Составьте алгоритм превращения «мухи» в «слона».

Презентация на тему: " Разрабатывать алгоритмы может только человек. Исполняют алгоритмы люди и всевозможные устройства – компьютеры, роботы, станки, спутники, сложная бытовая." — Транскрипт:

2 Разрабатывать алгоритмы может только человек. Исполняют алгоритмы люди и всевозможные устройства – компьютеры, роботы, станки, спутники, сложная бытовая техника и даже детские игрушки. Разработчик алгоритма – человек. Исполнитель алгоритма – человек, животное, техническое устройство.

4 Самый впечатляющий пример исполнителя – КОМПЬЮТЕР (универсальное техническое устройство). учёба игра работа управление рисование Как может использоваться компьютер? Куда может быть встроен компьютер?

6 СИСТЕМА КОМАНД ИСПОЛНИТЕЛЯ АЛГОРИТМА – это команды, которые может выполнить конкретный исполнитель. (СКИ) Система команд исполнителя (СКИ) 1.Включение. 2.Замачивание. 3.Отстирывание. 4.Полоскание. 5.Отжим. 6.Сушка. 7.Выключение. 1.Включение. 2. Распознавание 3. Считывание и перевод в цифровой формат. 4. Сохранение на ПК. 5.Выключение. СКИ – Принтер ? Стиральная машина Система команд исполнителя (СКИ) Сканер

7 Начать воспроизведение Пауза Остановить воспроизведение Увеличить громкость Уменьшить громкость Ускоренное воспроизведение Покадровое воспроизведение Выбор языка Пример некоторых команд из СКИ исполнителя «DVD –плеер» Выполните следующий алгоритм: 1. Задумайте число; 2. Прибавьте столько же; 3. Умножьте результат на 3; 4. Разделите на задуманное число. Если после выполненных действий ответ совпал с моим, значит алгоритм был исполнен верно.

8 Человек управляет работой других исполнителей по выполнению алгоритмов, сам исполняет алгоритмы; Компьютер управляет работой связанных с ним технических устройств по выполнению алгоритмов; сам исполняет алгоритмы – программы.

9 Мы работали, трудились И маленько притомились. Нужно сделать повороты Влево, вправо развороты. Вправо смотрим и моргнем Влево смотрим и моргнем. Повторим еще разочек От работы отдохнем. Вверх посмотрим и моргнем Вниз посмотрим и моргнем. Повторим мы упражненье Смотрим в тех же направленьях. Отдохнули мы, размялись И к работе возвращаясь, Не забудем про осанку И дистанцию с экраном.

13 Задание на практическую работу: 1. В папке «Работы 5 класса» откройте папку «Рисуем в KOODRAW» 2. Запустите приложение KOODRAW 3. Нарисуйте изображение по координатам : Самолёт 1) (- 7; 0) (+), (- 5; 2), (7; 2), (9; 5), (10; 5), (10; 1), (9; 0), (- 7; 0). 2) (0; 2) (+), (5; 6), (7; 6), (4; 2). 3) (0; 1) (+), (6; - 3), (8; - 3), (4; 1), (0; 1).

15 Домашнее задание: Учебник: п. 3.2, 4.19 (материал для любознательных). В РАБОЧЕЙ ТЕТРАДИ: 7-10 (стр ) Творческое задание: нарисовать образец рисунка, записать координаты на листочке для программы KOODRAW. Индивидуальное задание: кроссворд.


Понятная и конечная последовательность точных действий (команд), формальное выполнение которых позволяет получить решение поставленной задачи, называется .

  • Исполнитель
  • Алгоритм
  • Система команд
  • Команда
Вопрос 2

Что такое алгоритм?

  • Процесс решения задачи, разбитый на последовательные шаги
  • Конечный набор команд, которые имеют определенную последовательность и которые являются понятными исполнителю и точными
  • Последовательность команд для любого исполнителя
  • Решение задачи
  • Список класса
Вопрос 3

Свойство алгоритма массовость означает:

  • Разбиение алгоритма на конечное число простых шагов
  • Что каждая команда должна быть описана в расчете на конкретного исполнителя
  • Что алгоритм должен обеспечивать возможность его применения для решения однотипных задач
  • Использование любым исполнителем
Вопрос 4

Что такое исполнитель?

  • Объект, способный выполнять некоторые команды
  • Объект, способный выполнять любые действия
  • Объект, выполняющий действия всегда одинаково
Вопрос 5

Свойство алгоритма дискретность означает:

  • Что каждая команда должна быть описана в расчете на конкретного исполнителя
  • Что команды должны следовать последовательно друг за другом
  • Разбиение алгоритма на конечное число простых шагов
  • Строгое движение как вверх, так и вниз
Вопрос 6

Последовательность разработки алгоритма:

  • Определение объектов, указанных в задаче
  • Установление свойств объектов, отношений и действий с объектами
  • Определение исходных данных и результата
  • Определение последовательности действий
  • Запись последовательности действий с помощью команд СКИ
Вопрос 7
  • Путь решения задачи разделён на отдельные шаги
  • Алгоритм состоит из команд, входящих в СКИ
  • Обеспечивается решение задач с различными исходными данными
  • Обеспечивается получение ожидаемого результата
Вопрос 8
  • Алгоритм состоит из команд, входящих в СКИ
  • Обеспечивается решение задач с различными исходными данными
  • Путь решения задачи разделён на отдельные шаги
  • Обеспечивается получение ожидаемого результата
Вопрос 9
  • Путь решения задачи разделён на отдельные шаги
  • Алгоритм состоит из команд, входящих в СКИ
  • Обеспечивается получение ожидаемого результата
  • Обеспечивается решение задач с различными исходными данными
Вопрос 10

К свойствам алгоритма относятся:

  • Дискретность
  • Понятность
  • Определенность
  • Массовость
  • Результативность
Вопрос 11

Какой из объектов может являться исполнителем?

Вопрос 12

Дана последовательность команд: встань лицом к северу; пойди налево; поверни направо; иди прямо; остановись.

Какое свойство алгоритма не выполняется для этой последовательности команд, если исполнителем являетесь Вы сами?

  • Дискретность
  • Понятность
  • Точность
  • Результативность
Вопрос 13

Свойство понятности означает то, что алгоритм состоит только из команд, входящих в … команд исполнителя:

Вопрос 14

Необходимо верно указать, какое свойство алгоритма означает, что в алгоритме нет команд, смысл которых может быть истолкован исполнителем неоднозначно:

  • Дискретности
  • Определенности
  • Массовости
Вопрос 15

Закончите предложение: «Блок-схема – форма записи алгоритма, при которой для обозначения различных шагов алгоритма используются…"

- образовательные: познакомить с исполнителями алгоритма, с программным принципом работы компьютера.

- развивающая: развивать информационные знания учащихся

- воспитательная: развитие познавательного интереса, логического мышления

Теоретические сведения к практической работе

Алгоритм – последовательность действий, описывающая процесс преобразования объекта из начального состояния в конечное, записанная с помощью понятных исполнителю команд.

Исполнителем алгоритма может быть человек или автоматическое устройство – компьютеры, роботы, станки, спутники, сложная бытовая техника и даже детские игрушки. Каждый алгоритм создается в расчете на вполне конкретного исполнителя.

Компьютер, как исполнитель, любую работу выполняет по программе. Программы пишут люди, а компьютер формально их выполняет.

hello_html_m50f351d4.jpg

Разработчики систем искусственного интеллекта пытаются научить машину, подобно человеку, самостоятельно строить программу своих действий, исходя из условия задачи.

hello_html_1ff1c112.jpg

Ставится цель превращения компьютера из формального исполнителя в интеллектуального исполнителя.

Работа обоих исполнителей состоит из четырёх блоков, но формальный исполнитель работает по уже готовой программе, а интеллектуальный – сам составляет программу и получает результат.

Информация для компьютера - данные , представленные в форме, приемлемой для её передачи и обработки на компьютере.

Для работы с данными компьютеру необходимы инструкции ( команды , правила действия). Команды формируются в перечень команд.

Первый компьютер, в котором были полностью реализованы эти принципы, был построен в 1949 г. английским исследователем Морисом Уилксом. Изменяется элементная база, компьютеры становятся все более и более мощными, но до сих пор большинство из них соответствуют тем принципам, которые изложил в своем докладе в 1945 г. Джон фон Нейман.

Согласно фон Нейману, ЭВМ состоит из следующих основных блоков:

- арифметико-логическое устройство, выполняющее арифметические и логические операции;

- устройство управления, которое организует процесс выполнения программ;

- запоминающее устройство, или память, для хранения программ и данных;

- внешние устройства для ввода-вывода информации.

В современных компьютерах это:

- память (запоминающее устройство — ЗУ), состоящая из перенумерованных ячеек;

- процессор, включающий в себя устройство управления (УУ) и арифметико-логическое устройство (АЛУ);

Эти устройства соединены между собой каналами связи, по которым передается информация.

hello_html_m10f9de4d.jpg

Функции памяти: - прием информации из других устройств; - запоминание информации; - выдача информации по запросу в другие устройства машины.

Функции процессора: - обработка данных по заданной программе путем выполнения арифметических и логических операций; - программное управление работой устройств компьютера.

Компьютер является универсальным исполнителем по обработке информации. Значит, для него, как для любого исполнителя, существует определённая система команд (СКИ). Такая система команд для компьютера называется языком машинных команд (ЯМК)

Программа для компьютера – это алгоритм, разработанный на ЯМК. Или, Программа управления компьютером – это последовательность команд ЯМК, где каждая команда – директива для процессора на выполнение определённого действия.

Рассмотрим этапы выполнения программы.

hello_html_m73267c57.jpg

Согласно принципам Джона фон Неймана, программа во время её исполнения и данные, которые она обрабатывает, находятся в оперативной памяти (принцип хранимой в памяти программы). Процессор исполняет программу начиная с первой команды и заканчивая последней.

- Какое основное свойство оперативной памяти? ( энергозависимость, работает с данными, активными в текущий момент времени)

Какие есть особенности в восприятии информации человеком и компьютером? ( человек воспринимает информацию с помощью органов чувств, в виде знаков и сигналов, а компьютер воспринимает информацию в виде цифр (0 и 1).)

- Как сделать так, чтобы программа, написанная человеком, была понятна компьютеру? (нужен способ перевода)

Для компьютера вся информация должна быть представлена в двоичных кодах, т.е. необходим способ перевода. Такой способ перевода называется трансляцией , а выполняет это транслятор.

Вывод: Устройством, которое обрабатывает информацию в компьютере, является процессор, следовательно, алгоритм должен использовать систему команд процессора, или другими словами записан на машинном языке, представляющем собой последовательности нулей и единиц

Сначала программисты, работавшие на компьютерах первого поколения (50-е – 60-е г.), составляли программы на ЯМК (в двоичных кодах), но это довольно сложная работа, поэтому для облегчения программирования были созданы языки программирования высокого уровня (ЯПВУ) - это искусственно созданные языки с несколькими десятками слов (операторов) и строгими правилами синтаксиса. Составление программ на ЯПВУ намного проще. Примеры ЯПВУ: Фортран, Паскаль, Бейсик, Си и др.

Для того чтобы процессор мог выполнить программу, написанную на языке программирования, она и данные с которыми она работает должны быть загружены в оперативную память. Программа написана и загружена в оперативную память и для того чтобы процессор ее выполнил в оперативной памяти, должна быть еще и программа переводчик (транслятор), который переводит программу с языка высокого уровня на язык машинных команд

Таким образом, цепочка событий от составления программы на ЯПВУ до получения результатов решения задачи выглядит так

hello_html_1625f7d7.jpg

Человек всегда должен понимать ограниченность возможность компьютера как исполнителя, необходимость предусмотреть все тонкости команд, поручаемых компьютеру. Человек разрабатывает алгоритм, записывает его на ЯПВУ и анализирует результаты выполнения программы.

Компьютер является формальным исполнителем программ.

Итак, компьютер не может обойтись без программы и исходных данных, подготовить их может только человек.

Поэтому можно говорить, что решение задач компьютером - это формальное исполнение алгоритма (программы), а компьютер является формальным исполнителем.

Компьютер может быть использован для решения самых разнообразных задач, поэтому, исходя из условия задачи, человек решает, каким программным средством пользоваться. Если в состав ПО входят программы, подходящие для решения задач человека, то удобнее ими воспользоваться (текстовый редактор, электронные таблицы, базы данных, презентации).

В случае, если нельзя воспользоваться готовым программным обеспечением, приходится прибегать к программированию (операционные системы, доработка ОС, трансляторы, драйверы, архиваторы, антивирусы).

Принцип программы, хранимой в памяти компьютера, считается важнейшей идеей современной компьютерной архитектуры. Суть идеи заключается в том, что
1) программа вычислений вводится в память ЭВМ и хранится в ней наравне с исходными числами;
2) команды, составляющие программу, представлены в числовом коде по форме ничем не отличающемся от чисел.

В основу работы компьютеров положен программный принцип управления, состоящий в том, что компьютер выполняет действия по заранее заданной программе.

Программное и аппаратное обеспечение в компьютере работают в неразрывной связи и взаимодействии. Состав программного обеспечения вычислительной системы называется программной конфигурацией.

Читайте также: