RosettaCodeData/Task/Gray-code/Erlang/gray-code-1.erl

10 lines
166 B
Erlang
Raw Permalink Normal View History

2023-07-01 11:58:00 -04:00
-module(gray).
-export([encode/1, decode/1]).
encode(N) -> N bxor (N bsr 1).
decode(G) -> decode(G,0).
decode(0,N) -> N;
decode(G,N) -> decode(G bsr 1, G bxor N).