algoritm_constr

advertisement
АЛГОРИТМЫ
и основные алгоритмические
конструкции
Слово алгоритм произошло
от 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
Тело цикла
ДАВАЙТЕ ОБСУДИМ






Что такое алгоритм? Откуда произошло это слово?
Что такое исполнитель? Что такое СКИ исполнителя?
В чем состоят основные свойства исполнителя?
В какой форме может быть записан алгоритм? Что такое
блок-схема?
Что такое программа ?
Какие виды алгоритмов Вам известны
Download