Info Delphi

La magia de la programación a tu alcance

Números romanos

Hola a todos,

hace algún tiempo tuve la necesidad de escribir una rutina para convertir números enteros en números romanos, no fue muy difícil y lo más probable es que nadie la  necesite, pero uno nunca sabe lo que puede hacernos falta.

function CambiarARomano(iNumero: integer): 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
bCont: Byte;
begin
for bCont := 13 downto 1 do
while
(iNumero >= Numeros[bCont]) do begin
iNumero := iNumero - Numeros[bCont];
Result := Result + Romanos[bCont];
end;
end;

Advertisement

Lunes, 26 enero 2009 - Publicado por | Delphi

2 comentarios »

  1. esa porqueria no funciona

    Comentario por frak | Miércoles, 11 marzo 2009

  2. Hola @frak,
    es cierto, esta porquería no funciona, pero no porque la función en si misma no lo haga, sino porque, a la hora de transcribirla aquí, wordpress modificó las comillas de la cadena Romanos a comillas tipográficas, con lo que te devuelve un error, en cualquier caso es un error que no era muy difícil de ver pero ya lo he corregido.
    Gracias por avisar

    Saludos

    Comentario por infodelphi | Lunes, 16 marzo 2009


Deja un comentario

Fill in your details below or click an icon to log in:

Logo de WordPress.com

You are commenting using your WordPress.com account. Log Out / Cambiar )

Twitter picture

You are commenting using your Twitter account. Log Out / Cambiar )

Facebook photo

You are commenting using your Facebook account. Log Out / Cambiar )

Connecting to %s

Seguir

Get every new post delivered to your Inbox.