const k = 50;var s, si, sf: string; powm, n10i: longint; i, j, m, ls, err, ni, nf: integer; a: double;begin Write('Введите основание системы счисления (2..9): '); Readln(m); if not (m in [2..9]) then Writeln('Ну-ну...') else begin Write('Введите положительное число в этой системе счисления: '); Readln(s); ls := Length(Trim(s)); i := pos('.', s); if i > 0 then begin ni := i - 1; si := Copy(s, 1, ni); nf := ls - i; sf := Copy(s, i + 1, nf) end else begin si := s; ni := ls; sf := ''; nf := 0 end; powm := 1; n10i := 0; for i := ni downto 1 do begin Val(si[i], j, err); n10i := n10i + j * powm; powm := powm * m end; powm := m; a := 0; for i := 1 to nf do begin Val(sf[i], j, err); a := a + j / powm; powm := powm * m end; a := a + n10i; Writeln(s, '(', m, ')=', a, '(10)') end;end.Тестовое решение:Введите основание системы счисления (2..9): 8Введите положительное число в этой системе счисления: 23532.503423532.5034(8)=10074.6318359375(10)