Lenguaje de programación Borland Delphi
Para convertir un número decimal a número romano, primero añadiremos un formulario y dentro de éste añadiremos un Button y un Edit (para introducir el número a convertir):
function DecRoman( Decimal: LongInt ): String;
const
Numeros: Array[1..13] of Integer =
( 1, 4, 5, 9, 10, 40, 50, 90, 100,
400, 500, 900, 1000);
Romanos: Array[1..13] of String =
( 'I', 'IV', 'V', 'IX', 'X', 'XL',
'L', 'XC', 'C', 'CD', 'D', 'CM', 'M' );
var
i: Integer;
begin
Result := '';
for i := 13 downto 1 do
while ( Decimal >= Numeros[i] ) do
begin
Decimal := Decimal - Numeros[i];
Result := Result + Romanos[i];
end;
end;
procedure TForm2.Button1Click(Sender: TObject);
begin
ShowMessage(DecRoman(strtoint(txtNumero.Text)));
end;
Publicado el: 2003-09-27