20024

Понятие алгоритма. Исполнитель алгоритма. Система команд исполнителя (на примере учебного исполнителя). Свойства алгоритма. Способы записи алгоритмов; блок-схемы

Шпаргалка

Информатика, кибернетика и программирование

Понятие алгоритма. Исполнитель алгоритма. Свойства алгоритма. Рассмотрим пример алгоритма для нахождения середины отрезка при помощи циркуля и линейки.

Русский

2013-07-25

53.5 KB

6 чел.

Билет 6

------------------------------------------------------------------------------------------------------------------------
1. Понятие алгоритма. Исполнитель алгоритма. Система команд исполнителя (на примере учебного исполнителя). Свойства алгоритма. Способы записи алгоритмов; блок-схемы.
------------------------------------------------------------------------------------------------------------------------

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

  1.  Найти тропу, по которой часто ходят мамонты.
  2.  Вырыть на ней большую глубокую яму и замаскировать ветками.
  3.  Спрятаться и ждать, пока в яму не провалится мамонт.
  4.  Закидать провалившегося мамонта копьями и камнями.
  5.  Разделать тушу и доставить ее к хижинам племени.

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

Само слово "алгоритм" происходит от "algorithmi" - латинской формы написания имени выдающегося математика IX века аль-Хорезми, который сформмулировал правила выполнения арифметических операций.

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

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

Алгоритм выполняется за определенное количество шагов. Шаг – отдельное законченное действие.

Рассмотрим пример алгоритма для нахождения середины отрезка при помощи циркуля и линейки.

Алгоритм деления отрезка АВ пополам:
1) поставить ножку циркуля в точку А;
2) установить раствор циркуля равным длине отрезка АВ;
3) провести окружность;
4) поставить ножку циркуля в точку В;
5) провести окружность;
6) через точки пересечения окружностей провести прямую;
7) отметить точку пересечения этой прямой с отрезком АВ.

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

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

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

Исполнитель алгоритмов

Исполнители часто встречаются в сказках. В одной из них Иван-Царевич говорит Избушке-На-Курьих-Ножках: “Избушка, избушка! Встань к лесу задом, ко мне передом!”. При этом команда должна быть задана очень точно, чтобы исполнитель ее понял. В сказке “Али-Баба и сорок разбойников” волшебная дверь открывалась по команде “Сезам, откройся!”. Жадный Касым, тайно проникший в пещеру, забыл эту фразу и не смог выйти из пещеры.

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

Исполнитель алгоритма — это некоторая абстрактная или реальная (техническая, биологическая или биотехническая) система, способная выполнить действия, предписываемые алгоритмом.

Система команд исполнителя (СКИ) – это все команды, которые исполнитель умеет выполнять.

Каждый исполнитель может выполнять команды только из некотоpого стpого заданного списка — системы команд исполнителя. Для каждой команды должны быть заданы условия пpименимости (в каких состояниях сpеды может быть выполнена команда) и описаны pезультаты выполнения команды . Напpимеp, команда Pобота "ввеpх" может быть выполнена, если выше Pобота нет стены. Ее pезультат — смещение Pобота на одну клетку ввеpх.

После вызова команды исполнитель совеpшает соответствующее элементаpное действие .

Отказы исполнителя возникают, если команда вызывается пpи недопустимом для нее состоянии сpеды.

Среда исполнителя – обстановка, в которой функционирует исполнитель.

Исполнителями могут быть

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

Исполнитель Робот

Как и любой исполнитель, Робот понимает только ограниченный набор команд, которые входят в его СКИ (список команд исполнителя). Некоторые примеры команд:

СКИ Робота:

направо; повернуться на 90 градусов вправо
налево; повернуться на 90 градусов влево
кругом; развернуться кругом (на 180 градусов)
вперед ( n ); перейти на n клеток вперед
назад ( n ); перейти на n клеток назад
посади; посадить цветы на грядке в том месте, где стоит Робот

Свойства алгоритма 

  1.  Понятность для исполнителя — т.е. исполнитель алгоритма должен знать, как его выполнять.
  2.  Дискpетность (прерывность, раздельность) — т.е. алгоpитм должен пpедставлять пpоцесс pешения задачи как последовательное выполнение пpостых (или pанее опpеделенных) шагов (этапов).
  3.  Опpеделенность — т.е. каждое пpавило алгоpитма должно быть четким, однозначным и не оставлять места для пpоизвола. Благодаpя этому свойству выполнение алгоpитма носит механический хаpактеp и не тpебует никаких дополнительных указаний или сведений о pешаемой задаче.
  4.  Pезультативность (или конечность). Это свойство состоит в том, что алгоpитм должен пpиводить к pешению задачи за конечное число шагов.
  5.  Массовость . Это означает, что алгоpитм pешения задачи pазpабатывается в общем виде, т.е. он должен быть пpименим для некотоpого класса задач, pазличающихся лишь исходными данными. Пpи этом исходные данные могут выбиpаться из некотоpой области, котоpая называется областью пpименимости алгоpитма.

В какой форме записываются алгоритмы?

На практике наиболее распространены следующие формы представления алгоритмов:

  •  словесная (записи на естественном языке);
  •  графическая (изображения из графических символов);
  •  псевдокоды (полуформализованные описания алгоритмов на условном алгоритмическом языке, включающие в себя как элементы языка программирования, так и фразы естественного языка, общепринятые математические обозначения и др.);
  •  программная (тексты на языках программирования).

