Historia:
Los romanos formaron un imperio que se extendía por la mayor parte de Europa y por el norte de África.
Los pueblos sometidos aprendieron de ellos su modo de vida, sus costumbres, su lengua llamada latín, su escritura y también su sistema de numeración.
Tras la desaparición del Imperio Romano, en los siglos posteriores algunas de las cosas aprendidas de los romanos permanecieron, aunque fueron cambiando. Así nosotros, actualmente hablamos Castellano que es Latín evolucionado y al escribir seguimos utilizando letras latinas. Pero otras cosas aunque permanecieron varios siglos, después desaparecieron, así pasó con el sistema de numeración romano. Se sustituyó por el sistema de numeración arábigo, que proviene de la India y lo extendieron los árabes, es el que empleamos ahora y es mucho más fácil de manejar.
Actualmente vemos y utilizamos números romanos en muy pocas ocasiones: para nombrar los siglos, en los actos y escenas de una obra de teatro, en la designación de olimpiadas, congresos y certámenes, en la numeración de reyes, emperadores y papas, en inscripciones antiguas y en relojes antiguos.
Algoritmo para convertir números arábigos a números romanos
Proceso Romanos
Definir
r,i,n,numsRomanos,nT Como Entero;
Definir
romano Como Texto;
nT<-0;
romano<-"";
Escribir
"Número:";
Leer n;
r<-n%1000;
nT<-n/1000;
si(nT>=1
&& nT<=9)Entonces
romano<-romano+repetirCaracteres(nT,'M');
FinSi
n<-r;
r<-n%500;
nT<-n/500;
si(nT==1
&& r<400)Entonces
romano<-romano+"D";
Sino
si(nT>0
&& r>=400)Entonces
romano<-romano+"CM";
FinSi
FinSi
n<-r;
r<-n%100;
nT<-n/100;
si(nT>=1
&& nT<=3)Entonces
romano<-romano+repetirCaracteres(nT,'C');
Sino
si(nT==4
&& n>500)Entonces
romano<-romano+"CD";
FinSi
FinSi
n<-r;
r<-n%50;
nT<-n/50;
si(nT==1
&& r<=39 )Entonces
romano<-romano+"L";
Sino
si(n>80)Entonces
romano<-romano+"XC";
FinSi
FinSi
n<-r;
r<-n%10;
nT<-n/10;
si(nT>=1
&& nT<=3)Entonces
romano<-romano+repetirCaracteres(nT,'X');
FinSi
n<-r;
r<-n%5;
nT<-n/5;
si(nT==1
&& r<4)Entonces
romano<-romano+"V";
finSi
si(nT==1
&& n==9)Entonces
romano<-romano+"IX";
FinSi
si(r>=1
&& r<=3)Entonces
romano<-romano+repetirCaracteres(r,'I');
FinSi
Si(nT==0
&& r==4)Entonces
romano<-romano+'IV';
FinSi
n<-r;
Escribir
"Numero romano: ",romano;
FinProceso
SubProceso ca<-repetirCaracteres(nV,c)
Definir
i Como entero;
Definir
ca Como Texto;
ca<-"";
Para
i<-1 Hasta nV Con Paso 1 Hacer
ca<-ca+c;
FinPara
FinSubProceso
Este algoritmo muestra una forma de convertir números arábigos a números romanos solo probado con positivos.
Cualquier duda o comentario, también si hay errores favor de comentar espero les guste.
del 40 a 49 no funciona
ResponderEliminarLo revisaré en breve, Gracias !
Eliminar