«VBA Разработка алгоритма. Блок-схема

31.01.2019 Learnpascal

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

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

Блок-схема — графическое представление алгоритма. Она состоит из функциональных блоков, которые выполняют различные назначения (ввод/вывод, начало/конец, вызов функции и т.д.).

Существует несколько основных видов блоков, которые нетрудно запомнить:

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

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

Составим алгоритм решения подобных задач:

1) Прочитать задачу.
2) Выписать известные и неизвестные нам переменные в «дано». (В задаче №1 к известным переменным относятся стороны: a, b ;к неизвестным — площадь S и периметр P)
3) Вспомнить либо составить необходимые формулы. (У нас: S=a*b; P=2*(a+b))
4) Составить блок-схему.
5) Записать решение на языке программирования Pascal.

Запишем условие в более кратком виде.

Найти: S, P

Решение задачи №1

Структура программы, решающей данную задачу, тоже проста:

  • 1) Описание переменных;
  • 2) Ввод значений сторон прямоугольника;
  • 3) Расчет площади прямоугольника;
  • 4) Расчет периметра прямоугольника;
  • 5) Вывод значений площади и периметра;
  • 6) Конец.

А вот и решение:

Program Rectangle; Var a, b, S, P: integer; Begin write("Введите стороны прямоугольника!"); readln(a, b); S:=a*b; P:=2*(a+b); writeln("Площадь прямоугольника: ", S); write("Периметр прямоугольника: ", P); End.

Задача №2: Скорость первого автомобиля — V1 км/ч, второго – V2 км/ч, расстояние между ними S км. Какое расстояние будет между ними через T часов, если автомобили движутся в разные стороны? Значения V1, V2, T и S задаются с клавиатуры.

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

Дано: V1, V2, S, Т
Найти: S1

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

Формула, используемая для решения нашей задачи, выглядит следующим образом:

Следующий пункт алгоритма – блок-схема:

Решение задачи №2.

А также решение, записанное в Pascal:

Program Rasstoyanie; Var V1, V2, S, T, S1: integer; {Ввод } begin write("Введите скорость первого автомобиля: "); readln(V1); write("Введите скорость второго автомобиля: "); readln(V2); write("Введите время: "); readln(T); write("Введите расстояние между автомобилями: "); readln(S); S1:=(V1+V2)*T+S; writeln("Через ", t,"ч. расстояние ", S1," км."); End.

Вам может показаться, что две эти программы правильны, но это не так. Ведь сторона треугольника может быть 4.5, а не 4, а скорость машины не обязательно круглое число! А Integer — это только целые числа. Поэтому при попытке написать во второй программе другие числа выскакивает ошибка:


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

Чтобы решить эту проблему вам надо вспомнить какой тип в Pascal отвечает за нецелые числа. В мы рассматривали основные типы. Итак, это вещественный тип — Real. Вот, как выглядит исправленная программа:

Как видите, эта статья полезна для прочтения как новичкам, так и уже более опытными пользователям Pascal, так как составление блок-схем не только очень простое и быстрое, но и весьма увлекательное занятие.

Разработка блок-схемы алгоритма решения задачи

Цель работы : изучение графического способа описания алгоритма решения задачи.

Задачи работы :

    ознакомиться с основными способами представления алгоритмов;

    освоить графический способ описания алгоритмов.

1.1. Порядок выполнения работы

    Изучите теоретические сведения по теме данного раздела (п. 1.2)

    Ознакомьтесь с постановкой задачи (п. 1.3). Вариант задания соответствует вашему номеру в списке группы.

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

    Ответьте на контрольные вопросы.

    Подготовьте отчет о выполнении практической работы, который должен содержать:

    титульный лист;

    цель практической работы;

    постановку задачи;

    блок-схему алгоритма решения поставленной задачи;

    ответы на контрольные вопросы;

    выводы по практической работе.

1.2. Общие сведения

Одним из наиболее трудоемких этапов решения задачи на ЭВМ является разработка алгоритма.

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

Основными характерными свойствами алгоритма являются:

    детерминированность (определенность) – при заданных исходных данных обеспечивается однозначность искомого результата;

    массовость – пригодность для задач данного типа при исходных данных, принадлежащих заданному подмножеству;

    результативность – реализуемый вычислительный процесс выполняется за конечное число этапов с выдачей осмысленного результата;

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

Выделяют следующие типы вычислительных процессов :

    Линейный вычислительный процесс.

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

    Разветвленный вычислительный процесс.

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

    Циклический вычислительный процесс

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

