Блок-схема — Вікіпедія
Матеріал з Вікіпедії — вільної енциклопедії.
Приклади блок-схем основних алгоритмів Укрупнена функціональна схема (блок-схема) САРБлок-схема (рос. блок-схема, англ. block scheme, flowchart, block diagram, flow diagram; нім. Block-schema) —
- Представлення алгоритму розв’язування або аналізу задачі за допомогою геометричних елементів (блоків), які позначають операції, потік, дані тощо.
- Блок вхідних та вихідних даних прийнято позначати паралелограмом, блок обчислень (обробки) даних — прямокутником, блок прийняття рішень — ромбом, еліпсом — початок та кінець алгоритму.
- Схема машини, приладу, апарата, пристрою, в якій основні вузли (блоки), що утворюють її, зображено прямокутниками та іншими фігурами, а зв’язок між ними показано лініями зі стрілками.
Загальна характеристика[ред. | ред. код]
У автоматиці функціональна схема, або блок-схема САР, складається з функціональних блоків, які являють собою конструктивно відособлені частини (елементи або пристрої) автоматичних систем, які виконують певні функції. Функціональні блоки на схемі позначають прямокутниками, всередині яких надписують їх найменування відповідно до функцій, що виконуються. Зв’язки між функціональними блоками (внутрішні впливи) позначаються лініями зі стрілками, які вказують напрям впливів.
Функціональні схеми можуть виконуватися в укрупненому і розгорненому вигляді. У першому випадку на схемі зображають найважливіші блоки системи і зв’язки між ними.
У другому варіанті схема зображаються більш детально, що полегшує її читання та ілюструє принцип роботи.
Основні елементи схем алгоритму[ред. | ред. код]
Найменування | Позначення | Функція |
---|---|---|
Термінатор | Елемент відображає вхід у зовнішнє середовище або вихід з нього (найчастіше застосування — початок і кінець програми). Всередині фігури записується відповідна дія. | |
Процес | Елемент відображає одну або кількох операцій, обробку даних будь-якого виду (зміна значення даних, форми подання, розташування). Всередині фігури записують безпосередньо самі операції. | |
Умова | Елемент відображає обробку умови, рішення або функцію перемикального типу з одним входом і двома або більше альтернативними виходами, з яких тільки один може бути обраний після обчислення умов, визначених всередині цього елементу. Вхід в елемент позначається лінією, що входить зазвичай у верхню вершину елементу. Якщо виходів два чи три то зазвичай кожен вихід позначається лінією, що виходить з решти вершин (бічних і нижньої). Якщо виходів більше трьох, то їх слід показувати однією лінією, що виходить з вершини (частіше нижньої) елемента, яка потім розгалужується. Відповідні результати обчислень можуть записуватися поруч з лініями, що відображають ці шляхи. | |
Функція (процедура) | Елемент відображає виконання процесу, що складається з однієї або кількох операцій, що визначені в іншому місці програми (у підпрограмі, модулі). Всередині символу записується назва процесу і передані в нього дані. | |
ввід/вивід | Елемент відображає перетворення у форму, придатну для обробки (введення) або відображення результатів обробки (виведення). Цей символ не визначає носія даних (для вказівки типу носія даних використовуються специфічні символи). | |
Цикл з параметром | Елемент відображає заголовок циклу з параметром. У ньому через крапку з комою вказуються ім’я змінної (параметра) з початковим значенням, граничне значення параметра (або умова виконання циклу), крок зміни параметра. | |
Межа циклу | Елемент складається з двох частин — відповідно, початок і кінець циклу — операції, що виконуються всередині циклу, розміщуються між ними. Умови циклу і збільшення записуються всередині символу початку або кінця циклу — в залежності від типу організації циклу. Часто для зображення на блок-схемі циклу замість цього символу використовують символ рішення, вказуючи в ньому умову, а одну з ліній виходу замикають вище в блок-схемі (перед операціями циклу). | |
З’єднувач | Елемент відображає вихід в частину схеми і вхід з іншої частини цієї схеми. Використовується для обриву лінії та продовження її в іншому місці (приклад: поділ блок-схеми, що не поміщається на листі). Відповідні сполучні символи повинні мати одне (при тому унікальне) позначення. | |
Коментар | Елемент використовується для детальнішої інформації про кроки, процесу або групи процесів. Опис поміщається з боку квадратної дужки і охоплюється нею по всій висоті. Пунктирна лінія йде до описуваного елементу, або групи елементів (при цьому група виділяється замкнутою пунктирною лінією). Також символ коментаря слід використовувати в тих випадках, коли обсяг тексту в будь-якому іншому символі (наприклад, символ процесу, символ даних та ін) перевищує його обсяг. |
Посилання[ред. | ред. код]
Элементы блок-схем
Введение
Составление блок-схемы, соответствующей всем требованиям ГОСТов, – небыстрый и кропотливый процесс. Если у вас возникли проблемы с проектированием блок-схемы или вы запутались в том, какой элемент блок-схемы нужно использовать в конкретном месте, то записывайтесь ко мне на репетиторский урок. На частном занятии вы сможете задать мне абсолютно любой вопрос, касающийся визуализации блок-схемы.
Ключевые элементы блок-схемы
Если вы новичок в мире информационных технологий и только-только начали изучать область построения блок-схем, то я рекомендую вам потратить 5 минут и познакомиться с тем, что такое блок-схема и зачем она нужна.
Что такое схема? Схема – графическая интерпретация некоторого термина, события, анализа, действия, в котором применяются различные элементы для отображения данных.
Что такое блок-схема? Блок-схема – один из видов обыкновенной схемы, описывающая алгоритмы, в которой дискретные шаги изображаются в виде блоков, представляющих собой геометрические фигуры, и эти блоки соединены между собой линиями, которые указывают направление последовательности выполнения алгоритма.
Существует популярный ГОСТ, который описывает требования и правила выполнения блок-схем: ГОСТ 19.701-90. Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения.
Основные элементы, использующиеся при проектировании блок-схем
№ | Название элемента | Графическое отображение | Функция |
1 | Терминатор или блок начало-конец | Обозначает начало или конец программы. Данный блок отделяет границы программы от внешней среды. Как правило, в данный элемент вписывают фразы «Начало», «Старт» или «Конец», «Финиш». | |
2 | Блок команды, процесса, действия | Данный блок отвечает за выполнение одной или нескольких операций. Как правило, в данный элемент блок-схемы вписывают команды, которые меняют данные, значения переменных. Например, арифметическая операция над двумя переменными будет записана в данном блоке. | |
3 | Блок логического условия | Напомню, что результатом логического условия всегда является одно из двух предопределенных значения: истина или ложь. Внутри данного элемента-ромба записывается логическое условие, а из вершин ромба выходят альтернативные ветви решения. Обязательно следует подписывать ветви словами «Да», «Нет», чтобы не вводить в заблуждение читателя блок-схемы. | |
4 | Предопределенный процесс | Если ваша программа предусматривает наличие подпрограмм: процедур или функций, то вызов подпрограммы записывается внутри данного элемента. | |
5 | Блок ввода-вывода данных | Отвечает за форму подачи данных, например, за пользовательский ввод данных с клавиатуры или за вывод данных на монитор персонального компьютера. Очень важно понимать, что данный элемент блок-схемы не определяет носителя данных. | |
6 | Блок цикла со счетчиком | Отвечает за выполнение циклических команд цикла for. Внутри элемента записывается заголовок цикла со счетчиком, а операции тела цикла располагаются ниже элемента. При каждой итерации цикла программа возвращается к заголовку цикла, используя левую стрелку. Выход из цикла for осуществляется по правой стрелке. | |
7 | Парный блок для циклов с пред- и постусловием | Данный блок состоит из двух частей. Операции тела цикла размещаются между ними. Заголовок цикла и изменения счетчика цикла записываются внутри верхнего или нижнего блока – в зависимости от архитектуры цикла. | |
8 | Соединитель | Применяется для обрыва линии связи между элементами блок-схемы. Например, если вы строите масштабную блок-схему на листе формата А4, и она не помещается на один лист, то вам придется осуществить перенос блок-схемы на второй лист. В этом случае необходимо будет воспользоваться данным соединителем. Как правило, внутри окружности указываются уникальный идентификатор, который является натуральным числом. |
Мы рассмотрели восемь базовых элементов блок-схемы, оперируя которыми вы сможете без труда реализовать абсолютно любую блок-схему, исходя из требований школьной или вузовской программы.
Если вы хотите углубить познания в области построения блок-схем или не до конца разобрались с каким-либо элементом блок-схемы, то записывайтесь ко мне на индивидуальный урок. На данном уроке мы детально разберем все ваши вопросы, а также проведем составление колоссального количества блок-схем различной степени сложности.
Основные блоки для составления схем алгоритмов
Основные блоки, используемые для составления схем алгоритмов, представлены в нормативных документах ЕСПД, главным образом это
Основные блоки для составления алгоритмов
Название | Обозначение | Описание |
Терминатор | Начало, конец, прерывание процесса обработки данных или выполнения программы | |
Процесс | Выполнение операции или группы операций, в результате которых изменяется значение, форма представления или расположение данных | |
Предопределенный процесс | Использование ранее созданных и отдельно описанных алгоритмов или программ | |
Ввод-вывод | Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод) | |
Решение | Выбор направления выполнения алгоритма или программы в зависимости от некоторых переменных условий | |
Границы цикла | Начало цикла Конец цикла | Символ, состоящий из двух частей, отображает начало и конец цикла. Обе части символа имеют один идентификатор. Условия для инициализации, приращения, завершения и т. д. помещаются внутри символа в начале или в конце в зависимости от расположения операции, проверяющей условие. |
Подготовка | | Выполнение операций, меняющих команды или группу команд, с целью воздействия на некоторую последующую функцию (установка переключателя, модификация регистра, инициализация программы) |
Комментарий | Пояснение к элементу схемы (или линии связи) | |
Соединитель | При большой насыщенности схемы отдельные линии потока между удаленными символами допускается обрывать. При этом в конце (начале) обрыва должен быть помещен символ «Соединитель». Внутри блока соединителя указывается имя уникального идентификатора. |
Размер a должен выбираться из ряда 10, 15, 20 мм. Допускается увеличивать размер a на число, кратное 5 мм. Размер b равен 1,5a.
Основным направлением потока в схемах алгоритмов принято направление сверху-вниз, слева-направо. Если линии потока идут в основном направлении и не имеют изломов, стрелками их можно не обозначать. В остальных случаях направление линии потока обозначать стрелкой обязательно.
Записи внутри символа должны быть представлены так, чтобы их можно было читать слева направо и сверху вниз, независимо от направления потока.
В схеме символу может быть присвоен идентификатор, который должен помещаться слева над символом.
Допускается краткая информация о символе (описание, уточнение или другие перекрестные ссылки для более полного понимания функции данной части схемы). Описание символа должно помещаться справа над символом.
В случае необходимости слияния линий потока место слияния должно быть обозначено точкой или символом 0.
Назад: Алгоритмизация
Блок-схема алгоритма Википедия
У этого термина существуют и другие значения, см. Блок.Схе́ма — графическое представление определения, анализа или метода решения задачи, в котором используются символы для отображения данных, потока, оборудования и т. д.[1]
Блок-схема — распространенный тип схем (графических моделей), описывающих алгоритмы или процессы, в которых отдельные шаги изображаются в виде блоков различной формы, соединенных между собой линиями, указывающими направление последовательности. Правила выполнения регламентируются ГОСТ 19.701-90 «Схемы алгоритмов, программ, данных и систем. Условные обозначения и правила выполнения»[1]. Стандарт в частности регулирует способы построения схем и внешний вид их элементов.
Основные элементы схем алгоритма[ | ]
При начертании элементов рекомендуется придерживаться строгих размеров, определяемых двумя значениями a и b. Значение a выбирается из ряда 15, 20, 25.. мм. Определение размеров несет рекомендательный характер, однако, стоит отметить, что при соблюдении выполнения размеров блок-схемы имеют более аккуратный вид.
Действие[ | ]
Символ отображает функцию обработки данных любого вида (выполнение определенной операции или группы операций, приводящее к изменению значения, формы или размещения информации или к определению, по которому из нескольких направлений потока следует двигаться).
Данные (ввод/вывод)[ | ]
Символ отображает данные, носитель данных не определен.
Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод). Данный символ не определяет носителя данных (для указания типа носителя данных используются специфические символы).
Создание простой блок-схемы — Visio
Создание блок-схемы
-
Запустите приложение Visio.
-
Выберите категорию Блок-схема.
-
Дважды щелкните значок Простая блок-схема.
-
Для каждого этапа документируемого процесса перетащите в документ соответствующую фигуру блок-схемы.
-
Чтобы соединить элементы блок-схемы, наведите указатель мыши на первую фигуру, и щелкните стрелку, указывающую на фигуру, с которой требуется создать соединение. Если вторая фигура находится не рядом с первой, необходимо перетащить маленькую стрелку к центру второй фигуры.
-
Чтобы добавить текст для фигуры или соединительной линии, выделите ее и введите текст. По завершении ввода текста щелкните в пустой области страницы.
-
Чтобы изменить направление стрелки соединительной линии, выберите соединение, а затем на вкладке Фигура в группе Стили фигур щелкните пункт Линия, наведите указатель на пункт Стрелки и выберите нужное направление и вид стрелки.
Автоматическое выравнивание и интервалы
-
Нажмите сочетание клавиш CTRL+A, чтобы выбрать все объекты на странице.
-
На вкладке Главная в группе Упорядочение нажмите кнопку Положение и выберите пункт Автовыравнивание и определение интервалов.
Если это не привело к нужному результату, отмените ее, нажав сочетание клавиш CTRL+Z, и воспользуйтесь другими параметрами меню кнопок Выравнивание и Положение.
Что представляют блок-схемы
При открытии шаблона Простая блок-схема открывается набор элементов Фигуры простой блок-схемы. Каждая фигура в этом наборе представляет собой тот или иной этап процесса. Но фигуры не имеют какого-то универсального смысла, их значение определяется создателями и пользователями блок-схем. В большинстве блок-схем используется три или четыре вида фигур, и этот диапазон расширяется только по специфической необходимости.
При этом названия фигур в Visio указывают на их применение. Ниже описаны наиболее распространенные фигуры.
-
Начало/конец. Эту фигуру следует использовать для представления первого и последнего этапа процесса.
-
Процесс. Фигура представляет собой стандартный этап процесса. Это одна из наиболее часто используемых фигур в любом процессе.
-
Решение. Эта фигура используется в точке, где выбор следующего этапа зависит от принятого решения. Вариантов может быть несколько, но чаще всего их два: «да» и «нет».
-
Подпроцесс. Эту фигуру следует использовать для представления ряда этапов, которые в совокупности образуют подпроцесс, определенный в другом месте (часто на другой странице того же документа). Такой подход удобен, если блок-схема получается слишком большой и сложной.
-
Документ. Эта фигура представляет этап, на котором создается документ.
-
Данные. Эта фигура указывает, что данные поступают в процесс или покидают его. Также эта фигура может представлять материалы. Иногда ее называют фигурой «Ввод/Вывод».
-
Ссылка на текущую страницу. Маленький круг показывает, что следующий (предыдущий) этап находится в другом месте документа. Эта фигура особенно полезна на больших блок-схемах, где в противном случае пришлось бы использовать длинный соединитель, который сложно отследить.
-
Ссылка на другую страницу. При размещении этой фигуры на странице открывается диалоговое окно, в котором можно создать набор гиперссылок между двумя страницами блок-схемы или между фигурой «Подпроцесс» и отдельной страницей блок-схемы, на которой показаны этапы этого подпроцесса.
Хотите узнать больше?
Просмотр примеров шаблонов и схем Visio в Интернете
Создание схем Visio с помощью сенсорного экрана
Что представляют блок-схемы
Когда вы открываете шаблон «Простая блок-схема», также открывается набор элементов «Фигуры простой блок-схемы». Каждая фигура в наборе элементов соответствует конкретному шагу процесса.
Из фигур, входящих в набор элементов «Фигуры простой блок-схемы», широко используются только некоторые. Именно эти фигуры описаны ниже. Дополнительные сведения об остальных фигурах см. по ссылке (Менее популярные фигуры блок-схемы) в конце этого раздела.
-
Оконечная фигура. Эту фигуру следует использовать для представления первого и последнего этапа процесса.
-
Процесс. Эта фигура представляет этап процесса.
-
Заранее определенный процесс. Эту фигуру следует использовать для представления ряда этапов, которые в совокупности образуют подпроцесс, определенный в другом месте (часто на другой странице того же документа).
-
Решение. Эта фигура используется в точке, где выбор следующего этапа зависит от принятого решения. Вариантов может быть несколько, но чаще всего их два: «да» и «нет».
-
Документ. Эта фигура представляет этап, на котором создается документ.
-
Данные. Эта фигура указывает, что данные поступают в процесс или покидают его. Также эта фигура может представлять материалы. Иногда ее называют фигурой «Ввод/Вывод».
-
Фигуры блок-схемы. Щелкнув эту составную фигуру правой кнопкой мыши, можно выбрать любую из таких фигур: «Процесс», «Решение», «Документ» или «Данные». Любой текст, который вы введете на фигуре, или добавите в ее свойство «Данные фигуры», останется на ней.
Вот как выглядит эта фигура в наборе элементов:
Если перетащить фигуру на страницу документа и щелкнуть ее правой кнопкой мыши, откроется контекстное меню:
-
Хранимые данные. Эту фигуру следует использовать для этапа, результатом которого является сохранение данных.
-
Ссылка на текущую страницу. Маленький круг показывает, что следующий (предыдущий) этап находится в другом месте документа. Эта фигура особенно полезна на больших блок-схемах, где в противном случае пришлось бы использовать длинный соединитель, который сложно отследить.
-
Ссылка на другую страницу. При размещении этой фигуры на странице открывается диалоговое окно, в котором можно создать набор гиперссылок между двумя страницами блок-схемы или между фигурой «Подпроцесс» и отдельной страницей блок-схемы, на которой показаны этапы этого подпроцесса.
Менее популярные фигуры блок-схемы
-
Динамическая соединительная линия. Эта соединительная линия проходит в обход фигур, лежащих на ее пути.
-
Кривая соединительная линия. Это соединительная линия с настраиваемой кривизной.
-
Поле с автоподбором высоты. Это текстовое поле с рамкой, размер которого изменяется в зависимости от объема введенного текста. Ширину можно задать, перетащив боковые стороны фигуры. Эта фигура не представляет этап процесса, но ее удобно использовать для размещения надписей на блок-схеме.
-
Примечание. Это поле в квадратных скобках, размер которого изменяется в зависимости от объема введенного текста. Ширину можно задать, перетащив боковые стороны фигуры. Как и «Поле с автоподбором высоты», эта фигура не представляет этап процесса. Используйте ее для добавления примечаний к фигурам блок-схемы.
-
Ручной ввод. Это этап, на котором человек предоставляет информацию процессу.
-
Ручная операция. Это этап, который должен быть выполнен человеком.
-
Внутреннее хранилище. Эта фигура представляет данные, которые хранятся на компьютере.
-
Прямые данные. Эта фигура представляет данные, которые хранятся таким образом, что к каждой отдельной записи возможен прямой доступ. Это соответствует способу хранения данных на жестком диске компьютера.
-
Последовательные данные. Эта фигура представляет данные, которые сохраняются последовательно (например, данные на магнитной ленте). Считывать такие данные можно только последовательно. Например, чтобы обратиться к записи 7, нужно сначала просмотреть записи 1–6.
-
Карта и бумажная лента. Эта фигура представляет перфокарту или бумажную ленту. В ранних компьютерных системах перфокарты и бумажные ленты использовались для записи и чтения данных, а также для хранения и запуска программ.
-
Дисплей. Эта фигура представляет данные, отображаемые для пользователя (обычно на экране компьютера).
-
Подготовка. Эта фигура обозначает инициализацию переменных при подготовке к выполнению процедуры.
-
Параллельный режим. Эта фигура показывает, где два разных процесса могут работать одновременно.
-
Предел цикла. На этой фигуре показано максимально возможное количество повторений цикла до перехода к следующему этапу.
-
Передача управления. Эта фигура обозначает этап, на котором при выполнении некоторых условий происходит переход не к следующему, а к другому этапу.
Создание блок-схемы
-
В меню Файл наведите указатель мыши на пункт Создать, затем на пункт Блок-схема и выберите пункт Простая блок-схема.
-
Для каждого этапа документируемого процесса перетащите в документ соответствующую фигуру блок-схемы.
-
Соедините фигуры блок-схемы одним из указанных ниже способов.
Соединение двух фигур друг с другом
-
На панели инструментов Стандартная щелкните инструмент Соединительная линия .
-
Перетащите точку соединения на первой фигуре к точке соединения на второй фигуре. После соединения фигур конечные точки соединительной линии становятся красными.
Соединение одной фигуры с несколькими с помощью одной точки соединения
По умолчанию используются прямоугольные соединительные линии, и соединение точки на фигуре с тремя другими фигурами выглядит как на рисунке ниже.
Чтобы соединительные линии исходили прямо из центральной точки первой фигуры и вели к точкам на всех других фигурах, необходимо задать Прямые соединительные линии, как показано на приведенном ниже рисунке.
-
На панели инструментов Стандартная щелкните инструмент Соединительная линия .
-
Для каждой фигуры, к которой нужно присоединить первую, перетащите указатель от одной и той же точки соединения на первой фигуре до точки соединения на каждой из остальных фигур.
-
Щелкните каждую соединительную линию правой кнопкой мыши и выберите пункт Прямая соединительная линия.
-
-
На панели инструментов Стандартная щелкните инструмент Указатель , чтобы вернуться в обычный режим правки.
-
Чтобы добавить текст для фигуры или соединительной линии, выделите ее и введите текст. По завершении ввода текста щелкните в пустой области страницы.
-
Чтобы изменить направление соединительной линии, в меню Фигура наведите указатель мыши на пункт Операции и выберите пункт Обратить концы.
Печать больших блок-схем
Наиболее простой способ вывести на печать блок-схему, размеры которой превышают размеры бумаги, — распечатать ее на нескольких листах, а затем склеить их.
Перед началом печати нужно убедиться в том, что отображаемая в Visio страница документа содержит блок-схему целиком. Все фигуры, которые выходят за пределы страницы в Visio, не будут напечатаны. Чтобы проверить, помещается ли блок-схема на страницу документа, используйте предварительный просмотр в диалоговом окне Параметры страницы (меню Файл, пункт Параметры страницы, вкладка Настройка печати).
1. Блок-схема. размер которой слишком велик для страницы документа Visio.
2. Блок-схема, которая помещается на страницу документа Visio.
Изменение размера страницы документа Visio в соответствии с размером блок-схемы
-
Когда открыта блок-схема, в меню Файл выберите пункт Параметры страницы.
-
Откройте вкладку Размер страницы.
-
На вкладке Размер страницы щелкните Изменять размеры по содержимому.
Чтобы увидеть, как блок-схема будет выглядеть на печати, в меню Файл выберите пункт Предварительный просмотр. На рисунке ниже показана блок-схема, которая будет распечатана на четырех листах формата Letter.
Печать больших блок-схем на нескольких листах бумаги
-
В меню Файл выберите пункт Параметры страницы.
-
На вкладке Настройка печати в поле Бумага в принтере выберите нужный размер бумаги, если он еще не задан. Не нажимайте кнопку ОК.
-
Откройте вкладку Размер страницы и щелкните Изменять размеры по содержимому. В окне предварительного просмотра теперь видна разница между новой страницей и бумагой в принтере.
-
Нажмите кнопку ОК.
-
В меню Файл выберите пункт Предварительный просмотр, чтобы увидеть, как блок-схема будет выглядеть на печати.
Примечание: Между страницами могут отображаться затененные поля. Они соответствуют тем областям, которые будут распечатаны на обоих листах. Это позволяет склеить листы таким образом, чтобы на блок-схеме не было пустых промежутков.
-
После завершения печати можно обрезать поля, расположить страницы надлежащим образом и склеить их.
Как создать блок-схему. Блок-схема программы, массива
Блок-схема представляет собой графическое отображение какого-либо процесса, четко показывающего систематическую последовательность всех этапов выполнения поставленной задачи, а также все группы, которые вовлечены в данный процесс. Такая схема является системой графических символов (блоков) и линий переходов (стрелок) между ними. Каждый из таких блоков соответствует определенному шагу алгоритма. Внутри такого символа дается описание данного действия.
Для чего применяют блок-схемы?
Упомянутые системы призваны выполнять следующие функции:
— разрабатывать новый процесс;
— описывать и документировать текущий алгоритм;
— разрабатывать модификации к данному процессу либо исследовать звенья с вероятным возникновением ошибок и сбоев;
— определять, когда, где и как можно менять текущий алгоритм, с целью проверки устойчивости всей системы.
Разработка последовательности операций
Любая блок-схема строится на основе алгоритма действий, описывающего работу устройства или программы. Поэтому сначала строится сама система. «Алгоритмом» называют описание последовательности операций для решения поставленной задачи. По сути, это правила выполнения необходимых процессов обработки информации. Прежде чем приступить к построению алгоритма, требуется четко определить задачу: что необходимо получить в результате, какая исходная информация нужна, а какая уже имеется, есть ли ограничения для ее получения. После этого составляется список действий, которые необходимо осуществить для получения требуемого результата.
Типы алгоритмов
На практике чаще всего применяют следующие виды блок-схем:
— графическая, то есть в основе находятся геометрические символы;
— словесная: составляется с помощью обычных слов того или иного языка;
— псевдокоды: представляют собой полуформализованное описание на условно-алгоритмическом языке, которое включает в себя элементы языка программирования и фразы литературного, а также общепринятые математические символы;
— программная: для записи используются исключительно языки программирования.
Блок-схема устройства: описание
Графическое представление последовательности действий включает в себя изображение алгоритма, описывающего связи функциональных блоков данной схемы, которые соответствуют выполнению одного либо нескольких действий. Блок-схема массива состоит из отдельных элементов, размеры и правила построения которых определены государственным стандартом. Для каждого типа действия (ввода данных, вычисления значений выражений, проверки условий, управления повторением действий, окончания обработки и др.) предусмотрена отдельная геометрическая фигура, представленная в виде блока. Эти символы соединяются линиями, определяющими очередность действий.
Основные элементы, употребляемые при составлении блок-схем
Полный список графических символов, используемых для описания алгоритма, состоит из 42 элементов. Его весь мы приводить не будем, а рассмотрим только основное.
Элементы блок-схемы:
1. Процесс означает вычислительное действие либо последовательность таких действий, изменяющих значения, размещения данных или форму представления. Для наглядности схемы такие элементы можно объединить в один блок. Данный символ имеет вид прямоугольника, внутри которого записываются комментарии, сопровождающие выполнение операции (либо группы операций).
2. Решение. Данный блок применяется для обозначения перехода управления по определенному условию. В каждом таком элементе указывается вопрос, сравнение или условие, которые его определяет. Другими словами, решение — это выбор направления для выполнения программы или алгоритма в зависимости от некоего переменного условия. Графический вид данного элемента – это ромб. Упомянутый символ может использоваться в качестве изображения следующих унифицированных структур: выбор, развилка полная и неполная, цикл «до» и «пока».
3. Модификация. Этот блок означает начало цикла. Он применяется для организации циклической конструкции. Внутри такого элемента записывают параметр круга действий, указывают его начальные значения, граничное условие, а также шаг изменения параметра для последующего повторения. Другими словами, модификация — это выполнение меняющихся команд или их групп, операций, изменяющих программу. Графическое изображение этого символа представляет собой шестиугольник.
4. Предопределенный процесс означает вычисление по заданной или стандартной программе. Его используют для указания обращения к вспомогательному алгоритму, который существует автономно в виде отдельных самостоятельных модулей, а также для обращения к библиотечным подпрограммам. Графически вид этого символа представлен прямоугольником с двумя вертикальными полями по краям. Этот элемент служит для указаний обращений к функциям, процедурам, программным модулям.
5. Ввод-вывод данных в общем виде.
6. Пуск и остановка. Этот элемент означает начало и конец алгоритма, а также вход в программу и выход из неё. Графически данный символ напоминает прямоугольник, у которого вместо боковых прямых – дуги.
7. Документ означает вывод результатов работы на печать. Графически такой элемент напоминает прямоугольник, только вместо нижней прямой начертана полуволна.
8. Ручной ввод означает пуск данных в процесс обработки оператором с помощью устройства, которое сопряжено с компьютером (клавиатура). Графический символ ручного ввода представляет собой четырехугольник, у которого боковые линии параллельны, нижняя перпендикулярна им, а верхняя косая.
9. Дисплей означает ввод или вывод информации в случае, когда устройство непосредственно подключено к процессору. В тот момент, когда начинают воспроизводиться данные, оператор может вносить изменения во время их обработки. Графически данный элемент представляет фигуру, у которой нижняя и верхняя линии параллельны, правая — это дуга, а левая состоит из двух прямых в виде стрелки.
10. Линии потока – это стрелки, которые указывают последовательность связей. Ни одна блок-схема структуры не может обходиться без данного элемента. Существуют определенные правила начертания этих символов. Перечислим их:
— данные элементы должны быть параллельными линиям внешнего периметра или границам страницы, на которой изображена эта блок-схема;
— направление линии сверху вниз или слева направо считается основным, стрелками оно не обозначается, остальные случаи указания направлений обозначены ими;
— изменение направления данного элемента производится только под углом 90о.
11. Соединитель. Данный элемент предназначен для указания связи на прерванных линиях потока. Эти символы используются в том случае, если блок-схема программы строится из нескольких частей. Тогда линия потока от одной части должна закончиться «соединителем», а новой части — начаться с данного символа. Внутри такого элемента ставится один и тот же порядковый номер. Графическое изображение «соединителя» — это круг.
12. Межстраничный соединитель. Назначение этого элемента аналогично предыдущему, только используется он для соединения блок-схем, размещенных на разных страницах. Изображение такого элемента представлено пятиугольником в виде домика.
13. Комментарий – это связь между различными элементами блок-схемы с пояснениями. Упомянутый элемент позволяет включать в себя формулы и прочую информацию.
Построение блок-схем
Графическое построение алгоритма — это часть документации к устройству или программе, которая всегда имеется в избытке. Однако в большинстве случаев программное обеспечение вообще не нуждается в блок-схеме. Лишь единицам требуется построение алгоритма, занимающего несколько листов, остальным же достаточно символичной схемы. Простая блок-схема показывает структуру ветвления программ только в одном аспекте. Однако даже такая структура четко видна только при условии, что алгоритм помещается на одном листе. В обратном случае, когда блок-схема расположена на нескольких страницах, связанных межстраничными переходами, весьма сложно получить о ней верное представление. Если она размещается на одном листе, то для большой программы данное изображение алгоритма превращается в ее общий план с перечнем главных блоков и этапов. Конечно же, такой график не следует стандартам построения схем, но он и не нуждается в них, так как этот процесс полностью индивидуален. Правила, касающиеся типа символов, стрелок и порядка нумерации, необходимы только для разбора подробных блок-схем.
Массивы и построение алгоритмов
Массив представляет собой совокупность однотипной информации, которая хранится в последовательных кластерах памяти и имеет общее имя. Такие ячейки называются «элементами системы». Все кластеры нумеруются по порядку. Такой номер называется «индексом элемента массива». Как составить блок-схему для подобной системы? Рассмотрим пример создания алгоритма для элементарного массива одномерного типа. Простейшая система имеет условно вид строки. Зададим имя для данного массива – «А». Будем считать, что наша система состоит из восьми ячеек (от 1 до 8). Каждый из упомянутых кластеров содержит случайное число, которое называется «элементом массива». Для обращения в конкретной ячейке необходимо указывать имя в квадратных скобках ([3]). Рассмотрим пример, в котором блок-схема массива предназначена для заполнения системы случайными числами с последующим выводом информации на экран. Что представляет собой такой алгоритм? Это элементарная система. По сути, она не имеет практического применения, однако удобна для учебного процесса. Рассматриваемая блок-схема (пример построения описан ниже) содержит всего семь основных элементов, соединенных линиями переходов.
Описание последовательности выполнения задачи
1. Первым элементом схемы будет символ «Начало».
2. Вторым блоком – «Процесс», внутри которого вписываем «инициализация random».
3. Следующий элемент – «Модификация», в блоке вписываем значение ячеек массива.
4. Далее, согласно заданной функции, происходит переадресация на следующий блок «процесса», в котором задается обращение к конкретным кластерам системы с указанием ограничения случайных чисел в диапазоне от нуля до ста. После проведения данной операции происходит возврат к третьему блоку, а через него — далее на пятый.
5. В этом блоке «Модификации», согласно вписанной функции, происходит переадресация на следующий элемент.
6. «Вывод» производит отображение информации о новом содержимом массива на мониторе с последующим направлением на предыдущий блок. Далее — на последний элемент.
7. «Конец» работы алгоритма.
На базе такой блок-схемы составляется программа, которая обеспечит работу представленного алгоритма.
«Редактор блок-схем»
Если вы задаетесь вопросом о том, как составить блок-схему, то знайте, что существуют специальные программы, которые предназначены для создания, а также редактирования таких систем. Удобством графического отображения алгоритма является то, что пользователь не привязан к синтаксису конкретного языка программирования. Построенная блок-схема одинаково подходит для всех языков (например, С, Паскаль, Бейсик и другие). Кроме того, редактор может использоваться для построения диаграмм и проверки работоспособности схем. Такая программа является специализированным софтом. Она предоставляет разнообразный набор инструментов, необходимых для построения блок-схем, что делает ее более удобной, по сравнению с обычными графическими редакторами. Дополнительные опции позволяют оптимизировать процесс составления системы с дальнейшим ее преобразованием в функции и процедуры языка программирования. Кроме того, редактор блок-схем предлагает набор шаблонов, способных существенно ускорить работу начинающего пользователя. Ведь известно, что при построении алгоритма часто применяются повторяющиеся структуры, например разнообразные варианты циклов, альтернативы (полные и неполные), множественные ветвления и прочее. Редактор позволяет выделять часто используемые в блок-схемах элементы и добавлять их в создаваемую схему. Это избавляет от прорисовки их каждый раз заново. Кроме того, с помощью редактора можно импортировать функции и процедуры, реализованные на любом известном языке программирования. Данная опция полезна для разбора структуры алгоритма, который написан на малознакомом языке. Системные требования рассматриваемой программы довольно скромные, что позволяет использовать ее на любом персональном компьютере.
Заключение
Подводя итог, следу отметить, что подробные схемы построения алгоритмов уже устарели. В качестве описания процесса они никому не интересны. В лучшем случае блок-схемы пригодны для проведения обучения новичков, которые не умеют алгоритмически мыслить. Предложенные в свое время элементы со своим содержанием являлись языком высокого уровня, они объединяли операторов языка машины в отдельные группы. На данный момент каждый графический элемент соответствует конкретному оператору. Значит, сам символ превратился в случайное, а главное — бесполезное занятие по рисованию, от которого легко можно отказаться. Сегодня стали лишними даже линии переходов, так как каждый оператор уже определен. В действительности графическое построение алгоритмов больше превозносится, чем применяется на практике. Программист с большим опытом работы, прежде чем написать программу, редко чертит блок-схему. Когда стандарт организации требует графический алгоритм, то рисуют его уже после окончания работ.
НОУ ИНТУИТ | Лекция | Блок-схемы. Графическая реализация алгоритмов
Аннотация: Блок-схемы представляют собой наглядную реализацию алгоритма. Рассмотрим, как графически представлять разные виды алгоритмов на математических задачах и ситуациях из жизни. Цель данной лекции – ознакомить студентов с понятием блок-схемы; показать основные конструкции реализации разных видов алгоритма; показать принципы проверки блок-схем и получения по ним ответа.
Занятие 1. Понятие блок-схемы. Основные виды блоков
Блок-схема – это графическая реализация алгоритма.
Блок-схема представляет собой удобный и наглядный способ записи алгоритма.
Блок-схема состоит из функциональных блоков разной формы, связанных между собой стрелками. В каждом блоке описывается одно или несколько действий. Основные виды блоков представлены в табл. 2.1.
Любая команда алгоритма записывается в блок-схеме в виде графического элемента – блока, и дополняется словесным описанием. Блоки в блок-схемах соединяются линиями потока информации. Направление потока информации указывается стрелкой. В случае потока информации сверху вниз и слева направо стрелку ставить не обязательно. Блоки в блок-схеме имеют только один вход и один выход (за исключением логического блока – блока с условием).
Блок начала блок-схемы имеет один выход и не имеет входов, блок конца блок-схемы имеет один вход и не имеет выходов. Блок условия – единственный блок, имеющий два выхода, т.к. соответствует разветвляющемуся алгоритму. На одном выходе указывается «да», на другом – «нет». Все остальные блоки имеют один вход и один выход. Блок выполнения действия может содержать присвоение значения переменной (например «») или вычисление (например «»).
Математические выражения и логические высказывания должны быть описаны математическим языком, т.к. блок-схема не должна иметь привязки к какому-то определенному языку программирования. Одна и таже блок-схема может быть реализована в программах на разных языках программирования. К примеру, функция в блок-схеме будет выглядеть таким образом: , а не таким образом: .
Все три вида алгоритмов реализуются в блок-схеме названными выше типами блоков. К примеру, в линейном алгоритме могут присутствовать все блоки, кроме блока условия. В разветвляющемся и циклическом алгоритмах могут быть использованы все названные виды блоков, но обязательным является блок условия. Внутри блока условия записывается условие, про которое можно однозначно ответить, истинно оно или ложно Если условие истинно, то выполняются действия, соответствующие стрелке «да», иначе стрелке «нет».