В общем, такая порграмма:
Код: Выделить всё
unsigned long int t = 1000000000; (миллиард)
if (t == 1000000000)(миллиард)
{
Опрашивать кнопку t++;
Опрашивать кнопку t--;
Выводить на дисплей 00 00
}
Включаем: индикатор горит. Видимо, условие t == 1000000000 выполняется. Но если нажать на любую кнопку, будет или t-- или t++. (СТРОГО 1 РАЗ, БЕЗ ДРЕБЕЗГА!). Индикатор гаснет. То есть t != 1000000000. По идее, если нажать противоположную кнопку, число должно вернуться обратно, к значению 1000000000 и индикатор включаться. Только этого не происходит.
Вывод:
unsigned long int t = 1000000000; представляется как хрен знает что, которое будет равно 1000000000(в условии) такому же хрен знает чему.
Однако, если увеличить это хрен знает что на 1 (или уменьшить) происходит потеря битов этого хрен знает чего и обратная операция уже не возвращает исходное число.


