2015-03-05 2 views
0

Заявление после decreases должно быть строго меньше в каждом цикле и всегда быть отличным от нуля. Но нужно ли это достигать 0? Нужно ли им уменьшать на единицу?Как «уменьшается» в JML?

+0

Связанный: Как/где я могу посмотреть вещи для JML? –

ответ

2

Как указано в the JML documentation, уменьшается (вы можете также написать уменьшения) означает, что INT или длинные выражения с этим спецификатором «должна быть не меньше, чем 0, когда цикл выполняется, и должна уменьшаться по крайней мере, один (1) каждый раз вокруг цикла ».

Таким образом, он может достигать или не достигать 0, но не может быть меньше этого. Кроме того, он должен получить меньше, по крайней мере, но не обязательно точно один. Обратите внимание на пример в документации для более точного объяснения.