• Что такое алгоритм; • Где встречаются алгоритмы в жизни; • Какие бывают алгоритмы; • Что нельзя сделать по одному и тому же алгоритму. Слово “Алгоритм” происходит от имени выдающегося математика средневекового Востока Мухаммеда аль-Хорезми (787 – 850) Алгоритм – это точное и понятное описание последовательности действий, которая приводит к решению задачи. Например, сейчас я выучу уроки, потом погуляю и посмотрю телевизор. Исполнитель : живое существо или технический объект, выполняющий команды алгоритма Свойства алгоритмов Исполнитель Формальный Не формальный не вносит никаких изменений в алгоритм Может вносить изменения в алгоритм Основные характеристики исполнителя СКИ (система команд исполнителя): набор команд, которые исполнитель понимает и может выполнить Среда: условия, в которых исполнитель может выполнять команды ? Кто будет являться исполнителем следующих видов работ: Уборка мусора во дворе Выдача заработной платы Сдача экзаменов Обучение детей в школе Свойства алгоритмов Дискретность – каждая команда должна быть выполнена прежде, чем исполнитель перейдет к выполнению следующей Понятность – каждая команда должна в ходить в СКИ Точность (определенность) – команда должна пониматься исполнителем однозначно Результативность – выполнение всех команд алгоритма должно привести к решению конкретной задачи за конечное число шагов Массовость – по одному и тому же алгоритму можно решать однотипные задачи Формальность – исполнитель должен получить результат не вникая в сущность алгоритма Как приготовить хороший чай How to make a good tea Вскипятить свежую воду. Bring fresh water to boil. Ополосните заварочный чайник кипятком . Warm the teapot by rinsing out water. Положите чай в заварочный чайник. Put one teaspoonful of tea per. Залейте кипятком. Boiling water into the tea. Через 3 минуты размешайте. Stir the tea after 3 minutes. Добавьте сахар. Add sugar. Как открыть дверь Как «открыть» дверь Достать ключ. Достать ключ. Вставить ключ в замочную скважину. Повернуть ключ 2 раза против часовой стрелки. Повернуть ключ 2 раза против часовой стрелки. Вставить ключ в замочную скважину. Вынуть ключ. Вынуть ключ. Правильный Не правильный Например: на каждом уроке приходится выполнять множество алгоритмов! Подумай, как ты готовишься к уроку. Это тоже алгоритм. А как ты собираешься в школу? И это алгоритм! Если горит красный свет т о улицу не переходи. Если загорелся желт ый свет , т о пригот овься к переходу улицы Если загорелся зеленый свет , то переходи улицу, смот ря на транспорт справа и с лева. Руководствуясь таким алгоритмом, человек будет правильно вести себя при переходе улицы. Алгоритм перехода улицы 1 шаг 2 шаг 3 шаг Результат - это правила, предписывающие последовательность действий, ведущих к достижению некоторого необходимого результата. Алгоритм должен быть конечным. Формы подачи алгоритмов Словесный Словесно-формульный Графический Программный Составить алгоритм, проверяющий возможность существования треугольника с углами А, Б,С. Задать числовые значения углов А, Б,С. Если сумма углов равна 180, то треугольник существует, в другом случае нет. Задать числовые значения углов А, Б,С. Если А+Б+С=180, то треугольник существует, в другом случае нет. Начало А,Б,С А+Б+С=1800 Существует Не существует Конец Алгоритмы можно представлять как некоторые структуры, состоящие из отдельных базовых (т.е.основных) элементов. 1. Базовая структура следование. Школьный алгоритмический язык Язык блок-схем действие 1 действие 2 ......... действие n действие 1 действие 2 : действие n Линейный алгоритм Линейный алгоритмэто набор команд выполняемых последовательно друг за другом . 2. Базовая структура ветвление. Структура ветвление существует в четырех основных вариантах: если-то; если-то-иначе; выбор; выбор-иначе. 2. Базовая структура ветвление. Школьный алгоритмический язык 1. если-то если условие то действия все 2. если-то-иначе если условие то действия 1 иначе действия 2 все Язык блок-схем Школьный алгоритмический язык 3. выбор выбор при условие 1: действия 1 при условие 2: действия 2 ............ при условие N: действия N все 4. выбор-иначе выбор при условие 1: действия 1 при условие 2: действия 2 ............ при условие N: действия N иначе действия N+1 все Язык блок-схем Разветвляющийся алгоритм Разветвляющийся алгоритмэто алгоритм, в котором в зависимости от условия выполняется та или иная серия команд. далее Пример покупка кино. начало Это условный тип алгоритма (ветвление) подойти к кассе нет Это линейный тип алгоритма (следование) билетов в билеты есть да назвать сеанс подать деньги Получилось сочетание условного и линейного типов алгоритмов взять билет и сдачу конец далее 3. Базовая структура цикл Обеспечивает многократное выполнение некоторой совокупности действий, которая называется телом цикла. Школьный алгоритмический язык Язык блок-схем Цикл типа пока. Предписывает выполнять тело цикла до тех пор, пока выполняется условие, записанное после слова пока. нц пока условие тело цикла (последовательность действий) кц Цикл типа для. Предписывает выполнять тело цикла для всех значений некоторой переменной (параметра цикла) в заданном диапазоне. нц для i от i1 до i2 тело цикла (последовательность действий) кц Циклический алгоритм Циклический алгоритм-это алгоритм, предусматривающий многократное повторение одних и тех же действий. далее Пример забить гвоздь Это линейный тип алгоритма (следование) Это циклический тип алгоритма (повторение) Получилось сочетание линейного и циклического типов алгоритмов начало взять гвоздь взять молоток установить острие гвоздя в нужное место ударить молотком по шляпке гвоздя гвоздь торчит нет конец меню да меню далее Проведя исследование, мы выяснили, что в обычной жизни мы многие вещи делаем по определенному алгоритму. Приведенные выше примеры доказывают, что без определенного алгоритма мы не можем приготовить даже яичницу. далее