Ver Mensaje Individual
  #4 (permalink)  
Antiguo 20/08/2010, 20:46
Avatar de mortiprogramador
mortiprogramador
Colaborador
 
Fecha de Ingreso: septiembre-2009
Ubicación: mortuoria
Mensajes: 3.805
Antigüedad: 15 años, 2 meses
Puntos: 214
Respuesta: Códigos - Reto Romanos

carlos_belisario

Código PHP:
Ver original
  1. <?php
  2. function romanNumber($number){
  3.     $romano=array("I","V","X","L","C","D","M","<span style='text-decoration: overline;'>V</span>","<span style='text-decoration: overline;'>X</span>","<span style='text-decoration: overline;'>L</span>","<span style='text-decoration: overline;'>C</span>","<span style='text-decoration: overline;'>D</span>","<span style='text-decoration: overline;'>M</span>");    
  4.     $nume=str_split($number);
  5.     $g=0;            
  6.     for($x=count($nume)-1;$x>=0;$x--){
  7.         $num[$g]=$nume[$x];
  8.         $g++;
  9.     }    
  10.     for($i=0;$i<count($num);$i++){                                
  11.         if($num[$i]>0 && $num[$i]<4){                
  12.             $id=$i+$i;                                                                    
  13.         for($k=0;$k<$num[$i];$k++)                            
  14.             $romanNumber=$romano[$id].$romanNumber;                            
  15.     }
  16.     elseif($num[$i]>3 && $num[$i]<9){
  17.         $id=$i+1;                
  18.         if ($num[$i]<5){
  19.             $id=$id+$i;                                        
  20.             $romanNumber=$romano[$id-1].$romano[$id].$romanNumber;
  21.         }    
  22.         else{                        
  23.             $id=$id+$i;
  24.             $principio=$romano[$id];            
  25.             $numero=$num[$i]-5;                
  26.             for($l=1;$l<=$numero;$l++)                    
  27.                 $principio.=$romano[$id-1];                                
  28.             $romanNumber=$principio.$romanNumber;                
  29.         }                
  30.     }
  31.     elseif($num[$i]==9 || $num[$i]==0){
  32.         $id=($i+1)*2;        
  33.         if($num[$i]==9)                
  34.             $romanNumber=$romano[$id-2].$romano[$id].$romanNumber;}
  35.         else                        
  36.             continue;                    
  37.     }
  38.     return $romanNumber;
  39. }?>
__________________
"Si consigues ser algo más que un hombre, si te entregas a un ideal, si nadie puede detenerte, te conviertes en algo muy diferente."
Visita piggypon.com