Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Pascal_учебник_3.doc
Скачиваний:
33
Добавлен:
11.04.2015
Размер:
937.47 Кб
Скачать
  1. Составление структурных схем алгоритмов и программ

ОПРЕДЕЛЕНИЕ. Под алгоритмом принято понимать формальное предписание, однозначно опреде­ляющее содержание и последовательность операций, переводящих совокупность исходных данных в искомый результат - решение задачи.

Для алгоритма характерны:

1) расчлененность определяемого алгоритмом процесса решения на отдельные элементарные акты, возможность выполнения которых не вызывает сомнения;

2) однозначность результата процесса при заданных исходных данных;

3) массовость - применимость для различных исходных данных.

При составлении схем алгоритмов и программ надо учитывать, что знак ”=“ не является знаком равенства, а является знаком присваивания.

Например: отложим на оси Х три точки: 5, 7, 9.

Присвоим переменной Х значение 5:

Х=5

Новое значениеХ (равное 7) мы будем находить, как старое значение Х плюс 2 (см. рис. 1).

Х=5

Х=Х+2 - к предыдущему значению Х прибавляется 2, равенства здесь нет.

Рис. 1

После вычисления Х=7 по последней формуле (Х=Х+2) можно найти следующее значение Х, равное девяти.

Как это будет выглядеть в ЭВМ? В ЭВМ все данные хранятся в памяти. Каждой переменной отводится определенный участок памяти (назовем его условно «ячейкой»). В такой ячейке будет храниться и значение переменнойХ.

Сначала мы переменнойХ присваиваем значение 5, т.е. заносим в эту ячейку число 5:

Что же дает операция Х=Х+2? Мы берем содержимое ячейки памяти, отведенной для хранения значения Х (а оно равно 5), и прибавляем к нему 2. Получаем 7. И заносим результат опять в ту же ячейку памяти:

Значение 5 заменяется на 7.

Пример 1

Автомобиль едет со скоростью V=85 км/ч. Какой путь он пройдет за T=3ч?

Решение

Любой алгоритм начинается с того, что нам дано (или должно быть дано) для решения задачи. Так как мы ищем путь по формуле S=VT, то для вычисления S надо знать V и T. Они нам даны по условию задачи.

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

В алгоритме единицы измерения опускаются. Имена всех переменных в алгоритме будем писать большими буквами. В каждом пункте алгоритма должна выполняться только одна операция. Знак умножения проставляется символом « («звездочка»).

Составим описательный алгоритм:

{

1) Дано:

V=85

2) T=3

3) Что можно вычислить, используя заданные исходные данные?

S=V*T

4) Задачу мы решили. Путь определен. Если мы по составленному алгоритму напишем программу, то ЭВМ вычислит S и будет знать результат. А для того, чтобы и мы его узнали, результат надо либо распечатать на бумаге, либо вывести его на экран монитора 

Вывод: S.

5) Конец.

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

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

1)ПРОЦЕСС (см. рис. 2)

Предназначен

для присваивания

значений переменным

Рис. 2

Символ ПРОЦЕСС

2) РЕШЕНИЕ (см. рис. 3)

Предназначен

для проверки

условия

Рис. 3

Символ РЕШЕНИЕ

3) ВВОД-ВЫВОД (см. рис. 4)

Рис. 4

Символ ВВОД-ВЫВОД

4)ПУСК-ОСТАНОВ (см. рис. 5)

(начало-конец)

30

Рис. 5

Символ ПУСК-ОСТАНОВ

5)МОДИФИКАЦИЯ (см. рис. 6)

Предназначен для

организации цикла

Рис. 6

Символ МОДИФИКАЦИЯ

6) ПРЕДОПРЕДЕЛЕННЫЙ ПРОЦЕСС (см. рис. 7)

Предназначен для

обращения к под-

программам

Рис. 7

Символ ПРЕДОПРЕДЕЛЕННЫЙ ПРОЦЕСС

