-
Понятие алгоритма и его свойства
Алгоритм – это чѐтко определѐнная последовательность дей-ствий, описывающих процесс преобразования объекта из начальногосостояния в конечное с помощью понятной исполнителю последова-тельности команд.Из этого определенияследует,чтоправильносоставленныйалгоритмхарактеризуетсяследующимисвойствами:
-
дискретностью, т. е. представлен в виде последовательно- сти команд, которые исполнитель должен выполнять одну за другой;
-
понятностью, т. е. должен содержать только те команды, которые входят в систему выполняемых команд исполнителя;
-
детерминированностью, т. е. алгоритм должен быть пред- ставлен таким образом, чтобы, выполняя очередную команду, испол- нитель точно знал, какую команду следует выполнять следующей;
-
результативностью, т. е. алгоритм должен обеспечить пре- образование от начальных данных к результату за конечное число команд.
Дляграфическогопредставленияалгоритмовкомпьютерныхпрограммиспользуютспециальныеобозначения.Основныеизних:
Подписано
в печать **.**.2013. Формат 60 84 1/16
нет– проверка условий
-
Основные типы алгоритмических структур и их блок- схемы
-
линейная – каждое действие должно быть выполнено после- довательно одно за другим:
-
ветвление – в зависимости от выполнения или невыполне- ния указанного условия реализуется та или иная последовательность команд:
-
да
|
|
действия при верном условии
|
-
цикл – серия команд (тело цикла) выполняется многократ- но. Разновидности циклов:
Цикл со счѐтчиком – выполняется заранее определѐнное ко-личество раз:
Цикл с предусловием – проверяется условие и, если оно вы-полняется, то тело цикла (тц) повторяется, если нет – происходит пе-реход к действию, следующему за телом цикла. Если условие не вы-полняется при первой проверке, то тело цикла не выполняется ни од-ногораза:
Цикл с постусловием – тело цикла (тц) выполняется, затемпроверяется условие и, если оно не выполняется, то тело цикла по-вторяется,есливыполняется,топроисходитпереходкдействию,следующему за телом цикла. В этом варианте тело цикла выполняет-сяхотябы одинразвсегда.
-
1 ... 27 28 29 30 31 32 33 34 ... 45
-
Суммирование/произведение заранее определѐнного коли- чества слагаемых/сомножителей:
S ,
P ,где
fi–алгоритмрасчета
i-гослагаемого/сомножителя,
iн,
iк–грани-цыизмененияиндекса
i.
-
Суммирование слагаемых fiдо тех пор, пока выполняется условие
fi>
-
Алгоритм вычисляет a = 24.
-
Алгоритм вычисляет x= 3; y= 4,5.
x= 0
-
При n= 8 алгоритм вычисляет для элементов массива A
значения4,16,36,64соответственно.нет
-
Алгоритм вычисляет a= 1 * 2 * 3 * 4.
-
Задан одномерный массив Х: x1, x2, …, xn. Приведѐнный фрагмент программы определяет сумму положительных элементов массива Х.
-
Представленный фрагмент блок-схемы вычисляет количест- во нулевых элементов в массиве Х, состоящем из nэлементов.
-
Примеры алгоритмов, составленных в псевдокоде
Сложные алгоритмы удобнее записывать на
псевдокоде, кото-рый включает фразы естественного языка и общепринятые математи-ческие обозначения, оформленные по стандартам, принятым в алго-ритмическихязыках.
-
После выполнения представленного фрагмента программы переменная у приняла значение 10. Каким было значение х перед входом в этот фрагмент?
y:=
x– 1;
x:=
y +2;
y:=
x+
y; вывод
yОтвет:
х=5.
-
Задан фрагмент алгоритма. Какими будут значения d и c на выходе, если на входе а = 8; в=3?
-
Если а < в, то с = в – а иначе с = 2 * (а – в) 2) d = 0
3)Пока
с>А выполнять:
d=
d+1;
c=
c–1
Ответ.Принавыходеизэтогофрагментапеременные
dи
cпримутзначения:
d=2;
c=8
-
Представлен алгоритм (div(x,y) - целочисленное деление хна
у,
mod(х,у) - целый остаток от деления):
k = 50
Выбор
при div(k,12) = 4: d := k при mod(k,12) < 5: d := 2 при mod(k,12) > 9: d := 3 иначе d := 1
Всѐ
Ответ. Значение переменной dпосле выполнения алгоритма равно 2
-
Представлен алгоритм (mod(х,у) - целый остаток от деле-
ния):
k = 70
Выбор
при mod(k,12) = 7: d := kпри mod(k,12) < 5: d := 2 при mod(k,12) > 9: d := 3 иначе d := 1
Всѐ
Ответ. Значение переменной
dпосле выполнения алгоритма равно 3
-
Представлен фрагмент программы:
x:= 9;
y:= 7;
p :=
x=
y;
q :=
y >
x;
p :=
p and
qОтвет. В результате выполнения фрагмента программы переменные
p и
q примут значения
p= false;
q = false
-
1 ... 28 29 30 31 32 33 34 35 ... 45