DRAKON.SU
https://forum.drakon.su/

Алгоритм обновления номеров регистров
https://forum.drakon.su/viewtopic.php?f=78&t=5941
Страница 1 из 1

Автор:  Владимир Невзоров [ Суббота, 29 Октябрь, 2016 22:32 ]
Заголовок сообщения:  Алгоритм обновления номеров регистров

Уважаемые форумчане!
Выкладываю данную дракон-схему.
Подскажите, пожалуйста, что с точки зрения восприятия не очень?
Я пользовался редактором Степана Митькина.
К сожалению, не получилось две стрелки "if" свести в одну.
Также, возможно, сделал не очень с точки зрения эргономичности два условия.
Вложение:
20161029224510.png
20161029224510.png [ 96.71 КБ | Просмотров: 13677 ]

Автор:  Владимир Паронджанов [ Суббота, 29 Октябрь, 2016 23:04 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Что вы хотели изобразить: алгоритм или программу?
Получился какой-то гибрид, ни то, ни се.

Это не программа, так как не хватает строгости.
Это не алгоритм, так как много непонятных и главное ненужных обозначений.

Попробуйте нарисовать отдельно две дракон-схемы:
1 алгоритм
2 программу

Начните а алгоритма. Для этого Уберите многие программистские обозначения и замените их русскими словами (в разумных пределах)

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

Цитата:
не получилось две стрелки "if" свести в одну.
И очень хорошо, что не получилось. Не следует их сводить в одну.
Скажу проще. Вы хотели совершить ошибку. Но редактор Степана Митькина не позволил вам сделать ошибку.

Автор:  Владимир Невзоров [ Суббота, 29 Октябрь, 2016 23:48 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Вот:
Вложение:
20161029235958.png
20161029235958.png [ 144.52 КБ | Просмотров: 13663 ]


Со стрелками не много Вас не понял. Сейчас книги под рукой нету. Но в разделе, где про "И", "ИЛИ" - там, по-моему, стрелку в одну вливались, чтобы все четко ясно было?

Автор:  Владимир Паронджанов [ Воскресенье, 30 Октябрь, 2016 00:26 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Владимир, очень хорошо.

1. Насчет стрелок. У меня в старой книге была ошибка, когда стрелки сливались. Митькин все сделал правильно. Сливание стрелок запрещено.

2. Команды в алгоритме надо писать в повелительном наклонении.

3. Не сохранили, а Сохрани или Сохранить

4. Не Получили, а Получи или Получить

5. Вместо Пересчитали... лучше написать Преобразуй свойство "Тип регистра" в смещение...

6. важно! В иконах вопрос не следует задавать отрицательные вопросы. В вашем алгоритме три ошибки. Уберите отрицания (уберите три частицы "не"). И поменяйте местами Да и нет в трех местах

Автор:  LKom [ Воскресенье, 30 Октябрь, 2016 05:50 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Владимир Паронджанов писал(а):
Владимир, очень хорошо.
...
Вовсе, не очень хорошо!
Когнитивно не хорошо.

Смотрите дискуссию:
http://forum.oberoncore.ru/viewtopic.php?p=96067#p96067 от Суббота, 30 Апрель, 2016 18:41
http://forum.oberoncore.ru/viewtopic.php?p=96121#p96121

http://forum.oberoncore.ru/viewtopic.php?p=96122#p96122
Владимир Паронджанов писал(а):
Тем не менее, путаница не возникает.
Однако, путаница возникла.
ДРАКОН - "Наглядность" пострадала.

Автор:  Владимир Невзоров [ Воскресенье, 30 Октябрь, 2016 13:01 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

I. Схема
Владимир Паронджанов писал(а):
Владимир, очень хорошо.

1. Насчет стрелок. У меня в старой книге была ошибка, когда стрелки сливались. Митькин все сделал правильно. Сливание стрелок запрещено.

2. Команды в алгоритме надо писать в повелительном наклонении.

3. Не сохранили, а Сохрани или Сохранить

4. Не Получили, а Получи или Получить

5. Вместо Пересчитали... лучше написать Преобразуй свойство "Тип регистра" в смещение...

6. важно! В иконах вопрос не следует задавать отрицательные вопросы. В вашем алгоритме три ошибки. Уберите отрицания (уберите три частицы "не"). И поменяйте местами Да и нет в трех местах


Сделал:

Вложение:
20161030121151.png
20161030121151.png [ 144.01 КБ | Просмотров: 13638 ]


Остался вопрос по циклу "для".
1. Вопрос.
В моей программе в цикле по окончанию очередной итерации следующий тег становиться текущим.
В данной ДРАКОН-схеме это пока не представлено.
В первоначально выложенном варианте это видно в открывающей иконке цикла "для".

2. Вариант действия
Здесь можно было сделать это иконой "Действие" перед закрывающейся иконкой цикла"для".
Т.е. чтобы в новую итерацию мы вошли с новым текущим тегом и новым следующем.

3. Сложность реализации
Однако, в этом случае возникает сложность по прерыванию итерации цикла этими двумя условиями(которые две стрелки вверх).
Мне в этом случае также нужно уже работать с новыми текущим и следующим тегом.

II. Обсуждение иконки "для"
LKom писал(а):
Владимир Паронджанов писал(а):
Владимир, очень хорошо.
...
Вовсе, не очень хорошо!
Когнитивно не хорошо.

Смотрите дискуссию:
http://forum.oberoncore.ru/viewtopic.php?p=96067#p96067 от Суббота, 30 Апрель, 2016 18:41
http://forum.oberoncore.ru/viewtopic.php?p=96121#p96121

http://forum.oberoncore.ru/viewtopic.php?p=96122#p96122
Владимир Паронджанов писал(а):
Тем не менее, путаница не возникает.
Однако, путаница возникла.
ДРАКОН - "Наглядность" пострадала.

Прочитал.
Книгу по медицинским алгоритмам не читал. В редакторе увидел эти две иконки. Честно говоря, пока особо не понял зачем они. И, поэтому, действительно ли они могут запутать меня и тех, кому я показываю, кто не читал книгу по медицинским алгоритмам?

Автор:  Владимир Паронджанов [ Воскресенье, 30 Октябрь, 2016 14:34 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Поехали дальше.

1. Мне кажется, лучше заменить «свойство» на атрибут.

2. В нижней иконе Вопрос слова «сохраненные» лучше убрать. Это и так ясно.
Очень громоздкий текст. Может быть, лучше так:
Цитата:
Совпадают ли значения атрибутов «№ регистра у текущего и следующего тегов?


3. В двух нижних иконах Действие торчат уши программистского оператора Присвоить. Желательно исправить. Например, так:
Цитата:
Вычислить значение атрибута «№ регистра» следующего тэга.
Для этого прибавить смещение к значению атрибута «№ регистра» текущего тэга


4. Ваши собственные замечания и недочеты по циклу Для.
Исправьте, как считаете нужным

Автор:  LKom [ Воскресенье, 30 Октябрь, 2016 15:39 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

http://forum.oberoncore.ru/viewtopic.php?p=99126#p99126
Владимир Паронджанов писал(а):
Попробуйте нарисовать отдельно две дракон-схемы:
1 алгоритм
2 программу

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

В ИС Дракон запись алгоритма в проблемной области и программного кода органично объединены и неразрывны.
Приходится констатировать: у В.Д. Паронджанова развитие языка Дракон происходит изолировано от ИС Дракон.

Автор:  медик_пытатель [ Понедельник, 31 Октябрь, 2016 20:32 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Владимир Паронджанов http://forum.drakon.su/viewtopic.php?p=99126#p99126 писал(а):
Что вы хотели изобразить: алгоритм или программу?
Получился какой-то гибрид, ни то, ни се.

LKom viewtopic.php?p=99137#p99137 писал(а):
http://forum.oberoncore.ru/viewtopic.php?p=99126#p99126
Владимир Паронджанов писал(а):
Попробуйте нарисовать отдельно две дракон-схемы:
1 алгоритм
2 программу

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

В ИС Дракон запись алгоритма в проблемной области и программного кода органично объединены и неразрывны.
Приходится констатировать: у В.Д. Паронджанова развитие языка Дракон происходит изолировано от ИС Дракон.

    Помогите, пожалуйста, понять чем различаются:
      алгоритм
    и
      программа (компьютерная программа)?

Автор:  Владимир Паронджанов [ Понедельник, 31 Октябрь, 2016 21:09 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

медик_пытатель писал(а):
    Помогите, пожалуйста, понять чем различаются:
      алгоритм
    и
      программа (компьютерная программа)?
Применительно к дракон-схеме различие состоит в следующем.

В алгоритме внутри икон разрешается писать на обычном русском языке, чтобы понятно было ЧЕЛОВЕКУ.
В программе внутри икон следует писать по правилам выбранного языка программирования (то есть на "птичьем" языке, который понимают только программисты). Чтобы эту программу можно было выполнить (после компиляции в исполняемый код) на компьютере.

Я надеюсь, что Владимир Невзоров нарисует две дракон-схемы (не только дракон-схему алгоритма, но и дракон-схему программы).
И тогда можно будет в живую увидеть отличие алгоритма от программы.

Автор:  Владимир Невзоров [ Понедельник, 31 Октябрь, 2016 22:29 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

I. Схема:
Вложение:
20161031220900.png
20161031220900.png [ 169.38 КБ | Просмотров: 13588 ]


Владимир Паронджанов писал(а):
Поехали дальше.

1. Мне кажется, лучше заменить «свойство» на атрибут.

2. В нижней иконе Вопрос слова «сохраненные» лучше убрать. Это и так ясно.
Очень громоздкий текст. Может быть, лучше так:
Цитата:
Совпадают ли значения атрибутов «№ регистра у текущего и следующего тегов?


3. В двух нижних иконах Действие торчат уши программистского оператора Присвоить. Желательно исправить. Например, так:
Цитата:
Вычислить значение атрибута «№ регистра» следующего тэга.
Для этого прибавить смещение к значению атрибута «№ регистра» текущего тэга


4. Ваши собственные замечания и недочеты по циклу Для.
Исправьте, как считаете нужным


1. Заменил.
2. Сохраненный нужно оставить.
3. В одной сделал, в другой как-то не очень получилось. Может воспользоваться иконкой "полка" как-нибудь?
4. Пока самый не понятный вопрос. Что было изначально в цикле "Для" - итерация/увеличение текущего тега на единицу - т.е. переход на следующий тег и повторение всего алгоритма с ним - здесь не знаю как в открывающейся иконки цикла написать. Поэтому сделал дополнительный вопрос.
Т.е. суть, которую хочу донести - это то что в цикл мы входим с уже назначенным текущим тегом и следующем. Как доходим до конца цикла и снова возвращаемся в его начало - теперь нам нужны уже следующий и следующий за следующем теги.
Также возможна ситуация по экстренному возврату в начало цикла. Иными словами, в определенных случаях нам не надо доходить до конца цикла, а нужно вернуться в начало, в котором также нужно чтобы мы взяли на место текущего тега следующий и на место следующего - следующий за следующим.

II. По поводу алгоритма
На самом деле мне и интересно(что Владимир Паронджанов угадал) построить алгоритм. И благодаря этой теме я начинаю понимать разницу между программой и алгоритмом.
Вот код перед программистом. Он хорошо написан и оформлен. Программист даже видит циклы и какие-то присвоения, действия. Чтобы разобраться, что именно делает код - нужно изучить тематику. А если ему дать именно такой алгоритм в помощь, то дело пойдет быстрее. Код перед глазами и листок со схемой, описывающей что здесь происходит. И можно быстро врубиться. Т.е. это как документация. Но не в самом коде. А рядом. Считаю это очень важным. И я благодарен каждому участнику этой тему за мысли, за то что сейчас и здесь рождается действительно алгоритм, а не программа. И, повторюсь, я начинаю видеть разницу.

Автор:  Владимир Паронджанов [ Вторник, 01 Ноябрь, 2016 16:48 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Ценная мысль Владимира Невзорова,
которую нужно записать золотыми буквами


Владимир Невзоров писал(а):
благодаря этой теме я начинаю понимать разницу между программой и алгоритмом.

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

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

Т.е. это как документация. Но не в самом коде. А рядом. Считаю это очень важным.

Автор:  Владимир Паронджанов [ Пятница, 04 Ноябрь, 2016 09:43 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Владимир, желательно изложить эту мысль более подробно, более детально. Чтобы она стала достоянием МНОГИХ людей. Вы хорошо пишете, у вас получится. Мысль очень ценная, ее надо развернуть.

Автор:  Владимир Паронджанов [ Воскресенье, 13 Ноябрь, 2016 10:01 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Повторно
Владимир Паронджанов писал(а):
Владимир, желательно изложить эту мысль более подробно, более детально. Мысль очень ценная, ее надо развернуть.
Вы готовы?
Если да, то действуйте, не теряйте времени.

Автор:  dvuugl [ Пятница, 14 Июль, 2017 22:51 ]
Заголовок сообщения:  Re: Алгоритм обновления номеров регистров

Алгоритм- это программа в форме понятной человеку.
Программа - это алгоритм в форме понятной машине.

Страница 1 из 1 Часовой пояс: UTC + 3 часа
Powered by phpBB® Forum Software © phpBB Group
https://www.phpbb.com/