В свою очередь, существуют также несколько типов циклического вычислительного процесса , а именно:

    Счетные циклы (циклы с заданным количеством повторений) – ­­ это циклические процессы, для которых количество повторений известно.

    Итерационные циклы – это циклические процессы, завершающиеся по достижении или нарушении некоторых условий.

    Поисковые циклы – это циклические процессы, из которых возможны два варианта выхода:

Выход по завершению процесса;

Досрочный выход по какому-либо дополнительному условию.

По типу вычислительного процесса, реализуемого алгоритмом, различают:

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

Алгоритмы разветвленной структуры;

Алгоритмы циклической структуры.

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

К изобразительным средствам описания алгоритмов относятся следующие основные способы их представления:

Словесный (записи на естественном языке);

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

Графический (изображение схем и графических символов);

Программный (тексты на языках программирования).

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

Пример 1.1.

Алгоритм сложения двух чисел (a и b).

    Спросить, чему равно число a.

    Спросить, чему равно число b.

    Сложить a и b, результат присвоить с.

    Сообщить результат с.

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

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

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

Достоинством псевдокодов является близость к языкам программирования, а недостатками, в свою очередь, являются сложность освоения и невозможность непосредственного ввода алгоритма для решения на ЭВМ, т.е. необходимость перевода на язык программирования.

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

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

Рисунок 1.1 – Основные блоки

Следует упомянуть некоторые основные правила выполнения блок-схем, которыми надлежит руководствоваться при графическом описании алгоритмов. Начало алгоритмов отмечается символом "Терминатор", из которого выходит одна линия. В нем записывается слово "Пуск" ("Начало"). Конец алгоритма отмечается этим же символом, в котором записывается слово "Останов" ("Конец"). В этом случае данный символ не имеет ни одной выходной линии, а на него может замыкаться одна или более линий. Символ “Процесс” может иметь одну или несколько входных линий и только одну выходную. Внутри символа может быть записано несколько предписаний – в этом случае они выполняются в порядке записи. Представление отдельных операций достаточно свободно. Для обозначения вычислений можно использовать математические выражения, для пересылки данных – стрелки, для других действий – пояснения на естественном языке, например, А: = Х + 4; i: = i + 1, ––> B.

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

Для записи алгоритма любой сложности достаточно трех базовых структур :

    следование - обозначает последовательное выполнение действий (рис. 1.2, а);

    ветвление - соответствует выбору одного из двух вариантов действий (рис. 1.2, б);

    цикл-пока - определяет повторение действий, пока не будет нарушено условие, выполнение которого проверяется в начале цикла (рис. 1.2, в).

Рисунок 1.2 – Базовые алгоритмические структуры

Кроме этого, при описании алгоритмов используются дополнительные алгоритмические структуры , производные от базовых, каждая из которых может быть реализована через базовые структуры:

    выбор - выбор одного варианта из нескольких в зависимости от значения некоторой величины (рис. 1.3, а, б);

    цикл-до - повторение некоторых действий до выполнения заданного условия, проверка которого осуществляется после выполнения действий в цикле (рис. 1.3, в, г);

    цикл с заданным числом повторений (счетный цикл ) повторение некоторых действий указанное число раз (рис. 1.3, д, е).

Рисунок 1.3 – Реализация дополнительных алгоритмических структур

через базовые структуры

Рассмотрим примеры графического описания алгоритмов различных типов: линейного, разветвляющегося, циклического и комбинированного (рис. 1.4 – 1.7).

Пример 1.2. Линейный алгоритм.

Алгоритм вычисления значения выражения K=3b+6а (рис. 1.4) .

Рисунок 1.4 – Пример блок-схемы линейного алгоритма

Пример 1.3. Разветвляющийся алгоритм.

Алгоритм, определяющий, пройдет ли график функции y=3x+4 через точку с координатами x1,y1 (рис. 1.5).

Рисунок 1.5 – Пример блок-схемы разветвляющегося алгоритма

Пример 1.4. Циклический алгоритм.

Алгоритм, определяющий факториал натурального числа n (рис. 1.6):

n ! = 1*2*3*….*(n -1)* n

5!=1*2*3*4*5=120

Рисунок 1.6 – Пример блок-схемы циклического алгоритма

Пример 1.5. Комбинированный алгоритм.

Необходимо определить наибольший общий делитель двух натуральных чисел А и В.

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

Пример (а): А=225, В=125. Применяя алгоритм Евклида, получаем для А и В наибольший общий делитель, равный 25.

Пример (б): А=13, В=4. В этом случае наибольший общий делитель А и В равен 1.

B

50-25=25

Блок-схема алгоритма Евклида для нахождения наибольшего общего делителя двух натуральных чисел показана на рис. 1.7.

