OberonCore

Библиотека  Wiki  Форум  BlackBox  Компоненты  Проекты
Текущее время: Вторник, 12 Декабрь, 2017 01:36

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




Начать новую тему Ответить на тему  [ Сообщений: 4 ] 
Автор Сообщение
 Заголовок сообщения: Цикл для атомных станций
СообщениеДобавлено: Пятница, 01 Декабрь, 2017 18:33 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 500
Откуда: Киев
Исходя из рекомендаций к коду для атомных станций, которые регламентируют, что цикл должен иметь константное максимальное количество итераций и того, что в общем случае проанализировать количество итераций для инструментальных средств может быть затруднительным, то, по-хорошему, язык должен предоставлять цикл подобного вида:
Код:
Loop =
  IdentOk ":=" LOOP Limit WHILE Expression DO
    Statements
  END .

Limit = ConstExpr | MIN(ExprLimit, ConstExpr) .

Или какого другого? Или не должен?


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Цикл для атомных станций
СообщениеДобавлено: Пятница, 01 Декабрь, 2017 20:48 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 196
Откуда: Москва
Для категории A установлены требования по стандарту 60880:
Цитата:
B.4ag Следует использовать циклы только с постоянными максимальными областями значений переменной цикла

Как реализовывать, в стандарте не сказано.

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


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Цикл для атомных станций
СообщениеДобавлено: Пятница, 01 Декабрь, 2017 21:13 

Зарегистрирован: Четверг, 08 Май, 2008 19:13
Сообщения: 500
Откуда: Киев
Дмитрий Дагаев писал(а):
Единственное возражение - предел должен быть постоянным, а не ExprLimit.
Насколько я понял это утверждение
Цитата:
B.4ag Следует использовать циклы только с постоянными максимальными областями значений переменной цикла
Выражение
Код:
MIN(ExprLimit, ConstExpr)
вполне соответствует ему, так как позволяет ограничить сильней, чем максимальное постоянное значение.


Вернуться к началу
 Профиль  
 
 Заголовок сообщения: Re: Цикл для атомных станций
СообщениеДобавлено: Пятница, 01 Декабрь, 2017 21:20 

Зарегистрирован: Вторник, 01 Март, 2011 09:34
Сообщения: 196
Откуда: Москва
А, минимум, не посмотрел, тогда все соответствует.


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

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


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

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


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

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