Предполагается, что восьмеричное число записано, как символьная строка, поскольку максимальная разрядность не была оговорена в задании.
const
m:array['0'..'7'] of string=
('000','001','010','011','100','101','110','111');
m1:array['1'..'7'] of string=
('1','10','11','100','101','110','111');
var
s8,s2:string;
i:integer;
begin
Write('Введите восьмеричное число: '); Readln(s8);
s2:=m1[s8[1]];
for i:=2 to Length(s8) do s2:=s2+m[s8[i]];
Writeln('В двоичной системе: ',s2)
end.
Тестовое решение:
Введите восьмеричное число: 360721
В двоичной системе: 11110000111010001