Логическая операция ⊕ - это "исключающее ИЛИ" (xor в языках Паскаль, Бейсик и т.д.), а → операция присваивания. Тогда a⊕b→a; a⊕b→b; a⊕b→a - это был обмен значениями a ↔ b Теперь по этой же схеме обменяем местами b и с: b⊕c→b; b⊕c→с; b⊕c→b. Результат: b→a; c→b; a→c
Программа для иллюстрации: // PascalABC.NET 3.1, сборка 1218 от 12.04.2016 begin var a:=50; var b:=-20; var c:=0; Println('Исходные значения: a=',a,'b=',b,'c=',c); a:=a xor b; b:=a xor b; a:=a xor b; b:=b xor c; c:=b xor c; b:=b xor c; Println('Результат обмена: a=',a,'b=',b,'c=',c) end.
Денежные знаки - это пример смешанной системы счисления. Сейчас в России используются монеты и купюры следующих номиналов: 1 коп., 5 коп., 10 коп., 50 коп., 1 руб., 2 руб., 5 руб., 10 руб., 50 руб., 100 руб., 500 руб., 1000 руб. и 5000 руб. Чтобы получить некоторую сумму в рублях, нам нужно использовать некоторое количество денежных знаков различного достоинства. Предположим, что мы покупаем пылесос, который стоит 6379 руб. Чтобы расплатиться, нам потребуется шесть купюр по тысяче рублей, три купюры по сто рублей, одна пятидесятирублёвая купюра, две десятки, одна пятирублёвая монета и две монеты по два рубля. Если мы запишем количество купюр или монет начиная с 1000 руб. и заканчивая одной копейкой, заменяя нулями пропущенные номиналы, то мы получим число, представленное в смешанной системе счисления; в нашем случае — 603121200000.
В непозиционной системе счисления величина числа не зависит от положения цифры в представлении числа. Если бы мы перемешали цифры в числе 603121200000, то мы бы не смогли понять, сколько стоит пылесос; в непозиционной системе случится нечто похожее. Ярким примером непозиционной системы счисления является римская система.
var
a,b,c:integer;
begin
read(a,b,c);
if (a=b)and(b=c) then
write('Равны')
else
write('Не равны')
end.