Студопедия

КАТЕГОРИИ:

АстрономияБиологияГеографияДругие языкиДругоеИнформатикаИсторияКультураЛитератураЛогикаМатематикаМедицинаМеханикаОбразованиеОхрана трудаПедагогикаПолитикаПравоПсихологияРиторикаСоциологияСпортСтроительствоТехнологияФизикаФилософияФинансыХимияЧерчениеЭкологияЭкономикаЭлектроника


Правила оформления схем алгоритмов




Условные обозначения и правила выполнения схем алгоритмов регламентируются требованиями Единой системы программной документации в соответствии с ГОСТ 19.701-90 [6].

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

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

 

Символы в схеме соединяются линиями, которые указывают потоки управления. Направление потока слева направо и сверху вниз считается стандартным. Направление потока, отличное от стандартного, должно быть отмечено стрелкой на конце линии (при вхождении потока в символ или в другую линию потока). Линии должны быть направлены к центру символа. Следует избегать пересечения линий, если потоки в данном месте не входят друг в друга. При необходимости линии в схемах следует разрывать во избежание лишних пересечений или слишком длинных линий, а также, если схема состоит из нескольких страниц. Соединитель в начале разрыва является внешним, а в конце разрыва - внутренним. В комментариях к соединителям могут быть приведены ссылки к страницам (рис.3).

Рис. 4

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

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

 

 

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

Ниже приведен пример действий с вектором символов.

program Stroki;

const k = 7;

var s1 : array[1..k] of char;

s2 : array[1..10] of char;

i, n : byte;

begin

s2 := ‘Это Pascal’; {Так можно задавать значения элементам массива}

for i := 1 to k do begin {Вводим посимвольно другой массив}

writeln(‘Введите ’, i, ‘-й символ’ );

readln(s1[i]) end;

writeln(‘Первая строка: ’,s1); {Вывод первой строки}

if s2[4] < s1[7] then s2 := ‘Turbo Pasc’;

writeln(‘Вторая строка: ’,s2) end.

Одним из часто встречающихся действий с массивами является их сортировка. Выше приведен алгоритм одного из простых способов сортировки - метод стандартного обмена. Сортируются по нарастанию n элементов вектора.

Метод предполагает выполнение просмотров списка элементов вектора данных. Первый просмотр выявляет в результате сравнений первого элемента со вторым, второго - с третьим и т.д. и соответствующих перестановок наибольший элемент, который занимает последнюю позицию в векторе. Сокращают число сортируемых компонент на этот элемент. Второй просмотр выполняют аналогично, он выявляет следующий по величине элемент и т.д. до тех пор, пока очередной просмотр не выявит отсутствие перестановок.

 

 


Поделиться:

Дата добавления: 2015-04-21; просмотров: 129; Мы поможем в написании вашей работы!; Нарушение авторских прав





lektsii.com - Лекции.Ком - 2014-2024 год. (0.006 сек.) Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав
Главная страница Случайная страница Контакты