Показать сообщение отдельно
  (#5 (permalink)) Старый
slonik slonik вне форума
Member
 
Сообщений: 23
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Регистрация: 04.10.2002
По умолчанию 14.01.2003, 19:05

лови вот, вроде даже работает, при вводе a=10, b=11...
проверок на глопости не делал, коментариев не писал, должен сам разобраться

Код:
uses crt;
var
  p_s: char;
  p, s, i: integer;
  m_st: array[0..31] of string;
  m_fi: array[0..31] of integer;

function char_to_int(ch:char):integer;
var x:integer;
begin
  x:= Ord(ch) - 48;
  if x>9 then x:= x - 39;
  char_to_int:= x;
end;


function dest(x:string):integer;
var d, len, ind, step, code:integer;
begin
  len:= length(x);
  step:= 1;
  d:= 0;
  for ind:= len downto 1 do
  begin
    d:= d + step * char_to_int(x[ind]);
    step:= step * p;
  end;
  dest:= d;
end;

begin
  write('p=');
  readln(p_s);
  p:= char_to_int(p_s);
  write('s=');
  readln(s);
  for i:=0 to s-1 do
  begin
   write('m[',i,']=');
   readln(m_st[i]);
  end;
  writeln('decimal:');
  for i:=0 to s-1 do
  begin
   write('m[',i,']=');
   m_fi[i]:= dest(m_st[i]);
   writeln(m_fi[i]);
  end;
end.
з.ы. москва не сразу строилась
Ads