Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
КОНСПЕКТ ЛЕКЦИЙ_(полный вариант).doc
Скачиваний:
124
Добавлен:
09.04.2015
Размер:
1.01 Mб
Скачать

Линейный алгоритм

Линейным называют алгоритм, операции и линии потоков которого идут по одному направлению, без повторений операций, без альтернативных путей потоков.

Блок-схема такого алгоритма имеет вид, представленный на рис. 4 а. Пример линейного алгоритма: имеются две переменные a и b, произвести обмен их значениями. Блок-схема алгоритма решения этой задачи приведена на рис. 4 б.

Следует отметить, что знак «=» в блоках 2, 3 и 4 означает не равенство, а операцию присвоения переменной значения. Например, в блоке 2 производится присвоение переменной а суммы значений переменных а и b.

В блок-схеме алгоритма все операции нумеруются (номер проставляется вверху слева от блока) в порядке их выполнения. Блоки «Начало» и «Конец» не нумеруются.

Ветвящийся алгоритм

Алгоритм называется ветвящимся (см. рис. 5), если в нем содержится блок перехода или условия, который имеет одну входную линию потока и более одной выходные линии.

Пример ветвящегося алгоритма: найти наибольшее значение трех переменных a, b и c. Блок-схема решения этого алгоритма приведена на рис. 6.

Рис. 5. Блок-схема ветвящегося алгоритма; а – полное ветвление, б – непол-ное ветвление.

Рис. 6 . Блок схема алгоритма поиска максимального из трех значений

На рис. 7 приведен пример алгоритма вычисления значения переменной у, определяемой математическим выражением:

у =

f1(x) если x ≤ x1

f2(x) если x1 ≤ x ≤ x2

f3(x) если x > x2

Рис. 7. Пример ветвящегося алгоритма

Циклический алгоритм

Алгоритм называется циклическим, если он содержит в своем составе последовательность действий (операторов, переходов), неоднократно повторяющуюся с заданием новых начальных условий. При этом алгоритм включает в себя процедуры задания этих начальных условий.

Часть алгоритма, отражающая эти действия, называется циклом

Как правило, алгоритмы решения реальных задач представляют собой комбинацию всех трех рассмотренных типов простейших алгоритмов. Рассмотрим алгоритмы некоторых часто встречающиеся задач.Рис. 8. Циклический алгоритм; а – цикл «пока», б – цикл «до».

Алгоритмы накопления суммы и произведения

В алгоритмах часто приходится накапливать сумму и произведение значений функции. Математическая запись суммы имеет вид произведения -гдеNn – начальные значений переменной, Nk – конечное значение целочисленной переменной i.

Перед началом процесса накопления суммы переменной, в которой будет использоваться сумма, необходимо присвоить значение 0. Иначе при объявлении переменной и выделения места в памяти ЭВМ, в этом месте может оказаться любая информация от предыдущих операций, и мы можем получить неверную сумму.

При подсчете произведения переменной, в которой будет накапливаться произведение, необходимо присвоить начальное значение 1.

Рис. 9. Блок схемы алгоритмов накопления

а) – суммы y = ai и б) - произведения y = sin(I*b)

Алгоритм табулирования функции

Табулирование функции – это вычисление ее значений по изменяющимся значениям аргумента функции.

Табулируют функцию, например, для построения ее графика, для поиска ее максимальных значений. Табулирование функции y = f(x) ведется на некотором интервале значений аргумента x € [хн; хк], с изменением значений аргумента на одинаковую величину ∆х, которую называют шагом изменения х.

Пример. Разработать алгоритм табулирования функции y, приведенной на стр. 44, на интервале значений х € [хн; хк], с шагом ∆х изменения аргумента. Блок-схема алгоритма решения этой задачи приведена на рис. 10.

Рис. 11. Блок-схема алгоритма табулирования функции

Блок 1” обеспечивает печать заголовка таблицы, а блок 9 – строк таблицы, чтобы получить таблицу следующего вида:

x

y

хн

yн

х + ∆х

yн+1

x + 2∆х

yн+2

хк - ∆х

yк-1

xк

yк

Блок 2”, “Блок 3” и “Блок 10” обеспечивают цикличность вычисления y в соответствии с изменением значения аргумента х от начального значения хн до конечного значения хк с шагом ∆х.