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;

Anuncios

Lunes, 26 enero 2009 - Posted by | Delphi

4 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

  3. Claro que sirve ❤ muchísimas gracias 🙂

    Comentario por Iumari Sarmiento | Miércoles, 26 septiembre 2012

  4. Genial, funciona muy bien.

    Comentario por Santiago | Viernes, 14 junio 2013


Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s

A %d blogueros les gusta esto: