DRAKON.SU

Текущее время: Понедельник, 29 Апрель, 2024 20:08

Часовой пояс: UTC + 3 часа




Начать новую тему Ответить на тему  [ Сообщений: 10 ] 
Автор Сообщение
СообщениеДобавлено: Воскресенье, 18 Март, 2012 18:52 

Зарегистрирован: Среда, 07 Декабрь, 2011 18:31
Сообщения: 11
Добрый день.

При использовании ДРАКОН обратил внимание на то, что можно обойтись без веточных циклов при использовании выноса общего кода (общей ветки) в функции.
Или изменить предварительный код перед использованием общего кода.

Во вложении обработанный пример из книги.

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

Вот получилось два вопроса :)


Вложения:
Пример из книги без веточного цикла.png
Пример из книги без веточного цикла.png [ 12.7 КБ | Просмотров: 8297 ]
Без веточного цикла Исходник.JPG
Без веточного цикла Исходник.JPG [ 55.06 КБ | Просмотров: 8297 ]
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Воскресенье, 18 Март, 2012 18:54 

Зарегистрирован: Среда, 07 Декабрь, 2011 18:31
Сообщения: 11
Готов рассмотреть примеры, где автор укажет невозможность отказа от ссылок на ветки, находящиеся слева, путем использования функций.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 19 Март, 2012 12:35 

Зарегистрирован: Среда, 07 Декабрь, 2011 18:31
Сообщения: 11
Мои предложения:

В блоке «Адрес» можно использовать только ссылку на следующую справа ветку.


Вложения:
Первое правило использования веток.png
Первое правило использования веток.png [ 16.86 КБ | Просмотров: 8253 ]
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 19 Март, 2012 12:37 

Зарегистрирован: Среда, 07 Декабрь, 2011 18:31
Сообщения: 11
И второе:
Общие ветки должны быть вынесены в функции.


Вложения:
Второе правило использования веток.png
Второе правило использования веток.png [ 35.59 КБ | Просмотров: 8251 ]
Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 19 Март, 2012 12:38 

Зарегистрирован: Среда, 07 Декабрь, 2011 18:31
Сообщения: 11
Вот и нет оператора GOTO при формировании кода.
Весь код идет последовательно.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 19 Март, 2012 12:41 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Steelvan писал(а):
...
Если веточный цикл не использовать, а использование веток всегда будет идти слева на право, то (на мой взгляд) можно при создании кода обойтись без GOTO. Т.е. выпрямлять силует до примитива и сплошняком описывать.

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


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 19 Март, 2012 12:44 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Steelvan писал(а):
Вот и нет оператора GOTO при формировании кода.
Весь код идет последовательно.
А, это за счёт введения флага? А может, надо найти здесь "сложность поведения", как делают "автоматчики"... и реализовать автомат? Или это исключительно так сделано из-за особенностей трансляции в данном редакторе?


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 19 Март, 2012 13:35 

Зарегистрирован: Среда, 07 Декабрь, 2011 18:31
Сообщения: 11
Спасибо за ссылки.


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 19 Март, 2012 13:40 

Зарегистрирован: Среда, 07 Декабрь, 2011 18:31
Сообщения: 11
Мое стремление отойти от GOTO связано с ориентацией на использование схем в связке с самым популярным в России транслятором (1С).

Цель - получение человекочитаемого кода при его автоматическом формировании из схемы, т.к. код с использованием многих GOTO просто не разобрать.
А мой код будут еще 10 человек смотреть и материть :)


Вернуться к началу
 Профиль  
 
СообщениеДобавлено: Понедельник, 19 Март, 2012 13:57 

Зарегистрирован: Воскресенье, 01 Ноябрь, 2009 05:13
Сообщения: 1443
Ну да. Там ведь будут сущности, которые не нужны на данном ("предметном") уровне рассмотрения вопроса. :) Это так же, как я сделал в статье насчёт маршрутов - есть те же соединители/разветвители как вершины схемы и есть то, что стоит за ними - контактирование маршрутов (которое можно реализовать через БП). А для удобства чтения и как вершины их можно не показывать - как и определено было в техноязыке... При изучении алгоритмов разобрали как следует, уяснили - и достаточно.


Вернуться к началу
 Профиль  
 
Показать сообщения за:  Поле сортировки  
Начать новую тему Ответить на тему  [ Сообщений: 10 ] 

Часовой пояс: UTC + 3 часа


Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 12


Вы не можете начинать темы
Вы не можете отвечать на сообщения
Вы не можете редактировать свои сообщения
Вы не можете удалять свои сообщения
Вы не можете добавлять вложения

Найти:
Вся информация, размещаемая участниками на конференции (тексты сообщений, вложения и пр.) © 2008-2024, участники конференции «DRAKON.SU», если специально не оговорено иное.
Администрация не несет ответственности за мнения, стиль и достоверность высказываний участников, равно как и за безопасность материалов, предоставляемых участниками во вложениях.
Powered by phpBB® Forum Software © phpBB Group
Русская поддержка phpBB