Our Blog

Меняем значения переменных местами на Pascal

Как вы уже заметили код, исполняющий взаимозамену значений переменных уже был опубликован. Мой коллега предлагает свой вариант…

Program ChngVar;
var
a,b:real;
begin
a := a - b;
b:=b + a;
a:=b - a;
end.

Также человек с ником Volk предложил свой вариант, использующий двоичную арифметику и предотвращающий возникновение ошибок при работе с маленькими числами:

a = 101 (двоичная)
b = 110 (двоичная)
===========================
a := a XOR b; {101 XOR 110 = 011}
b := b XOR a; {110 XOR 011 = 101}
a := a XOR b; {011 XOR 101 = 110}
===========================
Comments ( 0 )
    -->