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

Приложение №1

АЛГОРИТМ И ИСПОЛНИТЕЛИ

Цель изучения : освоить понятия алгоритм, исполнитель, иметь представление об алгоритме как модели деятельности исполнителя.

Алгоритм

Определения алгоритма

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

Алгоритм - это модель деятельности исполнителя алгоритма.

Цель

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

Форма записи алгоритма

Алгоритмы могут быть записаны в виде таблицы, нумерованного списка, программы, блок-схемы.

Составляется алгоритм для конкретного исполнителя, на понятном ему языке.

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

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

Рис.1 Исполнитель – техническое устройство

Рис.2. Исполнитель – животное

Рис.3. Исполнитель - человек

Команда

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

Формальные и неформальные исполнители алгоритма

Исполнители алгоритма могут быть формальными и неформальными.

Неформальный исполнитель может выполнять одну и ту же команду по-разному. В роли неформального исполнителя выступает человек, животное. Неформальный исполнитель сам отвечает за свои действия.

Рис. 4. Неформальный исполнитель

Формальный исполнитель одну и ту же команду выполняет всегда одинаково. Формальными исполнителями являются преимущественно технические устройства. Например, микроволновая печь, стиральная машинка и др. За действием формального исполнителя отвечает управляющий им объект. Для каждого формального исполнителя можно указать круг решаемых задач, среду, систему команд, систему отказов исполнителя и режимы работы.

Рис.5. Формальный исполнитель

Средой исполнителя принято называть область, обстановку, условия, в которой действует исполнитель. Например, средой исполнителя Чертёжник является координатная плоскость.

Рис. 6. Среда исполнителя Чертёжник.

Отказы

Рассматривая среду и систему команд исполнителя, можно составить систему отказов: «не понимаю», «не могу». Если исполнителю подаётся команда, которая не входит в его систему команд исполнителя, то возникает отказ «не понимаю».

Команда: «Подогреть бутерброд»

Рис. 7. Отказ «не понимаю»

Если исполнителю подаётся команда из системы команд исполнителя, которую он не может выполнить в конкретных условиях среды, то возникает отказ «не могу».

Команда: « Идти вперед»

Рис. 8. Отказ «не могу»

Управление исполнителем

Управлением называется процесс направленного воздействия одних объектов на другие.

Исполнители – это объекты управления. Управлять ими можно, составив для них алгоритм.

Два режима управления

Для большинства исполнителей предусмотрены два режима - непосредственного и программного управления.

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

Рис. 7. Режим непосредственного управления

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

Рис. 8. Режим программного управления

Для достижения цели изучения параграфа выполнитренинг и проверь себя с помощью модулядомашнее задание .

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

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

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

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

41 .

Формальный аналог машины Тьюринга.

Машина Тьюринга (МТ) состоит из счетной ленты (разделенной на ячейки и ограниченной слева, но не справа), читающей и пишущей головки, лентопротяжного механизма и операционного исполнительного устройства, которое может находиться в одном из дискретных состояний qo, q1,..., qs, принадлежащих некоторой конечной совокупности (алфавиту внутренних состояний). При этом qо называется начальным состоянием.

Читающая и пишущая головка может читать буквы рабочего алфавита А = [а0, a1,..., аt}, стирать их и печатать. Каждая ячейка ленты в каждый момент времени занята буквой из множества А. Чаще всего встречается буква a0 - «пробел». Головка находится в каждый момент времени над некоторой ячейкой ленты - текущей рабочей ячейкой. Лентопротяжный механизм может перемещать ленту так, что головка оказывается над соседней ячейкой ленты. При этом возможна ситуация выхода за левый край ленты (ЛК), которая является аварийной (недопустимой), или машинного останова (МО), когда машина выполняет предписание об остановке.

Порядок работы МТ (с рабочим алфавитом a0, a1,..., аt и состояниями q0, q1,..., qs) описывается таблицей машины Тьюринга. Эта таблица является матрицей с четырьмя столбцами и (s + 1) (t + 1) строками. Каждая строка имеет вид

Функции, вычислимые по Тьюрингу. Тезис Тьюринга.

Тезис Тьюринга: абстрактная машина Тьюринга способна выполнять любые операции, которые подчиняются некоторым правилам и в этом смысле являются чисто механическими.

Машина работает по программе следующим образом.

В начальный момент времени на ленте записывается некоторая цепочка из множества V * , все остальные клетки ленты заполнены символом #. Управление в начальный момент находится в состоянии q 0 , считывающая – записывающая головка обозревает крайний слева символ записанной цепочки. Работа машины состоит в повторе следующего цикла элементарных действий:

