Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Раздел 9.п 9.1.Алгор.docx
Скачиваний:
26
Добавлен:
09.02.2015
Размер:
118.36 Кб
Скачать

Раздел 9. Алгоритмизация и программирование

9.1. Алгоритмизация

9.1.1. Понятие алгоритма. Формы представления алгоритмов

Алгоритм – это четкое описание последовательности действий, которые необходимо выполнить при решении задачи. Разработка алгоритма решения задачи – это разбиение задачи на последовательно выполняемые этапы.

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

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

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

Изображение на естественном языке. Словесно-формульное описание алгоритмов, т.е. с помощью слов и формул. Данное описание можно использовать перед созданием алгоритмов в виде блок-схемы, в случае сложного алгоритма.

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

9.1.2. Визуализация алгоритмов

В схемах алгоритмов и программ применяются следующие условные графические обозначения, согласно ГОСТ 19.003-80 «Единая система программной документации. Схемы алгоритмов и программ. Обозначение условные графические (таблица № 9.1.).

Таблица № 9.1. Обозначения условные графические

Наименование

Обозначение

Функция

1. Процесс

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

2. Решение

Выбор направления выполнения алгоритма или программы в зависимости от некоторых переменных условий

3. Предопределен-ный процесс

Использование ранее созданных и отдельно описанных алгоритмов или программ

4. Модификация

Выполнение операций, меняющих команды или группу команд, изменяющих программу

5. Ввод - вывод

Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод)

6. Пуск-останов

Начало, конец, прерывание процесса обработки данных или выполнения программы

7. Документ

Ввод-вывод данных, носителем которых служит бумага

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

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

пуск

останов

Рис. 9.1. Блок-схема алгоритма линейной структуры.

Пример 5.1. Дано: a, b, c - длины трех сторон треугольника.

Найти: S – площадь треугольника, Р – периметр треугольника.

Площадь треугольника равна , гдеr – полупериметр треугольника.

Блок-схема алгоритма решения задачи (рис.9.2.)

пуск

a,b,c

r=(a+b+c)/2

P=a+b+c

S=

S,P

останов

Рис. 9.2. Блок-схема алгоритмы нахождения площади треугольника и периметр

Пример 9.2.

Дано: a, b – длины двух катетов в прямоугольном треугольнике.

Найти: с – длину гипотенузы, S – площадь треугольника

Блок-схема алгоритма решения задачи (рис.9.3.).

пуск

a,b

С=

S=ab/2

S,c

останов

Рис. 9.3. Алгоритм нахождения гипотенузы и площади треугольника

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

Алгоритм можно использовать только в том случае, если он верен. На практике практически всегда созданный алгоритм имеет ошибки, поэтому он требует «отладки» - исправлений.

Отладкой алгоритма называется процесс выявления и исправления ошибок в алгоритме. Для этого необходимо найти какой-то другой способ решения задачи, при котором в обеих случаях результат должен быть одинаков. Чаще всего это делается «вручную», т.е. расчет проводят не только согласно созданного алгоритма, но и с помощью подручных средств, например калькулятора.

В нашем случае, по составленному алгоритму, с помощью калькулятора, при одних и тех же исходных данных, находим площадь треугольника и периметр (рис. 9.2) и гипотенузу и площадь треугольника (рис. 9.3.).

Операции, совершаемые в алгоритме, должны совпадать с операциями в языке программирования. Последовательность операций должна соответствовать приоритетам их выполнения, функции, типы данных, обозначения.

Отладка алгоритмов линейной структуры совпадает с методами отладки, указанные выше.