Автомат обрабатывает натуральное число N < 256 по следующему алгоритму:
1) Строится восьмибитная двоичная запись числа N-1.
2) Инвертируются все разряды исходного числа, кроме последней единицы и стоящих за ней нулей (0 заменяется на 1, 1 на 0).
3) Полученное число переводится в десятичную систему счисления.
Для какого значения N результат работы алгоритма равен 18?
Ответ на сайте 238, но если следовать условию, то "Строится восьмибитная двоичная запись числа N-1" и тогда при проверке результат работы равен 17,
Прорешал и программой и ручками - выходит 239
uses school;
var n,i,i1,c:integer; r,s:string;
begin
for n:=1 to 255 do
begin
r:=bin(n-1); s:='';
if length(r)<8 then
begin
s:='0'*(8-length(r))+r;
r:=s;
end;
c:=0;
for i:=8 downto 1 do
begin
if (r[ i ]='1') and (c>0) then r[ i ]:='0'
else if (r[ i ]='1') and (c=0) then c+=1
else if (r[ i ]='0') and (c>0) then r[ i ]:='1';
end;
if dec(r,2)=18 then writeln(n);
end;
end.