Re: Tips & tricks (Трюки кодинга)
Ещё один пример использования оператора mod
Допустим, у вас в программе есть меню из 5 пунктов. В переменной cursor хранится текущее положение курсора.
Тогда вы пишите:
key:=GetKeyClicked;
if (key=-60) or (key=-2) then cursor:=cursor+1; // Вниз
if (key=-59) or (key=-1) then cursor:=cursor-1; // Вверх
if cursor<0 then cursor:=5+cursor;
if cursor>4 then cursor:=cursor-5;
можно проще:
key:=GetKeyClicked;
if (key=-60) or (key=-2) then cursor:=(cursor+1) mod 5; // Вниз
if (key=-59) or (key=-1) then cursor:=(cursor+4) mod 5; // Вверх
и всё.
|