10.08.06, 13:17
|
#14 (permalink)
|
Registriert seit: 20.11.05 Likes: 0 | Eine PHP funktion. Kann wahlweise verkürzen oder nicht. PHP PHP-Code: <?php
echo "1984 - ".Roemisch(1984,False)." - ".Roemisch(1984)."<br>"; echo "2006 - ".Roemisch(2006,False)." - ".Roemisch(2006)."<br>"; echo "5000 - ".Roemisch(5000,False)." - ".Roemisch(5000)."<br>"; Function Roemisch($Wert,$Kurz=True) { $Zahlen[0]=array(1 ,"I" ,1); $Zahlen[1]=array(5 ,"V" ,5); $Zahlen[2]=array(10 ,"X" ,1); $Zahlen[3]=array(50 ,"L" ,5); $Zahlen[4]=array(100 ,"C" ,1); $Zahlen[5]=array(500 ,"D" ,5); $Zahlen[6]=array(1000 ,"M" ,1); $Zahlen[7]=array(5000 ,"A" ,5); //Unverkürzt berechnen For($Nummer=count($Zahlen)-1;$Nummer>-1;$Nummer--) { While($Wert>=$Zahlen[$Nummer][0]) { $Wert=$Wert-$Zahlen[$Nummer][0]; $Ausgabe=$Ausgabe.$Zahlen[$Nummer][1]; } } //Kürzen IF($Kurz==True) { For($Nummer=count($Zahlen)-2;$Nummer>-1;$Nummer--) { // "9" berücksichtigen IF($Zahlen[$Nummer][2]==5) { $Ausgabe=ereg_replace($Zahlen[$Nummer][1].$Zahlen[$Nummer-1][1].$Zahlen[$Nummer-1][1].$Zahlen[$Nummer-1][1].$Zahlen[$Nummer-1][1],$Zahlen[$Nummer-1][1].$Zahlen[$Nummer+1][1],$Ausgabe); } // "4" berücksichtigen $Ausgabe=ereg_replace($Zahlen[$Nummer][1].$Zahlen[$Nummer][1].$Zahlen[$Nummer][1].$Zahlen[$Nummer][1],$Zahlen[$Nummer][1].$Zahlen[$Nummer+1][1],$Ausgabe); } } return $Ausgabe; }
?> |
| |