Алгоритм 1
ПОНЯТИЕ АЛГОРИТМА ИСПОЛНИТЕЛИ АЛГОРИТМА Урок 1 2
Не существует строгого определения алгоритма. Синонимы: инструкция, правило. Основные понятия: исполнитель алгоритма, система команд исполнителя 3
Алгоритм - это строго определённая последовательность действий, описывающая процесс преобразования объекта из начального состояния в конечное, записанная с помощью понятных исполнителю команд. 4
Алгоритм - это последовательность действий, удовлетворяющая следующим свойствам: 1. Дискретность 2. Точность 3. Понятность 4. Результативность 5. Массовость 5
Дискретность - разделение информационного процесса в алгоритме на отдельные команды. 6
Точность Исполнитель должен точно знать, какую команду выполнять следующей 7
Понятность Алгоритм должен содержать только те команды, которые входят в систему команд исполнителя. 8
Результативность Преобразование объекта из начального состояния в конечное за конечное число шагов. 9
Массовость Решение целого класса однотипных задач по одному алгоритму 10
Крестьянину нужно перевезти через реку волка, козу и капусту. Лодка небольшая: в ней может поместиться крестьянин, а с ним или только коза, или только волк, или только капуста. Но если оставить волка с козой без человека, то волк съест козу, если оставить козу с капустой, то коза съест капусту, а в присутствии человека «никто никого не ел». 11
12
Решение: Перевести козу Перевести волка Перевести козу обратно Перевезти капусту Перевести козу. 13
ИСПОЛНИТЕЛИ АЛГОРИТМОВ Исполнитель – это тот, кто умеет понимать и выполнять некоторые команды. Среда исполнителя – это предметы, которые окружают исполнителя и с которыми он работает. 14
ИСПОЛНИТЕЛИ АЛГОРИТМОВ Список (или система) Команд Исполнителя (СКИ) – набор команд, понятных исполнителю. Исполнитель может выполнить только те команды, которые входят в его СКИ. 15
ИСПОЛНИТЕЛИ АЛГОРИТМОВ Исполнителями могут быть люди: ученик, рабочий, учитель, бригада; животные: дрессированная собака (санитар, розыскная, охотничья), кошка; машины: станки, роботы, компьютеры; 16
Ошибки при работе исполнителей НЕ ПОНИМАЮ Заданной команды нет в списке команд исполнителя, и он ее не понял. Вероятно, мы ошиблись в записи текста команды. НЕ МОГУ Исполнитель понял команду, но не может ее выполнить. Например, роботу дана команда вперед, а впереди стоит стенка, и он не может идти. Или собаке скомандовали Сидеть!, а она уже сидит. ЛОГИЧЕСКИЕ ОШИБКИ Исполнитель понял команду и выполнил ее, но сделал не то, что мы от него хотели. Причина этого – наша ошибка в составлении задания (алгоритма). 17
Задачи для самостоятельного решения Переправа семьи. Отец, мать и двое детей хотят переправиться через реку. Все умеют грести, но лодка выдерживает либо одного взрослого, либо двоих детей. Как им всем переправиться на другой берег? Фальшивые монеты. Из 9 монет одинакового достоинства одна фальшивая (более легкая). Как ее найти за два взвешивания с помощью чашечных весов без гирь? 18
Задачи на переправу через реку river.htm river.htm 19
СПОСОБЫ ЗАПИСИ АЛГОРИТМА Урок 2 20
СПОСОБЫ ЗАПИСИ АЛГОРИТМА: Словесный Графический При помощи языка программирования 21
БЛОК-СХЕМЫ: Наглядно (графически) представить алгоритм можно при помощи БЛОК-СХЕМЫ: 22
ПРОГРАММА КАК СПОСОБ ЗАПИСИ АЛГОРИТМА Урок 3 23
ПРОГРАММА Человек способен понимать смысл команды и часто может «додумать», что от него хотели даже тогда, когда команда задана неточно. Для того, чтобы алгоритм был понятен роботу, компьютеру или другой машине, недостаточно только написать команды, надо еще и оформить алгоритм в таком виде, в котором его понимает машина, то есть записать в формальном виде. 24
ПРОГРАММА В формальной записи алгоритма можно использовать только те команды, которые входят в СКИ исполнителя. Кроме того, надо соблюдать специальные правила оформления, которые позволят исполнителю распознать команды и определить последовательность их выполнения. 25
ПРОГРАММА Алгоритм можно записать разными способами и даже на разных языках. Хотя при этом исполнитель может, конечно, их не понять. Вы знаете, что есть специальные виды исполнителей алгоритмов компьютеры. Они выполняют программы. Программа – это алгоритм, записанный в форме, понятной компьютеру. 26
Правила записи программ для компьютеров. Любой алгоритм имеет название; Алгоритм начинается с открывающей фигурной скобки { и заканчивается закрывающей фигурной скобкой }; команды, расположенные между этими скобками, называются телом алгоритма; В алгоритм могут входить только те команды, которые есть в СКИ исполнителя; 27
Правила записи программ для компьютеров. Каждая команда заканчивается знаком ;, который обозначает конец команды; Для того, чтобы нам было легче разбираться в программах, используют комментарии - текстовые пояснения, которые начинаются знаками /* и заканчиваются знаками */; исполнитель не обращает внимания на комментарии в алгоритме. 28
ПРИМЕР Перевозчик { перевезти козу; вернуться; перевезти волка; вернуться с козой; перевезти капусту; вернуться; перевезти козу; } 29
Задачи для самостоятельного решения Решение Задачи о переправе семьи оформить в виде блок-схемы. Решение Задачи о фальшивых монетах оформить как программу для компьютера. Текст задач – слайд 18 30