Рисунок 1.7 – Пример блок-схемы комбинированного алгоритма

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

Пример 1.6. Описание алгоритма Евклида на псевдокоде .

Алгоритм Евклида:

Ввести А,В

цикл-пока А ≠ В

если А > В

то А:= А - В

иначе В:= В - А

все - если

все-цикл

Вывести А

Конец алгоритма.

Таблица 1.1 – Пример псевдокода для записи базовых алгоритмических структур

Структура

Псевдокод

Структура

Псевдокод

Следование

Выбор

Все-выбор

Ветвление

Если

заданным

количеством повторений

Для =

иначе

Все - если

Все-цикл

Цикл-пока

Цикл-пока

Выполнять

Все-цикл

1.3. Задачи для составления блок-схем алгоритмов

    Дано целое число m>1.

Получить наименьшее целое k, при котором 4 k >m.

Вычислить произведение

    Дано целое число n.

Получить наименьшее число вида 2 r , превосходящее n (r - натуральное).

    Даны целые числа n, k (n  k  0).

Вычислить.

    Дано натуральное число n и действительное число a.

Вычислить произведение .

    Дано натуральное число n.

Вычислить сумму .

    Даны действительное число х и натуральное число n.

Вычислить, не используя операцию возведения в степень.

    Дано натуральное число n.

Вычислить сумму:

    Даны действительные числа x и a, натуральное n.

Вычислить:

Вычислить:

    Даны натуральные числа n, m. Получить сумму m последних цифр числа n.

    Пусть n- натуральное число. Вычислить сумму.

    Дано натуральное число n.

Вычислить сумму:

Контрольные вопросы

    Дайте определение алгоритма.

    Перечислите основные свойства алгоритмов и раскройте их сущность.

    Как подразделяются алгоритмы по типу реализуемого вычислительного процесса?

    Какие способы описания алгоритмов вам известны?

    Что понимается под графическим способом описания алгоритмов? В чем состоит преимущество данного способа перед словесным описанием алгоритма?

    Курсовая работа >> Информатика

    Весов ребер оставного дерева. 2.4 Блок -схема Рисунок 7 – Блок -схема алгоритма решения задачи 2.5 Обоснование выбора языка программирования Турбо... , интегрированную среду, намного ускоряющую процесс разработки программ. Этот программный продукт прошел...

  1. Алгоритмы и основы программирования

    Практическая работа >> Информатика, программирование

    Составление программ решения различных задач на электронных вычислительных машинах; наука, занимающаяся разработкой методов... . Блок -схема данного линейного алгоритма показана на рисунке 4. Пример 1. Вычислить при x=2,3 В общем случае, алгоритм решения ...

  2. Построение блок схем алгоритмов . Алгоритмические языки высокого уровня

    Реферат >> Информатика

    Подход к решению поставленных задач . Задачи реализованы на трех различных языках программирования. Блок -схемы алгоритмов , листинги программ... время. Алгоритм решения задачи получается более эффективным, если ис­пользовать метод пошаговой разработки , суть...

  3. Системное и программное обеспечение

    Реферат >> Информатика

    ... : Разработка блок схемы алгоритма решения задачи по контролю знаний слушателей ФПК. ОписаниеФФффуввыа блоков схемы алгоритма решения задачи . Блок 1 ... – ввести имя (обозначение) задачи , ввести...

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

Существует Государственный стандарт, определяющий правила создания блок-схем. Конфигурация блоков, а также порядок графического оформления блок-схем регламентированы ГОСТ 19.701-90 "Схемы алгоритмов и программ". В табл. 2.1 приведены обозначения некоторых элементов, которых будет вполне достаточно для изображения алгоритмов при выполнении студенческих работ.

Правила составления блок-схем:

    Каждая блок-схема должна иметь блок «Начало » и один блок «Конец ».

    «Начало » должно быть соединено с блоком «Конец » линиями потока по каждой из имеющихся на блок-схеме ветвей.

    В блок-схеме не должно быть блоков, кроме блока «Конец », из которых не выходит линия потока, равно как и блоков, из которых управление передается «в никуда».

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

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

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

    От блока «Начало » в отличие от всех остальных блоков линия потока только выходит, так как этот блок – первый в блок-схеме.

    Блок «Конец » имеет только вход, так как это последний блок в блок-схеме.

    Для простоты чтения желательно, чтобы линия потока входила в блок «Процесс» сверху, а выходила снизу.

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

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

Название блока

Обозначение блока

Назначение блока

Терминатор

Начало/Конец программы или подпрограммы

