Visualizzazione dei risultati da 1 a 5 su 5
  1. #1

    ordinare numeri romani con mysql

    ciao a tutti, ho un problema..
    non so come si fa ad ordinare in ordine crescente o decrescente una serie di numeri a carattere romano.. del tipo: III, IV, V, ...

    help please

  2. #2
    perché non li converti in numeri interi, così da ordinarli facilmente, e poi li riconverti in numeri romani all'interno degli script?

  3. #3
    ok, ci ho pensato nel frattempo con questa funzione
    Codice PHP:
    function numero_romano($numero)
    {
    while (
    $numero >= 1000)
        {
            echo 
    "M";
            
    $numero $numero -1000;
        }
    while (
    $numero >= 900)
        {
            echo 
    "CM";
            
    $numero $numero -900;
        }
    while (
    $numero >= 500)
        {
            echo 
    "D";
            
    $numero $numero -500;
        }
    while (
    $numero >= 400)
        {
            echo 
    "CD";
            
    $numero $numero -400;
        }
    while (
    $numero >= 100)
        {
            echo 
    "C";
            
    $numero $numero -100;
        }
    while (
    $numero >= 90)
        {
        echo 
    "XC";
        
    $numero $numero -90;
        }
    while (
    $numero >= 50)
        {
            echo 
    "L";
            
    $numero $numero -50;
        }
    while (
    $numero >= 40)
        {
            echo 
    "XL";
            
    $numero $numero -40;
        }
    while (
    $numero >= 10)
        {
            echo 
    "X";
            
    $numero $numero -10;
        }
    while (
    $numero >= 9)
        {
            echo 
    "IX";
            
    $numero $numero -9;
        }
    while (
    $numero >= 5)
        {
            echo 
    "V";
            
    $numero $numero -5;
        }
    while (
    $numero >= 4)
        {
            echo 
    "IV";
            
    $numero $numero -4;
        }
    while (
    $numero >= 1)
        {
            echo 
    "I";
            
    $numero $numero -1;
        }
        return 
    $numero;
    }


    $numero 2995;
    echo 
    numero_romano($numero); 
    solo che.. mi avanza uno zero alla fine..
    MMCMXCV0

    puoi aiutarmi a sistemarla?

    grazie

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    Soluzione 1:
    Codice PHP:
    function numero_romano($numero

    $romano '';
    while (
    $numero >= 1000
        { 
            
    $romano .= "M"
            
    $numero $numero -1000
        } 
    while (
    $numero >= 900
        { 
            
    $romano .= "CM"
            
    $numero $numero -900
        } 
    while (
    $numero >= 500
        { 
            
    $romano .= "D"
            
    $numero $numero -500
        } 
    while (
    $numero >= 400
        { 
            
    $romano .= "CD"
            
    $numero $numero -400
        } 
    while (
    $numero >= 100
        { 
            
    $romano .= "C"
            
    $numero $numero -100
        } 
    while (
    $numero >= 90
        { 
        
    $romano .= "XC"
        
    $numero $numero -90
        } 
    while (
    $numero >= 50
        { 
            
    $romano .= "L"
            
    $numero $numero -50
        } 
    while (
    $numero >= 40
        { 
            
    $romano .= "XL"
            
    $numero $numero -40
        } 
    while (
    $numero >= 10
        { 
            
    $romano .= "X"
            
    $numero $numero -10
        } 
    while (
    $numero >= 9
        { 
            
    $romano .= "IX"
            
    $numero $numero -9
        } 
    while (
    $numero >= 5
        { 
            
    $romano .= "V"
            
    $numero $numero -5
        } 
    while (
    $numero >= 4
        { 
            
    $romano .= "IV"
            
    $numero $numero -4
        } 
    while (
    $numero >= 1
        { 
            
    $romano .= "I"
            
    $numero $numero -1
        } 
        return 
    $romano

    Soluzione2:
    togli il comando "return $numero" e chiama la funzione senza echo()

    P.S. non ho controllato che la procedura sia corretta... è solo una risposta all'ultima domanda...

  5. #5
    eiyen ho provato con la prima soluzione e funziona benissimo!
    grazie mille

    cià

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.