Алгоритм и его свойства. Исполнитель алгоритмов: назначение, среда, система команд, режимы работы.
Урок № 2
13.09.2021
Мухаммед ибн Муса аль-Хорезми (787-850 гг.)
Исполнитель алгоритма
Алгоритм – последовательность команд управления каким-либо объектом.
Объект управления – исполнитель алгоритма (техническое устройство или живое существо.
Исполнитель-человек
- Алгоритмы арифметически вычислений;
- Инструкции, предписывающие последовательность действий человека
кулинарный рецепт – алгоритм работы повара
сборка машины из деталей конструктора – алгоритм для ребёнка
инструкция кухонного комбайна – алгоритм для домохозяйки
Поиск выигрышной тактики (алгоритма) игра баше
алг Игра Баше
нач
1. Предоставить ход сопернику.
2 . Взять столько камней, чтобы в сумме с предыдущим ходом соперника получилось 5.
3 . Если остался один камень, то объявить о своём выигрыше, иначе вернуться к выполнению команды 1.
кон
Символика Алгоритмического языка (АЯ)
Заголовок алгоритма – алг
Тело алгоритма – нач, кон
Свойства алгоритма
- Дискретность – процесс решения задачи разбит на последовательность выполняемых шагов.
- Понятность – алгоритм для конкретного исполнителя, должен включать команды, которые входят в систему команд исполнителя (СКИ).
- Точность – каждая команда алгоритма должна определять однозначное действие исполнителя.
- Конечность – исполнение алгоритма должно завершиться за конечное число шагов.
Исходные данные
Математика (условие задачи)
Решение на алгоритмическом языке
Дано: катеты прямоугольного треугольника а =3 см; b =4 см.
Найти: гипотенузу с .
алг Гипотенуза
нач
1. Возвести а в квадрат.
2. Возвести b в квадрат.
3. Сложить результаты действий 1 и 2.
4. Вычислить квадратный корень результата действия 3 и принять его за значение с .
кон
Полный набор данных
Неполный набор данных
Полный набор данных
Фамилия, инициалы, телефонная книга (5 номеров тел.)
Фамилия, инициалы, телефонная книга, адрес (1 номер тел.)
Имея полный набор данных, можно точно решить задачу.
Среда исполнителя
Обстановка, в которой функционирует исполнитель
Задачи управления физическими объектами
Исходные данные – информация о состоянии объекта управления и об обстановке, его окружающей.
Определение алгоритма:
Алгоритм – понятное и точное предписание исполнителю выполнить конечную последовательность команд, приводящую от исходных данных к искомому результату.
Формальное исполнение алгоритма
Алгоритм, обладающий всеми свойствами будет выполняться формально (без элементов творчества)
Например: промышленные роботы, роботы-манипуляторы
Программа
Программа – это алгоритм, записанный на языке исполнителя.
Алгоритм и программа не отличаются по содержанию, но отличаются по форме.
Способы описания алгоритмов
- Словесный (на естественном языке)
- Графический (Блок-схема)
- На АЯ
Блок-схема
команды
нач/кон
условие
данные
Задание:
Как крестьянину перевезти через реку волка, козу и капусту, если в лодку вместе с ним вмещается только или волк, или коза, или капуста? (Нельзя оставить без присмотра ни волка с козой, ни козу с капустой.)
Определить исполнителя, команды, которые может выполнять исполнитель (СКИ), исходные данные и результат. Составить алгоритм на УАЯ и блок-схему.
Исполнитель – крестьянин.
Исходные данные: волк, коза, капуста на береге А.
Результат: волк, коза и капуста на береге В.
Система команд исполнителя:
перевезти волка, козу или капусту на берег А;
перевезти волка, козу или капусту на берег В;
переправиться на берег А или В.
алг переправа
нач
перевезти козу на берег В
перевезти волка на берег В
перевезти козу на берег А
перевезти капусту на берег В
переправиться на берег А
перевести капусту на берег В
кон
Решение задачи в виде блок-схемы
Домашнее задание:
- П. 3
- Стр. 20, вопрос 5 (письм.)