Обработка данных (вычислительное действие или последовательность вычислительных действий)

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

Подготовка

Заголовок счетного цикла

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

Обращение к процедуре

Ввод/Вывод данных


Типы алгоритмов

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

Линейный алгоритм состоит из упорядоченной последовательности действий, не зависящей от значений исходных данных, при этом каждая команда выполняется только один раз строго после той команды, которая ей предшествует.

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

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

Каждое из возможных направлений дальнейших действий называется ветвью .

В блок-схемах разветвление реализуется специальным блоком «Решение» . Этот блок предусматривает возможность двух выходов. В самом блоке «Решение» записывается логическое условие, от выполнения которого зависят дальнейшие действия.

Различают несколько видов разветвляющихся алгоритмов.

1. «Обход» – такое разветвление, когда одна из ветвей не содержит ни одного оператора, т.е. как бы обходит несколько действий другой ветви.

2. «Разветвление» – такой тип разветвления, когда в каждой из ветвей содержится некоторый набор действий.

3. «Множественный выбор» – особый тип разветвления, когда каждая из нескольких ветвей содержит некоторый набор действий. Выбор направления зависит от значения некоторого выражения.

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

Различают:

      циклы с известным числом повторений (или со счетчиком);

      циклы с неизвестным числом повторений (циклы с предусловием и циклы с постусловием).

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

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


Блок-схема в Word. Студенту или инженеру часто приходится создавать, различны схемы из блоков со стрелками и надписями. У кого–то есть специальная программа для этого, а некоторые умеют создавать такие схемы в Word. Если блоки на диаграмме должны быть соединены стрелками или предполагается «наращивание» диаграммы новыми блоками, то вместо таблиц лучше использовать вариант создания схемы как графического объекта. Встроенные средства рисования программы Word позволяют создать сколь угодно сложную схему. При этом текстовое содержание располагается не в основном документе, а в специальных графических вставках – надписях.

Давайте и мы попробуем сделать такую схему.

Блок-схема в Word 2003

Нажмите на панели Рисование фигуру Прямоугольник . Должна появиться вот такая рамка (без надписей). В ней мы и будем создавать свою блок-схему.

Совет

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

Нажмите кнопку Автофигуры на панели Рисование , выберите команду Блок-схема , а затем щелкните нужную фигуру.

Потом щелкните в поле рамки в том месте, где хотите расположить эту фигуру.

Если она встала не там, где вам хотелось, то перетащите её мышкой.

Выберите и расположите таким же образом остальные фигуры вашей будущей схемы.

Вы можете эти фигуры перетаскивать и изменять их размеры.

Теперь добавим надписи к нашим фигурам. Для этого на панели инструментов Рисование и щелкаем по значку Надпись .

Потом щелкаем на той фигуре, в которую хотим вставить эту надпись. Появится маленькая рамочка с мигающим курсором внутри.

Пишем название нашего блока. Надпись внутри этого поля можно форматировать, как простой текст в документе. Поле для надписи также можно перетаскивать и изменять его размер. Блоки с надписями можно копировать и вставлять в другие блоки.

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

В раскрывшемся диалоговом окне открыть вкладку Цвета и линии . В группе линии Цвет . Выбрать вариант Нет линий .

Совет

Ещё проще вставлять текст другим способом. Щелкните правой кнопкой мыши по блоку, в который необходимо вставить текст, и в выпадающем меню выберите пункт Добавить текст .

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

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

Теперь добавим к нашей схеме стрелки.

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

Щелкаем по кнопке Автофигуры Фигурные стрелки , и выбираем стрелку. Потом переходим на поле нашей блок-схемы и щелкаем мышкой там, где необходимо вставить стрелку. Можете её залить каким-нибудь цветом.

Блок-схема алгоритма

Пример блок-схемы алгоритма вычисления факториала числа N

Схе́ма - графическое представление определения, анализа или метода решения задачи, в котором используются символы для отображения операций, данных, потока, оборудования и т. д. (ГОСТ 19.701-90 ).

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

Стандарты выполнения

Правила выполнения схем определяются следующими документами:

Для программной документации:

Данные документы в частности регулируют способы построения схем и внешний вид их элементов.

Основные элементы схем алгоритма

