256.00K

Презентация к лекции 2

1.

Логика и основы алгоритмизации
Лекция 2
Основные вопросы:
1 Основы алгоритмизации
1.2 Свойства алгоритма
1.3 Виды алгоритмов
1

2.

Сейчас понятие алгоритма используется
не только в математике и программировании,
но и в других областях.
Алгоритм – это понятное и точное
предписание
(указание)
исполнителю
совершить
определенную
конечную
последовательность действий над исходной
информацией для решения поставленной
задачи.
2

3.

Свойства алгоритма
Алгоритм обладает шестью важнейшими
свойствами.
1. Дискретность. Это свойство означает
то, что алгоритм должен быть разбит на
отдельные достаточно простые действия,
причем
выполнение
каждого
шага
начинается
после
завершения
предыдущего.
3

4.

Свойства алгоритма
2. Определенность.
Однозначность выполнения каждого
шага. Алгоритм не должен допускать
произвольной трактовки исполнителем.
3.
Результативность.(выполнимость).
Алгоритм
должен
предоставлять
возможность получения решения за
конечное число шагов.
4

5.

Свойства алгоритма
4. Массовость. Это пригодность для
решения многих или даже всех задач
данного типа при различных исходных
данных.
5. Инвариантность. Алгоритм должен
быть составлен таким образом, чтобы он, в
идеальном случае, мог быть выполнен
разными исполнителями: разными ЭВМ, в
разных средах, разными людьми.
5

6.

Свойства алгоритма
6. Завершаемость (конечность)
В более узком понимании алгоритма как
математической функции, при правильно
заданных начальных данных алгоритм
должен завершать работу и выдавать
результат за определённое число шагов.
6

7.

Виды алгоритмов
Алгоритмы делятся на:
- линейные;
- разветвляющиеся;
- циклические.
Линейные алгоритмы.
Команды в таких алгоритмах выполняются
последовательно, в естественном порядке, так
как они записаны сверху вниз.
7

8.

Виды алгоритмов
Линейные алгоритмы
На рисунке представлено
графическое
описание
линейного алгоритма обмена
значениями двух переменных.
8

9.

Виды алгоритмов
Разветвляющиеся алгоритмы
В этих алгоритмах в зависимости от
некоторых условия выполняются те
или иные действия.
Пример
алгоритма
решения
квадратного уравнения на псевдокоде
приведён на следующем слайде.
9

10.

Виды
алгоритмов
10

11.

Виды алгоритмов
Команда ветвления иногда записывается в
сокращенной форме, не с двумя, а с одной
альтернативой. Например, суммирование только
положительных чисел.
11

12.

Виды алгоритмов
Циклические алгоритмы
Для многократно повторяемых действий
используют специальную конструкцию –
цикл. Команды цикла содержат условие для
определения количества повторений.
Существуют три типа циклов.
Рассмотрим
их
на
примере
суммирования и подсчета количества
положительных чисел из 10 введенных
чисел.
12

13.

Виды алгоритмов
Рассмотрим
их
на
примере
суммирования
и
подсчета
количества
положительных чисел из 10 введенных чисел.
В цикле с предусловием сначала
проверяется
условие,
и
если
оно
выполняется, то затем выполняются действия
в теле цикла.
13

14.

Виды алгоритмов
Цикл с предусловием
Если условие не выполняется, то цикл
завершается,
и
будет
выполняться
оператор, следующий за циклом.
При невыполнении условия цикл может
вообще не выполниться ни разу.
14

15.

Виды алгоритмов
Цикл с предусловием
В словесной форме цикл с предусловием
выглядит следующим образом:
1. Обнулить значения суммы s и счетчика
положительных чисел k.
2. Присвоить счетчику всех чисел i
значение 1.
3. Ввести очередное число x.
15

16.

Виды алгоритмов
Цикл с предусловием
4. Если x положительное, то к значению
суммы s прибавить x и увеличить счетчик
k на единицу.
5. Увеличить счетчик i на единицу.
6. Ecли i меньше 10 выполнять действия 3 –
5, иначе переход к п.7.
7. Вывести сумму положительных чисел s и
их количество k.
16

17.

Виды алгоритмов
Цикл с постусловием
В цикле с постусловием условие
проверяется после действий в теле цикла. И
если это условие выполняется, то
происходит выход из цикла. Такой цикл
выполнится хотя бы один раз.
17

18.

Виды алгоритмов
Цикл с постусловием
1. Обнулить значения суммы s, счетчика
всех чисел i и счетчика положительных
чисел k.
2. Пока i меньше 10 выполнять действия 3
– 5, иначе переход к п.7.
3. Ввод очередного числа х.
18

19.

Виды алгоритмов
Цикл с постусловием
4. Увеличить счетчик i на единицу.
5. Если x положительное, то к значению
суммы s прибавить x и увеличить счетчик
k на единицу.
6. Переход к п.2.
7. Вывести сумму положительных чисел s и
их количество k.
19

20.

Виды алгоритмов
Цикл с заданным числом повторений
В цикле с заданным числом
повторений в заголовке цикла явным
образом задается количество повторений
тела цикла, а параметр цикла (в примере i)
изменяется автоматически внутри тела
цикла.
На псевдокоде этот алгоритм будет
выглядеть следующим образом (см. рисунок
далее).
20

21.

Виды
алгоритмов
Цикл
с заданным
числом
повторений
21
English     Русский Rules