Блоки в структурных схемах записываются в столбик и соединя­ются между собой линиями потока. Длина линии потока между блоками равна 1 см. Блок «КОНЕЦ» располагается под блоком «НАЧАЛО».

Кроме того, блоки нумеруются, за исключением блоков «ПУСК-ОСТАНОВ».

Например (см. рис. 8):

Внутри блока можно записывать только одну операцию.

Все блоки имеют только один вход - сверху и один выход - снизу. Исключение составляет блок «РЕШЕНИЕ». У него всегда один вход, но два выхода, обозначающиеся со стрелками. Один выход – «да», другой – «нет».

В

Рис. 8

Фрагмент оформления

структурной схемы

ыход «да» обозначается единицей - 1 - и направлен (по ГОСТам) вниз, «нет» - обозначается нулем –Ø - и направлен вправо. Ноль перечеркивается, чтобы отличить его в тексте алгоритма или программы от буквы О.

Текст в блоках записывается шрифтом. Все математические знаки операций проставляются.

Блок «ВВОДА-ВЫВОДА» один и тот же, поэтому, если он предназначен для ввода, то вверху, внутри блока, пишут «Ввод:», если для вывода – «Вывод:» (см. рис. 9).

Ввод: Вывод:

Рис. 9

Примеры оформления символов «ВВОДА-ВЫВОДА»

В структурных схемах допускается записывать комментарий, который обозначается следующим образом (см. рис. 10).

здесь записывается комментарий

Рис. 10

Пример оформления комментариев в структурных схемах

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

Перенос на эту же страницу в другой столбик осуществляется двумя способами (см. рис. 11).

1) 2)

Рис. 11

Два способа переноса структурных схем на одной странице

Диаметр кружка – 1 см.

Линии потока могут изгибаться только под прямым углом, располагаться от символов на расстоянии не менее 5 мм и не могут пересекаться между собой.

Стрелки на линиях потока не ставятся, если линии идут сверху вниз или слева направо. В противном случае направление обозначается стрелкой: .

Стрелки ставятся при переходе на следующую страницу или в новый столбик.

Перенос на другую страницу осуществляется следующим образом: пусть нам надо осуществить перенос с четвертой страницы с шестого блока на пятую страницу на блок № 9 (см. рис. 12).

На текущей странице №4: На странице № 5

1

Рис. 12

Перенос структурных схем на другую страницу

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

12

Рис. 13

Размеры символа переноса структурных схем на другую страницу

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

в середину

линии потока

Рис. 14

Слияние линий потока в структурных схемах

При слиянии нескольких линий потока вливающиеся линии отмечаются стрелками.

Теперь, используя описанные выше правила, составим структурную схему для решения нашей задачи о вычислении пути (см. рис. 15).

Рис. 15

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

Запомните, что исходные данные - это конкретные числа, значения некоторых переменных. Sin, Cos и т.д. - это имена функций, а не данные, т.е. Sin x - это выражение, но не данное. Для того чтобы найти значение выражения, например, Sin x, нам нужно знать данное х.

И еще одно. При присваивании слева от знака равенства стоит та величина, которую мы ищем, т.е. только лишь имя переменной, а не выражение. Справа - может стоять и имя переменной, и число, и выражение. Но значения всех переменных, стоящих справа от знака равенства, должны быть известны, т.к., например, если мы не будем знать, чему равен Х при вычислении значения Y:

Y = Sin X,

то никогда не вычислим Sin Х и, следовательно, не найдем Y. В “ячейку” ЭВМ с именем Y нечего будет помещать.

И еще одно правило надо запомнить. При составлении структурных схем и программ мы с Вами будем стремиться минимизировать количество операций и заводить как можно меньше переменных, т.е. минимизировать время счета и использование памяти ЭВМ. Таким образом, ни одного лишнего знака и операции!

Соседние файлы в предмете [НЕСОРТИРОВАННОЕ]