15 / 36 · Теория
Компараторы и граничные условия
Свяжите сравнения с граничными тестами.
Уроки доступны бесплатно. Запишитесь, чтобы сохранять прогресс.
Цели урока
- Свяжите сравнения с граничными тестами.
Условие из спецификации
a==b проверяет равенство, a<b — величину. Ограничение счётчика может требовать count==limit или count>=limit; это определяется спецификацией. Проверка равенства пропустит предел, если шаг может его перескочить. Рассматривайте условие вместе с правилом обновления и диапазоном.
Ширина и знаковость
1111 и 0001 дают 15>1 при беззнаковом сравнении, но −1<1 при знаковом. Проверьте нули, равные максимумы, соседние числа и обе стороны знаковой границы. Урок ограничен 0/1 и не разбирает четырёхсостоянийные сравнения X/Z.
Попробуйте сами
Счёт начинается с 0 и растёт на 2, limit=3. Достаточно равенства?
Прочитать объяснение
Нет: 0,2,4 перескакивает три. Если нужно остановиться на пределе или выше, рассмотрите >= с учётом допустимого диапазона.