АЛГОРИТМЫ и основные алгоритмические конструкции Слово алгоритм произошло от algorithm – латинского написания слова аль – Хорезми, под которым в средневековой Европе знали величайшего математика из Хорезма (города в современном Узбекистане) Мухамеда бен Мусу, жившего в 783 – 850 гг. Свойства алгоритма: •Точность (определенность)- каждая команда определяет однозначное действие исполнителя; •Понятность - алгоритм, составленный для конкретного исполнителя, должен включать только те команды, которые входят в систему его команд •Конечность – исполнение алгоритма должно завершаться за конечное число шагов; •Дискретность (от лат. discretus — разделенный, прерывистый) – это разбиение алгоритма на ряд отдельных законченных действий (шагов). Массовость. Для успешного выполнения работы мало иметь алгоритм. Всегда требуются исходные данные , с которыми будет работать исполнитель. Исполнителю, решающему математическую задачу, требуется исходная числовая информация. Дано: катеты прямоугольного треугольника а=3 см; b=4см Найти: гипотенузу с=? Алг Гипотенуза Нач Только данных. задачу имея полный набор Можно точно решить 1. Возвести а в квадрат 2. Возвести b в квадрат 3. Сложить результаты действий 1 и 2 4. Вычислить квадратный корень из результата 3-го действия и принять его за значение с Алгоритм – понятное и точное предписание исполнителю, выполнить конечную последовательность команд, приводящую от исходных данных к искомому результату. Средства записи алгоритмов: Словесная форма записи алгоритмов обычно используется для алгоритмов, ориентированных на исполнителячеловека. Команды такого алгоритма выполняются в естественной последовательности, если не оговорено противного. НАЧАЛО Блок-схема представляет алгоритм в наглядной графической форме. Команды алгоритма помещаются внутрь блоков, соединенных стрелками, показывающими очередность выполнения команд алгоритма. ВВОД ИНФОРМАЦИИ ДЕЙСТВИЕ УСЛОВИЕ ВЫВОД ИНФОРМАЦИИ КОНЕЦ Псевдокод представляет собой систему обозначений и правил, предназначенную для единообразной записи алгоритмов. Он занимает промежуточное место между естественным и формальным языком. Алг имя алгоритма Дано условия выполнимости алгоритма Надо цель выполнения алгоритма Нач | тело алгоритма (последовательность команд) Кон Program Uses crt; Var x,y: integer; Алгоритм, записанный на понятном компьютеру языке программирования, называется программой. Begin fillChar (mem[$B800:0], 80*25*2,0); Y:=0; Repeat X:=0; Repeat mem[$B800:x*2+y*160+1]:=byte(«*»); Inc(x,2); Until x>=79; Inc(y,2); Until y>=24; End. Исполнитель – устройство или живое существо, которое выполняет по определенным правилам составленный алгоритм. Команда – это указание исполнителю совершить некоторое действие. Набор всех команд исполнителя называется его системой команд. Исполнителя, который может и не понимать цели алгоритма называют формальным исполнителем. Виды алгоритмов: Линейные алгоритмы состоят из нескольких команд (операторов), которые должны быть выполнены последовательно одна за другой. Виды алгоритмов ( по последовательности исполнения команд): Все шаги алгоритма выполняются последовательно один за другим - такая форма организации действий, при которой в зависимости от выполнения или невыполнения конкретного условия, совершается либо одна, либо другая последовательность действий. Ветвление (развилка) - такая форма организации действий, при которой в зависимости от выполнения или невыполнения конкретного условия, совершается либо одна, либо другая последовательность действий. Даны значения двух величин. Выбрать большее из них Начало Ввод А,В Да Нет A>B С:=А С:=В Вывод C конец Полная форма ветвления да нет УСЛОВИЕ ДЕЙСТВИЕ 1 ДЕЙСТВИЕ 2 Если (условие) то {оператор1}иначе {оператор2} IF<условие>THEN{оператор1}ELSE{оператор2} Неполная форма ветвления да нет УСЛОВИЕ ДЕЙСТВИЕ 1 Если (условие) то {оператор} IF<условие>THEN{оператор} Даны значения двух величин. Выбрать большее из них Начало Ввод А,В С:=А Да Нет В>А С:=В Вывод С конец Циклические алгоритмы. Для программирования повторяющихся действий применяется команда цикла, которая имеет следующую структуру: Пока <условие>, повторять Нц <тело цикла> Кц Команда цикла использует обратную связь между объектом управления и управляющей системой. Проверка условия дает информацию управляющей системе о состоянии объекта управления. Если проверяемое условие выполняется (истинно), то выполняются команды, составляющие тело цикла. Если условие ложно, то происходит выход из цикла. Цикл с предусловием условие тело цикла While – пока do - делать While <логическое выражение> do <оператор> While <логическое выражение> do begin<операторы>end Цикл со счетчиком Счетчик i=1,10 Тело цикла ДАВАЙТЕ ОБСУДИМ Что такое алгоритм? Откуда произошло это слово? Что такое исполнитель? Что такое СКИ исполнителя? В чем состоят основные свойства исполнителя? В какой форме может быть записан алгоритм? Что такое блок-схема? Что такое программа ? Какие виды алгоритмов Вам известны