Графический способ записи алгоритмов
(блок-схема)

Графический способ представления алгоритмов является более компактным и наглядным по сравнению со словесным.

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

Такое графическое представление называется схемой алгоритма или блок-схемой .

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

Основные алгоритмические блоки

Начало-Конец (блок начала и конца алгоритма)

Процесс (вычислительное действие или последовательность действий)

Решение (проверка условия)

Ввод-вывод (ввод или вывод в общем виде)

 

Модификация (начало цикла)

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


 

А также другие работы, которые могут Вас заинтересовать

42233. Методы проведения фотоэлектроколориметрии двухкомпонентных систем 2.19 MB
  Фотоколориметрия основана на измерении поглощения света окрашенными растворами. Отличается от колориметрии тем, что интенсивность поглощения света оценивается не глазом исследователя, а специальными приборами – фотоэлектроколориметрами.
42234. Побудова лінійної моделі з допомогою псевдообернених операторів 63.5 KB
  На виході системи спостерігається сигнал у вигляді вектора розмірності . Постановка задачі: Для послідовності вхідних сигналів та вихідних сигналів знайти оператор перетворення вхідного сигналу у вихідний. Систему 1 запишемо у матричній формі або 2 де – матриця вхідних сигналів розмірності – матриця вихідних сигналів розмірності . Варіанти вхідних на вихідних сигналів для яких потрібно побудувати лінійний оператор перетворення вхідного сигналу у вихідний: 1 Вхідний сигнал – x1.
42235. Методи реалізації на мові Асемблера основних виконавчих операторів мови Паскаль. Методика включення текстів програм на мові Асемблера в програми на мові Паскаль 136.5 KB
  Робота виконується на двох заняттях. На першому занятті на базі програми на мові Паскаль студенти створюють файл, що містить результати трансляції кожного оператора Паскаль-програми на мові Асемблера, вивчають методи реалізації на мові Асемблера найуживаніших операторів мови Паскаль. На другому занятті оформляють у Паскаль-програмі асемблерну вставку, що оптимізує, по можливості, Паскаль-програму в обсязі і/або швидкодії.
42236. ПЗО побудувати на Intel 8255 39 KB
  Для керування використовувати розряд 4 каналу РС для сигналу Redy розряд 0 каналу РС. Очікування сигналу “Redy†РС0=1. Ввімкнення сигналу “Control†РС4=1. Вимкнення сигналу “Control†РС4=0.
42237. Создание изображений с помощью Adobe Photoshop 941 KB
  Основное меню расположенное в верхней части окна позволяет выбирать все команды программы Photoshop. Пункт Параметры в меню Окно Window позволяет включить или отключить вывод панели активных инструментов на экран. Состав палитр отображаемых в рабочем окне указывается с помощью команды Окно Window основного меню программы Photoshop. Инструментальная панель PhotoShop Можно выбрать нужный инструмент либо щелкнув мышью на его значке в панели инструментов либо перетащив курсор мыши на его значок в значке в панели инструментов либо...
42238. Работа с векторной графикой в Adobe Photoshop 448.5 KB
  Кнопка для вывода оглавления Этапы создания кнопки: Создание нового рисунка размером 25090 пикселей с прозрачным фоном. Установка для инструмента Карандаш Pencil размера 9 пикселей. Зеркальный Линейный Зеркальный Зеркальный Линейный Зеркальный Зеркальный Угол 90 90 90 90 95 90 90 0 90 90 Масштаб 130 130 130 90 110 80 100 100 100 110 Дополнительные эффекты Обводка Размер: 2 пикс. Цвет: RGB255 0 0 Тень Цвет: RGB137 11 5 Смещение: 9 пикс.
42239. Создание анимационных изображений в Adobe Photoshop 781.5 KB
  На панели этого инструмента можно задать следующие опции: вид гарнитуру шрифта – ; стиль шрифта Regulr – обычный Itlic – курсив Bold – жирный Bold Itlic – жирный курсив – ; размер шрифта в пунктах – ; режим сглаживания для границ символов – ; режим выравнивания – выравнивание влево по центру или вправо; цвет текста – при щелчке по этому прямоугольнику открывается окно Палитра цветов в котором можно задать цвет текста ; деформация текста вывод текста по заданной кривой – ; включение выключение палитры символов...
42240. Форматирование Web-страниц. Знакомство с элементами и стилями форматирования языка HTML 725 KB
  Программное обеспечение: операционная система Windows Webбраузер Internet Explorer версии 6. Разработчики Webстраниц должны включать в свои документы одно из трех объявлений типов. Сущности и комментарии HTML и XHTML В Webстраницах могут быть представлены только символы кодовой таблицы SCII.
42241. Вставка изображений, списков и гипертекстовых ссылок в Web-страницы 432.5 KB
  Адресатом ссылки может быть: начало какоголибо раздела данного документа HTML другой документ HTML изображение звуковой клип видеоклип программа и т. Атрибут nme и id используется для создания внутренних ссылок меток или якорей в документе к разделам документа таблицам рисункам терминам и т. например: nme= P01 Раздел 1.1 Тот же пример с использованием атрибута id рекомендуется использовать именно этот атрибут: id= P01 Раздел 1.