Лекция 8. . Понятие алгоритма. Изображение алгоритма в виде блок–схемы. Алгоритмы линейной и разветвляющейся структуры

Решение любой задачи на ЭВМ необходимо разбить на следующие этапы: разработка алгоритма решения задачи, составление программы решения задачи на алгоритмическом языке, ввод программы в ЭВМ, отладка программы (исправление ошибок), выполнение программы на ПК, анализ полученных результатов. Рассмотрим первый этап решения задачи – разработку алгоритма.

Понятие алгоритма

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

1. Ввести исходные данные.

2. Преобразовать исходные данные в результаты (выходные данные).

3. Вывести результаты.

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

Разработанный алгоритм можно записать несколькими способами:

· на естественном языке;

· в виде блок-схемы;

· в виде R-схемы.

Рассмотрим пример алгоритма на естественном языке:

1. Ввести в компьютер числовые значения переменных а, b и с.

2. Вычислить d по формуле d = b² - 4ас.

3.

  -b + d -b - d
Иначе вычислить X1 = 2a , X 2 = 2a  

 

Если d < 0, то напечатать сообщение «Корней нет» и перейти к п.4.

 

4. Прекратить вычисления.

 

Изображение алгоритма в виде блок-схемы

Блок-схемой называется наглядное графическое изображение алгоритма, когда отдельные его этапы изображаются при помощи различных геометрических фигур – блоков, а связи между этапами (последовательность выполнения этапов) указываются при помощи стрелок, соединяющих эти фигуры. Блоки сопровождаются надписями. Типичные действия алгоритма изображаются следующими геометрическими фигурами:

Блок начала-конца алгоритма (рис. 8.1).Надпись на блоке: «начало» («конец»). Блок ввода- вывода данных (рис. 8.2). Надпись на блоке: слово «ввод» («вывод» или «печать») и список вводимых (выводимых) переменных.

 
 

 
 

Рис. 8.1. Блок начала-конца алгоритма

 

Рис. 8.2. Блок ввода-вывода данных

 

Блок решения или арифметический (рис. 8.3). Надпись на блоке: операция или группа операций.

Условный блок (рис. 8.4). Надпись на блоке: условие. В результате проверки условия осуществляется выбор одного из возможных путей (ветвей) вычислительного процесса. Если условие выполняется, то следующим выполняется этап по ветви «+», если условие не выполняется, то выполняется этап по ветви «».

 

Рис. 8.3. Арифметический блок Рис. 8.4. Условный блок

В качестве примера рассмотрим блок-схему алгоритма решения уравнения (рис. 8.5), описанного в предыдущем подразделе.

 
 

Рис. 8.5. Блок-схема алгоритма решения квадратного уравнения

Алгоритмы линейной структуры

Линейный алгоритм – это такой, в котором все операции выполняются последовательно одна за другой

 
 

Размещение блоков в линейном алгоритме Рассмотрим несколько примеров линейных алгоритмов.

ПРИМЕР 3.1. Зная длины трех сторон треугольника, вычислить площадь и периметр треугольника.

Пусть a, b, c – длины сторон треугольника. Необходимо найти S – площадь треугольника, P – периметр. Для нахождения площади можно воспользоваться формулой Герона.

 
 

Входные данные: a, b, c. Выходные данные: S, P. Блок- схема алгоритма представлена на рис.

 

Алгоритм примера

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

Например, операция r = (a+b+c)/2 – имеет смысл (переменной r присвоить значение r=(a+b+c)/2), а выражение (a+b+c)/2=r – бессмыслица.

ПРИМЕР Известны плотность и геометрические размеры цилиндрического слитка, полученного в металлургической лаборатории. Найти объем, массу и площадь основания слитка.

Входные данные: R – радиус основания цилиндра, h – высота цилиндра, – плотность материала слитка. Выходные данные: m – масса слитка, V – объем, S – площадь основания. Блок-схема представлена на рис. 3.3.

 
 

Алгоритм примера

 

ПРИМЕР. Заданы длины двух катетов в прямоугольном треугольнике. Найти длину гипотенузы, площадь треугольника и величину его углов.

Входные данные: a, b – длины катетов. Выходные данные: с – длина гипотенузы, S – площадь треугольника, α, β – углы. Блок-схема представлена на рис.

 
 

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

Алгоритмы разветвленной структуры применяются, когда в зависимости от некоторого условия необходимо выполнить либо одно, либо другое действие. В блок-схемах разветвленные алгоритмы изображаются так, как показано на рис.

 
 

.

 

. Фрагмент алгоритма Пример разветвления
разветвленной структуры структуры алгоритма








Дата добавления: 2016-11-02; просмотров: 1153;


Поиск по сайту:

При помощи поиска вы сможете найти нужную вам информацию.

Поделитесь с друзьями:

Если вам перенёс пользу информационный материал, или помог в учебе – поделитесь этим сайтом с друзьями и знакомыми.
helpiks.org - Хелпикс.Орг - 2014-2024 год. Материал сайта представляется для ознакомительного и учебного использования. | Поддержка
Генерация страницы за: 0.01 сек.