Наименование Обозначение Функция
Терминатор
(пуск-останов)
Элемент отображает вход из внешней среды или выход из нее (наиболее частое применение − начало и конец программы). Внутри фигуры записывается соответствующее действие.
Процесс Выполнение одной или нескольких операций, обработка данных любого вида (изменение значения данных, формы представления, расположения). Внутри фигуры записывают непосредственно сами операции, например, операцию присваивания : a = 10*b + c .
Решение Отображает решение или функцию переключательного типа с одним входом и двумя или более альтернативными выходами, из которых только один может быть выбран после вычисления условий, определенных внутри этого элемента. Вход в элемент обозначается линией, входящей обычно в верхнюю вершину элемента. Если выходов два или три то обычно каждый выход обозначается линией, выходящей из оставшихся вершин (боковых и нижней). Если выходов больше трех, то их следует показывать одной линией, выходящей из вершины (чаще нижней) элемента, которая затем разветвляется. Соответствующие результаты вычислений могут записываться рядом с линиями, отображающими эти пути. Примеры решения: в общем случае − сравнение (три выхода: > , < , = ); в программировании − условные операторы if (два выхода: true , false ) и case (множество выходов).
Предопределенный процесс Символ отображает выполнение процесса, состоящего из одной или нескольких операций, который определен в другом месте программы (в подпрограмме, модуле). Внутри символа записывается название процесса и передаваемые в него данные. Например, в программировании − вызов процедуры или функции.
Данные
(ввод-вывод)
Преобразование данных в форму, пригодную для обработки (ввод) или отображения результатов обработки (вывод). Данный символ не определяет носителя данных (для указания типа носителя данных используются специфические символы).
Граница цикла Символ состоит из двух частей − соответственно, начало и конец цикла − операции, выполняемые внутри цикла, размещаются между ними. Условия цикла и приращения записываются внутри символа начала или конца цикла − в зависимости от типа организации цикла. Часто для изображения на блок-схеме цикла вместо данного символа используют символ решения, указывая в нем условие, а одну из линий выхода замыкают выше в блок-схеме (перед операциями цикла).
Соединитель Символ отображает выход в часть схемы и вход из другой части этой схемы. Используется для обрыва линии и продолжения ее в другом месте (пример: разделение блок-схемы, не помещяющейся на листе). Соответствующие соединительные символы должны иметь одно (при том уникальное) обозначение.
Комментарий Используется для более подробного описания шага, процесса или группы процессов. Описание помещается со стороны квадратной скобки и охватывается ей по всей высоте. Пунктирная линия идет к описываемому элементу, либо группе элементов (при этом группа выделяется замкнутой пунктирной линией). Также символ комментария следует использовать в тех случаях, когда объем текста в каком-либо другом символе (например, символ процесса, символ данных и др.) превышает его объем.

Описание других элементов схем можно найти в соответствующих ГОСТ (указаны выше).

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

Дракон-схемы

В последнее время появились структурные, математически строгие блок-схемы, которые называются «дракон-схемы». С появлением дракон-схем блок-схемы стали терять своё значение, так как они во всех отношениях уступают дракон-схемам.

Примечания

См. также

  • Диаграмма связей

Wikimedia Foundation . 2010 .

Смотреть что такое "Блок-схема алгоритма" в других словарях:

    блок-схема алгоритма - контрольная диаграмма — [Л.Г.Суменко. Англо русский словарь по информационным технологиям. М.: ГП ЦНИИС, 2003.] Тематики информационные технологии в целом Синонимы контрольная диаграмма EN control diagram …

    блок-схема - — блок схема [Лугинский Я. Н. и др. Англо русский словарь по электротехнике и электроэнергетике. 2 е издание М.: РУССО, 1995 616 с.] блок схема Условное изображение алгоритма,… … Справочник технического переводчика

    блок-схема (программы или алгоритма) - — [Я.Н.Лугинский, М.С.Фези Жилинская, Ю.С.Кабиров. Англо русский словарь по электротехнике и электроэнергетике, Москва, 1999 г.] Тематики электротехника, основные понятия EN flow diagram … Справочник технического переводчика

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

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

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

    БЛОК-СХЕМА - условное изображение алгоритма решения задачи, документооборота, последовательности выполнения рабочих операций или процедур с помощью стрелок, соединительных линий и геометрических фигур различной формы, содержащих внутри символы управления или… … Большой экономический словарь

    поэтапная блок-схема - представляет собой подробное графическое изображение структурной организации алгоритма, в котором каждый этап процесса переработки данных представляется в виде пронумерованных геометрических фигур (или блоков) … Толковый переводоведческий словарь

    Блок схема алгоритма Дейкстры. Алгоритмы поиска на гр … Википедия

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

Книги

  • Императивы эффективности производства , Николай Александрович Жданкин. На основе проведенного исследования рассматриваются вопросы разработки стратегии крупной компании в металлургии. Приведены примеры анализа внутренней и внешнейсреды предприятия. Произведена… электронная книга