Categories: All - алгоритмы - команды - задачи

by Dmitry Mihaylov 7 years ago

1647

Алгоритмы и исполнители

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

Алгоритмы и исполнители

Текущая тема

Алгоритмы и исполнители

Алгоритм

Пример 2: Задача "Нарисовать Ёжика" Разрешается графически за несколько шагов.
Пример 1: Задача "Найти среднее арифметическое двух чисел" Разрешается в три шага: 1) задумать два числа; 2) сложить два задуманных числа; 3) полученную сумму разделить на 2
Схема работы алгоритма
Алгори́тм — набор инструкций, описывающих порядок действий исполнителя для достижения результата решения задачи за конечное число действий

Формы представления алгоритма

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

ПРимер Программной формы записи алгоритма

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

Пример Псевдокода

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

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

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

Словесная
Словесный способ записи алгоритмов представляет собой описание последовательных этапов обработки данных. Алгоритм задается в произвольном изложении на естественном языке

Пример. Задача "Найти среднее арифметическое двух чисел" Разрешается в три шага: 1) задумать два числа; 2) сложить два задуманных числа; 3) полученную сумму разделить на 2

Типы алгоритмов

Пример: алгоритм "Телефонный разговор". В примере используется сразу три типа алгоритмов.
Циклический
алгоритм, предусматривающий многократное повторение одного и того же действия (одних и тех же операций) над новыми исходными данными. К циклическим алгоритмам сводится большинство методов вычислений, перебора вариантов. Цикл программы — последовательность команд (серия, тело цикла), которая может выполняться многократно (для новых исходных данных) до удовлетворения некоторого условия.
Разветвляющийся
алгоритм, содержащий хотя бы одно условие, в результате проверки которого может осуществляться разделение на несколько параллельных ветвей алгоритма.
Линейный алгоритм
набор команд (указаний), выполняемых последовательно во времени друг за другом.

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

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

Для исполнителей предусмотрены 2 режима работы: 1)непосредственное управление (ожидает команды от человека) 2)Программное управление (задаётся набор команд, которые выполняются автоматически)

Круг решаемых задач

Каждый алгоритм создаётся под определённый круг задач

Система команд

Совокупность всех команд, которые могут быть выполнены исполнителем

Среда исполнителя

Область, обстановка в которых действует исполнитель

Определение: Исполнитель - это некоторый объект способный выполнять набор команд

Контроль

Тестирования
Тест №2(углубленный)
Тест №1(базовый)
Задания для самостоятельной работы
Какого типа алгоритмическая конструкция изображена на рисунке
2) Составить алгоритм решения задачи в виде блок-схемы: Определить площадь трапеции по введенным значениям оснований (a и b) и высоты (h).
1) Определите значение переменной а после выполнения фрагмента алгоритма:
Задания для работы в классе
3) Два мальчика и двое взрослых должны переправиться на другую сторону реки на плоту, который выдерживает либо двух мальчиков, либо одного мальчика и одного взрослого. Как осуществить переправу? Найди несколько способов решения этой задачи
2) Проснувшись утром, школьник почувствовал недомогание. Находившийся рядом злоумышленник тут же составил для него следующий алгоритм: Измерить температуру. Если температура выше 370 , то: Вызвать врача. Пойти в школу. Несмотря на недомогание, школьник исправил этот алгоритм, добавив всего две строки. Какие строки добавил школьник?
1) Старик должен переправить на лодке через реку волка, козу и капусту. Лодка может выдержать только старика и одного “пассажира”. В каком порядке старик перевезет пассажиров? Не забудь, что волк может съесть козу, а коза – капусту. Найди 2 варианта решения.
Контрольные вопросы
Чем отличается циклический алгоритм от разветвляющегося?
Приведите пример простейшего алгоритма?
В какой форме могут быть записаны алгоритмы?
Какое из свойств алгоритма раскрывает то, что алгоритм - это чёткая последовательность шагов?
Какие типы алгоритмов вы знаете? Охарактеризуйте их?
Что такое алгоритм?

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

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