Главная страница


ru.algorithms

 
 - RU.ALGORITHMS ----------------------------------------------------------------
 From : Konstantin Osmehin                   2:5020/400     06 Mar 2002  17:49:31
 To : Illarion Kovalchuk
 Subject : Re: римские цифры
 -------------------------------------------------------------------------------- 
 
 "Illarion Kovalchuk" <Illarion.Kovalchuk@f117.n467.z2.fidonet.org> wrote in
 message news:1015357529@f117.n467.z2.ftn...
 
 > #open console ~C [05 Mar 02, 19:44]
 > #mail All
 >
 > Поделитесь алгоритмом записи числа в римских цифрах.
 >
 > #np: YELLO - Monolith
 
 program Project1;
 {$APPTYPE CONSOLE}
 const
  MaxSyms=7;
  alph:array[1..MaxSyms] of record c:char;v:integer;end=
 
 ((c:'I';v:1),(c:'V';v:5),(c:'X';v:10),(c:'L';v:50),(c:'C';v:100),(c:'D';v:50
 0),(c:'M';v:1000));
 
  {n>0}
 
  function GetNumberPresentation(n:integer):string;
  var
   i,j:integer;
   begin
    i:=1;
    while (i<=MaxSyms)and(n>alph[i].v) do i:=i+1;
    if i>MaxSyms then
     Result:=alph[i-1].c+GetNumberPresentation(n-alph[i-1].v)
    else
     if n=alph[i].v then
      Result:=alph[i].c
     else
      begin
       j:=i-1;
       while(j<>0)and((alph[i].v-alph[j].v)<>n) do j:=j-1;
       if j<>0 then
        Result:=alph[j].c+alph[i].c
       else
        Result:=alph[i-1].c+GetNumberPresentation(n-alph[i-1].v);
      end;
   end;
 begin
  Writeln(GetNumberPresentation(2024));
  Readln;
 end.
 -- 
 Отправлено через сервер Форумы@mail.ru - http://talk.mail.ru
 --- ifmail v.2.15dev5
  * Origin: Talk.Mail.Ru (2:5020/400)
 
 

Вернуться к списку тем, сортированных по: возрастание даты  уменьшение даты  тема  автор 

 Тема:    Автор:    Дата:  
 римские цифры   Illarion Kovalchuk   05 Mar 2002 20:44:40 
 Re: римские цифры   Konstantin Osmehin   06 Mar 2002 17:49:31 
 Re: pимские цифpы   Alexei Philippov   07 Mar 2002 23:58:38 
 римские цифры   Yaroslav Pernerovsky   29 Jul 2002 09:08:11 
Архивное /ru.algorithms/64884ff864a0.html, оценка 2 из 5, голосов 10
Яндекс.Метрика
Valid HTML 4.01 Transitional