Witam
Mam pytanie, jakie jest odwrotne dzialanie do albo (w pascalu xor) bo np. do odejmowania jest dodawanie , do mnozenia dzielenie . W logice tez tak jest ??
0
0
e no sprawdziłbyś, odwrotne do albo jest ... albo
a XOR b = c
c XOR b = a
c XOR a = b
0
Thx
ale bardziej chodzi mi o takie cos ze jak mam A= B xor B/2 zebym mogl obliczyc B
0
Poszukaj o kodzie Graya
0
E... To w takim razie co rozumiesz za p/2, gdzie p jest zdaniem logicznym? (U Ciebie w przykładzie B) Przecież wartości logicznych nie możesz dzielić :/
0
Jak nie możesz? Nie słyszałeś nigdy, że ktoś powiedział pół prawdy ? ;)
Ale podejrzewam, że jemu chodziło nie o logikę, ale o operacje bitowe. W tym przypadku jak stwierdził foflik pomoże nam Gray :
funkcja szyfrująca (pascal):
function szyfr (n : longint) : longint;
begin
szyfr := n xor (n div 2);
end;
funkcja deszyfrująca (pascal) :
function deszyfr(n : longint) : longint;
begin
if (n = 0) or (n = 1) then deszyfr := n
else deszyfr := n xor deszyfr(n div 2);
end;
0
to jest jedno z zadan na opss.safo.biz
0
Takie samo nie, ale podobne- wiem, bo się męczyłem z tym ze 2h, zanim wpadłem na tego Graya.