1. Чтение головкой символа из ячейки напротив неё.

2. Поиск применимой команды, а именно команды qa → q’a’d , где q- некоторое состояние управления, a- считываемый символ.

3. Выполнение найденной команды, которая состоит в следующем. В обозреваемую головкой ячейку записывается символ a’ , символ a- стирается, управление переходит в состояние q’ и головка смещается относительно d . Если d=r головка смещается на одну ячейку вправо, если l - смещается на одну ячейку влево, p – перемещение не производится. Остановка производится в том случае, если на очередном шаге ни одна команда программы не является применимой. Результатом работы машины Тьюринга является цепочка, записанная на ленте.

| Планирование уроков и материалы к урокам | 6 классы | Планирование уроков на учебный год (ФГОС) | Исполнители вокруг нас

Урок 24
Исполнители вокруг нас
Работа в среде исполнителя Кузнечик

Формальные исполнители

Формальные исполнители

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

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

Как правило, человек выступает в роли неформального исполнителя. Формальными исполнителями являются преимущественно технические устройства. Человек в роли неформального исполнителя сам отвечает за свои действия. За действия формального исполнителя отвечает управляющий им объект.

Рассмотрим более подробно множество формальных исполнителей. Формальные исполнители необычайно разнообразны, но для каждого из них можно указать круг решаемых задач, среду, систему команд, систему отказов и режимы работы.
1. Круг решаемых задач . Каждый исполнитель создается для решения определенного класса задач.
2. Среда исполнителя . Область, обстановку, условия, в которых действует исполнитель, принято называть средой данного исполнителя.
3. Система команд исполнителя . Предписание о выполнении отдельного законченного действия исполнителя называется командой. Совокупность всех команд, которые могут быть выполнены некоторым исполнителем, образует СКИ - систему команд исполнителя.
4. Система отказов исполнителя . Отказ «не понимаю» возникает тогда, когда исполнителю подается команда, не входящая в его СКИ. Отказ «не могу» возникает тогда, когда команда из СКИ не может быть им выполнена в конкретных условиях среды. 
5. Режимы работы исполнителя . Для большинства исполнителей предусмотрены режимы непосредственного и программного управления. В первом случае исполнитель ожидает команд от управляющего объекта и немедленно выполняет каждую поступившую команду. Во втором случае исполнителю сначала задаётся полная последовательность команд (программа), а затем он выполняет все эти команды в автоматическом режиме. Ряд исполнителей работает только в одном из названных режимов.

1. Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 5. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 5. Количество чисел не превышает 1000. В ведённые числа не превышают 30 000. Программа должна вывести одно число - максимальное число, кратное 5.

3. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, кратных 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 4. Количество чисел не превышает 1000. В ведённые числа не превышают 30 000. Программа должна вывести одно число - количество чисел, кратных 4

5.Напишите программу, которая в последовательности натуральных чисел определяет сумму чисел, кратных 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 3. Количество чисел не превышает 100. В ведённые числа не превышают 300. Программа должна вывести одно число - сумму чисел, кратных 3.

7. Напишите программу, которая в последовательности натуральных чисел определяет максимальное число, кратное 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 4. Количество чисел не превышает 1000. В ведённые числа не превышают 30 000. Программа должна вывести одно число - максимальное число, кратное 4.

9. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, оканчивающихся на 3. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 3. Количество чисел не превышает 1000. В ведённые числа не превышают 30000. Программа должна вывести одно число - количество чисел, оканчивающихся на 3.

13. Напишите программу, которая в последовательности натуральных чисел определяет количество чисел, оканчивающихся на 6. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 6. Количество чисел не превышает 1000. В ведённые числа не превышают 30000. Программа должна вывести одно число - количество чисел, оканчивающихся на 6.

15. Напишите программу, к оторая в последовательности натуральных чисел определяет сумму чисел, кратных 5. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, кратное 5. Количество чисел не превышает 100. В ведённые числа не превышают 300. Программа должна вывести одно число - сумму чисел, кратных 5.

17. Напишите программу, которая в последовательности натуральных чисел определяет определяет сумму всех чисел, кратных 6 и оканчивающихся на 4. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 - признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. В ведённые числа не превышают 30 000. Программа должна вывести одно число: сумму всех чисел, кратных 6 и оканчивающихся на 4.

