Что такое управляющий граф программы

Файл «Примеры управляющих графов» внутри архива находится в следующих папках: Профессиональные программные среды, Модели качества. Документ из архива «Профессиональные программные среды», который расположен в категории » «. Всё это находится в предмете «информатика» из 2 семестр, которые можно найти в файловом архиве МАИ. Не смотря на прямую связь этого архива с МАИ, его также можно найти и в других разделах. Архив можно найти в разделе «остальное», в предмете «информатика» в общих файлах.

Онлайн просмотр документа «Примеры управляющих графов»

Текст из документа «Примеры управляющих графов»

//программа 1. Copy. копирование входнного потока во выходной main() //вспомогательный символ int c; c = getchar(); //копируем до тех пор, пока не встретим конец файла while (c!=EOF) putchar(C); c=getchar(c); > > Граф программы //программа 2. AnalysisText Подсчет числа цифр, «белых» символов и обычных main() //вспомогательный символ int c; //переменная для подсчета цифр int CountDigits; //переменная для подсчета «белых» символов int CountSpace; //переменная для подсчета остальных символов int CountOther; //инициализация переменных CountDigits=0; CountSpace=0; CountOther=0; //копируем до тех пор, пока не встретим конец файла while (c=getchar()!=EOF) /*в зависимости от того, какой символ встретим, увеличиваем соответсвующуюпеременную */ if (C>=`0` C <=`9`) CountDigits++; else if (C==« || C==`N` || c==`T`) CountSpace++; else CountOther++; > //печать результатов работы программы printf(«Число цифр равно = «,CountDigits); printf(«Число белых символов равно = «,CountSpace); printf(«Число прочих символов равно = «,CountOther); > Граф программы

//программа 3. Atoi.Перевод числа в строку main() //число int digits; //вспомогательный символ int c; print(«ВВедите число»); scanf(digits); if (digits <0) printf(«-«); digits=-digits; while (digits>0) //вытаскиваем очередную цифру из числа и выводим ее на печать c=digits % 10 + `0`; printf(c); digits=digits/10; > > Граф программы

Читайте также:
Не найдена лицензия не обнаружен ключ защиты программы или полученная

Граф знаний для поиска: построение и использование – Дмитрий Ильвохин

Источник: studizba.com

Управляющий граф алгоритма

А. А. Тюгашев полагает, что «теоретической основой графического языка блок-схем служит управляющий граф программы» [83]. Это верно лишь отчасти:

  • • язык блок-схем не удовлетворяет требованиям, предъявляемым к формальному языку, их нельзя подать на вход компилятора. Как отмечает А. Н. Степанов, для конечного исполнителя-компьютера блок-схемы не обеспечивают свойство понятности: «процессорами компьютеров не воспринимаются алгоритмы, заданные в виде блок-схемы» [15, с. 190];
  • • принцип ограничения топологии блок-схем Дейкстры накладывает принципиальные ограничения на управляющий граф алгоритма (control flow graph) и является частью теоретического фундамента блок-схем. В стандартах ГОСТ 19.701—90 и ISO 5807:1985 эти ограничения никак не учтены, что делает указанные стандарты уязвимыми для критики, недостоверными и нелигитимными.

Теоретические основы языка ДРАКОН

В отличие от блок-схем, теоретической основой языка ДРАКОН служит визуальное логическое исчисление, благодаря чему графический синтаксис ДРАКОНа является не только формальным и безопасным, но и эргономичным, облегчающим выявление слабых мест [39, с. 393—448].

КАК РАБОТАЮТ ГРАФЫ | СТРУКТУРЫ ДАННЫХ

Кроме того, в языке ДРАКОН — на основе четырех принципов структуризации блок-схем Дейкстры — разработан двумерный структурный подход к алгоритмам и программам (шампур-метод) [39, с. 449—472]. Метод содержит большое число правил, которые хранит в своей памяти программа ДРАКОН-конструктор. Последняя, выполняя черчение дракон-схем, автоматически обеспечивает выполнение правил и не допускает ошибок.

Метод Эдварда Ашкрофта и Зохара Манны

Известно, что пересечения соединительных линий в блок- схемах затрудняют их понимание, поэтому ГОСТ 19.701—90 предписывает: «В схемах следует избегать пересечения линий», что свидетельствует о неумении теоретически решить проблему пересечений.

В отличие от блок-схем, в языке ДРАКОН эта проблема решена; разработан теоретический метод, исключающий пересечения и разрывы линий, а также внутренние соединители. Метод использует введение переменной состояния по Ашкрофту — Манне [84] и Йо- дану [10, с. 192—196]. Затем переменная состояния удаляется, превращаясь в идентификаторы икон Имя ветки и Адрес [39, с. 436— 448]. Метод реализован на практике во внутренних алгоритмах программы ДРАКОН-конструктор.

Читайте также:
Достоинства и недостатки программы парус

Структурные блок-схемы Дейкстры (в центре) и эквивалентные им дракон-схемы (справа) выводы

Рис. 193. Структурные блок-схемы Дейкстры (в центре) и эквивалентные им дракон-схемы (справа) выводы

  • 1. Стандарт на блок-схемы алгоритмов ГОСТ 19.701—90 прямо противоречит принципам структуризации блок-схем, которые предложил Э. Дейкстра в классической работе «Заметки по структурному программированию».
  • 2. Принцип ограничения топологии блок-схем Дейкстры накладывает жесткие ограничения на управляющий граф алгоритма (control flow graph) и является частью теоретического фундамента схем алгоритмов.
  • 3. В стандарте ГОСТ 19.701—90 эти ограничения никак не учтены, что делает указанный стандарт уязвимым для критики и не- лигитимным.
  • 4. В языке ДРАКОН — на основе четырех принципов структуризации блок-схем Дейкстры — разработан двумерный структурный подход к алгоритмам (шампур-метод).
  • 5. В отличие от блок-схем в языке ДРАКОН решена проблема пересечений соединительных линий: разработан теоретический метод, исключающий пересечения и разрывы линий. Метод использует введение переменной состояния по Ашкрофту — Манне и Йода- ну с последующей модификацией.
  • 6. Правила разработки блок-схем алгоритмов по ГОСТ 19.701— 90 не формализованы, не эргономичны и разрешают совершать небезопасные действия.
  • 7. В отличие от блок-схем в дракон-схемах предусмотрены специальные средства предотвращения ошибок:
  • • формализация построения графики с помощью исчисления икон;
  • • формальные средства алгоритмической логики;
  • • формализация отростков;
  • • формализация валентных точек;
  • • формализация макроикон;
  • • формализация и минимизация стрелок;
  • • использование ДРАКОН-конструктора.

Тема 37

Источник: studme.org

Рейтинг
( Пока оценок нет )
Загрузка ...
EFT-Soft.ru