русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

Запись алгоритма с помощью схем

Запись алгоритма с помощью схем предполагает изображение с использованием графических символов-блоков, каждый из которых предписывает исполнение определенных действий. Совокупность символов образуют схему алгоритма. Графические символы между собой соединяются линиями потока информации. Основное направление потока идет сверху вниз и слева направо. Учитывая это, стрелки на схемах, совпадающие с таким потоком информации, могут не проставляться. Правила выполнения схем алгоритмов регламентирует ГОСТ 19.002-80, а изображение символов устанавливает ГОСТ 19.003-80.

Ниже в таблице 1.1 приведены изображения наиболее часто употребляемых блоков и даны пояснения к ним.

Таблица 1.1 - Графические обозначения, применяемые при составлении схем алгоритмов

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

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

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

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

При выполнении схем алгоритмов необходимо выдерживать минимальное расстояние 3 мм между параллельными линиями потоков и 5 мм между остальными блоками. Вычерчивая блоки, необходимо соблюдать соотношение между высотой b и шириной блока а (b=1,5а, при а=10,15,20,…мм).

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

Рассмотрим примеры схем алгоритмов некоторых простейших задач.

Пример 1. Даны три числа a, b, с. Определить наибольшее из них и вывести его на экран.

Рисунок 1.1 – Схема алгоритма к примеру 1

На рисунке1.1 приведена схема алгоритма решения этой задачи, где показано, что после ввода трех исходных чисел выполняется сравнение первых двух: a и b. Наибольшее из них присваивается переменной Max. После чего переменная Max сравнивается с переменной c. В том случае, если Max<c, значение Max корректируется заменой его на значение с. В заключении найденное наибольшее значение из трех исходных чисел выводится на экран монитора.

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

Пример 2. Дано целое натуральное число N. Обеспечить вывод на экран всех простых чисел в диапазоне от M до N, где M < N.

Рисунок 1.2 – Схема алгоритма к примеру 2

Существует ряд подходов к решению этой задачи. Схема алгоритма одного из них дана на рисунке 1.2. На ней показано, что после ввода чисел M и N по очереди в возрастающем порядке перебираются все натуральные числа от M до N. Перебор осуществляется с помощью цикла, где управляющей переменной является А. Каждое значение А подвергается целочисленному делению с определением остатка на все числа, лежащие в диапазоне от 2 до А / 2. Если остаток от деления равен нулю, происходят выход из внутреннего цикла и переход к следующему значению А. Если же внутренний цикл отработает полностью все свои итерации, значит С=0 не было получено ни разу, а, следовательно, данное значение А является простым числом и оно выводится на печать.

Просмотров: 577


Вернуться в оглавление



Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.