Как представить функции в блок-схеме? - PullRequest
4 голосов
/ 20 декабря 2010

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

Ответы [ 5 ]

3 голосов
/ 20 декабря 2010

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

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

2 голосов
/ 20 декабря 2010

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

1 голос
/ 02 января 2012

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

http://drakon -editor.sourceforge.net / cpp / c.html

0 голосов
/ 10 марта 2017

У меня был похожий вопрос, Блок-схема Get-ter , на который был дан ответ:

ПРИМЕЧАНИЕ : Пожалуйста, не голосуйте за этот ответ, а вместо оригинала по вышеуказанной ссылке.

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

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

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

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

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

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

Вы можете заглянуть в UML. - Эрик Эйдт 12 декабря 16 в 16: 51

0 голосов
/ 20 декабря 2010

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

...