19. Напишите программу для решения следующей задачи. Камера наблюдения регистрирует в автоматическом режиме скорость проезжающих мимо неё автомобилей, округляя значения скорости до целых чисел. Необходимо определить максимальную зарегистрированную скорость автомобиля. Е сли скорость хотя бы одного автомобиля была меньше 30 км/ч, выведите «YES», иначе выведите «N0». Программа получает на вх од число проехавших автомобилей N (1 < N < 30), затем указываются их скорости. Значение скорости не может быть меньше 1 и больше 300.Программа должна сначала вывести максимальную скорость, затем Y E S или NO.

Входные данные Выходные данные
no

21. Напишите программу для решения следующей задачи. Камера наблюдения регистрирует в автоматическом режиме скорость проезжающих мимо неё автомобилей, округляя значения скорости до целых чисел. Необходимо определить максимальную зарегистрированную скорость автомобиля. Если скорость хотя бы одного автомобиля была не меньше 60 км/ч, выведите «YES», иначе выведите «N0».

Программа получает на вход число проехавших автомобилей N (1 =< N =< 30), затем указываются их скорости. Значение скорости не может быть меньше 1 и больше 300. Программа должна сначала вывести среднюю скорость с точностью до одного знака после запятой, затем «YES» или «N0».

23.

Входные данные Выходные данные

25. Напишите программу, которая в последовательности целых чисел определяет их сумму и количество чётных чисел, кратных 5. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 - признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. В ведённые числа по модулю не превышают 30 000. Программа должна вывести два числа: сумму последовательности и количество чётных чисел, кратных 5.

27. Напишите программу, которая в последовательности целых чисел определяет их сумму и подсчитывает разность количества положительных и отрицательных чисел последовательности. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 - признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. В ведённые числа по модулю не превышают 30 000. Программа должна вывести два числа: сумму чисел и разность количества положительных и отрицательных чисел.

28. Напишите программу, которая в последовательности целых чисел определяет их количество и подсчитывает сумму положительных чётных чисел, не превосходящих 256. Программа получает на вход целые числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 - признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. В ведённые числа по модулю не превышают 30 000. Программа должна вывести два числа: длину последовательности и сумму положительных чётных чисел, не превосходящих 256.

29. Напишите программу, которая в последовательности натуральных чисел определяет количество всех чётных чисел, кратных 5. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 - признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. В ведённые числа не превышают 30 000. Программа должна вывести одно число: количество всех чётных чисел, кратных 5.

31. Напишите программу, которая в последовательности натуральных чисел определяет сумму всех чисел, кратных 7 и оканчивающихся на 2. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 - признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. В ведённые числа не превышают 30 000. Программа должна вывести одно число: сумму всех чисел, кратных 7 и оканчивающихся на 2.

33. Напишите программу, которая в последовательности натуральных чисел определяет сумму всех чисел, кратных 8 и оканчивающихся на 6. Программа получает на вход натуральные числа, количество введённых чисел неизвестно, последовательность чисел заканчивается числом 0 (0 - признак окончания ввода, не входит в последовательность). Количество чисел не превышает 1000. В ведённые числа не превышают 30000. Программа должна вывести одно число: сумму всех натуральных чисел, кратных 8 и оканчивающихся на 6.

35. Введите с клавиатуры 5 положительных целых чисел. Вычислите сумму тех из них, которые делятся на 4 и при этом заканчиваются на 6. Программа должна вывести одно число: сумму чисел, введенных с клавиатуры, кратных 4 и оканчивающихся на 6.

Входные данные Выходные данные

37. Напишите программу, которая в последовательности натуральных чисел определяет минимальное число, оканчивающееся на 4. Программа получает на вход количество чисел в последовательности, а затем сами числа. В последовательности всегда имеется число, оканчивающееся на 4. Количество чисел не превышает 1000. В ведённые числа не превышают 30000. Программа должна вывести одно число - минимальное число, оканчивающееся на 4.

Последние материалы раздела:

Microsoft WorldWide Telescope — виртуальный симулятор Вселенной Основные режимы работы WorldWide Telescope
Microsoft WorldWide Telescope — виртуальный симулятор Вселенной Основные режимы работы WorldWide Telescope

Многие любители астрономии берут с собой «в поля» ноутбуки с приложениями, облегчающими поиск и наблюдение за небесными объектами. Те же самые...

Как закрыть приложение на Android?
Как закрыть приложение на Android?

Что делать, если зависла программа в Windows 7??? Думаю, многие знают, что в этот момент нам на помощь придет Диспетчер задач (вызывается он...

Платеж не прошел стадию верификации киви Решаем проблемы с верификацией QIWI
Платеж не прошел стадию верификации киви Решаем проблемы с верификацией QIWI

Вне зависимости от того пользуйтесь вы платежной системой Киви впервые, или совершаете в ней финансовые переводы каждый месяц всегда есть...