Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- \catcode `\@11 % делаем @ обычной буквой
- \newif\ifdivisible % объявляем булеву переменную
- \newcount\testMod@n % объявляем числовую переменную
- \def\testMod#1#2{ % объявляем макрос с двумя аргументами
- \testMod@n=#1 % помещаем в testMod@n первый аргумент
- \divide\testMod@n by#2 % делим нацело на второй аргумент
- \multiply\testMod@n by#2 % и умножаем на него же
- \ifnum#1=\testMod@n % если в результате получился снова первый аргумент,
- \divisibletrue % значит остатка не было,
- \else % а иначе
- \divisiblefalse % был
- \fi%
- }
- \catcode `\@12 % делаем @ обратно спецсимволом,
- % чтобы избежать непосредственного доступа к "локальным" переменным
- % из дальнейшего кода
- \testMod{6}{3}
- \ifdivisible 1 \else 0 \fi
- \testMod{6}{4}
- \ifdivisible 1 \else 0 \fi
- % должно вывести "1 0"
- \end
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement