Просмотр поста #85844: Помощь по паскалю

.
ROM
var
 decimal: word;
 bin_oct: byte;
 
function binary_octal(decimal:word;bin_oct:byte):string;
begin
 if (bin_oct <> 2) and (bin_oct <> 8) then
 write('Error')
 else
 while decimal > 0 do begin
 binary_octal := chr(ord('0') + (decimal mod bin_oct)) + binary_octal;
 decimal := decimal div bin_oct
 end;
end;
 
begin
 write('Decimal: ');
 readln(decimal);
 write('Binary or octal (2,8): ');
 readln(bin_oct);
 
 writeln(binary_octal(decimal,bin_oct));
 
readln
end.

Алгоритмов куча, не ленимся искать...