• In diretta da GamesVillage.it
    • News
    • -
    • In Evidenza
    • -
    • Recensioni
    • -
    • RetroGaming
    • -
    • Anteprime
    • -
    • Video
    • -
    • Cinema

Pag 1 di 2 12 UltimoUltimo
Visualizzazione risultati da 1 a 15 di 17

Discussione: piccolo aiuto

Cambio titolo
  1. #1
    Utente L'avatar di Nelvien
    Registrato il
    07-04
    Località
    Venezia
    Messaggi
    7.460

    piccolo aiuto

    allora l'esercizio sarebbe quello di creare una funzione che , inserito in input un numero naturale N dia in output la corrispondente rappresentazione romana del numero stesso.chi saprebbe aiutarmi?Il linguaggio che dovrei usare è semi-sconosciuto però assomiglia al basic.



  2. #2
    Utente Tostapane L'avatar di WarriorXP
    Registrato il
    10-02
    Località
    MI C.le - LE
    Messaggi
    23.429
    "Assomiglia al basic"?!?

  3. #3
    Utente L'avatar di Rocket
    Registrato il
    03-04
    Località
    Termini Imerese (Palermo)
    Messaggi
    5.441
    Citazione WarriorXP
    "Assomiglia al basic"?!?
    [OT]Spam.....gorman ha creato la stessa in versione gialla [/OT]
    Scusate per l'OT

  4. #4
    Utente Tostapane L'avatar di WarriorXP
    Registrato il
    10-02
    Località
    MI C.le - LE
    Messaggi
    23.429
    veramente questa esiste da parecchio prima di quella di gorman, e poi quella di gorman assomiglia più a questa altrettanto antecedente.

  5. #5
    Utente L'avatar di Nelvien
    Registrato il
    07-04
    Località
    Venezia
    Messaggi
    7.460
    Citazione WarriorXP
    "Assomiglia al basic"?!?
    diciamo che è un linguaggio particolare abbastanza semplice...le vuoi provare a vedere scaricalo qui



  6. #6
    Ex ***** VIPz Estathé L'avatar di nicjedi
    Registrato il
    12-02
    Località
    non vivo
    Messaggi
    16.148
    Oddio..quel linguaggio non lo conosco..posso provare ad aiutarti a farlo in C...non è difficile...ma poi devi essere capacce di "tradurlo"

    Ciao

    Nicola
    "La violenza è l'ultimo rifugio degli incapaci"
    "Non lasciare mai che la morale ti impedisca di fare la cosa giusta"
    "La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta."
    "fare molte cose alla volta significa non farne bene nessuna"


  7. #7
    Utente L'avatar di Nelvien
    Registrato il
    07-04
    Località
    Venezia
    Messaggi
    7.460
    Citazione nicjedi
    Oddio..quel linguaggio non lo conosco..posso provare ad aiutarti a farlo in C...non è difficile...ma poi devi essere capacce di "tradurlo"

    Ciao

    Nicola
    ok grazie



  8. #8
    Oh my iPod! L'avatar di er patata
    Registrato il
    11-02
    Località
    Bari Downtown
    Messaggi
    13.136
    in python non sarebbe difficile

    A volte credo di essere fin troppo nerd. Naa, never too much.
    Vuoi personalizzare l'aspetto del forum di GamesRadar? Clicca qui!
    Consortium.ru 2004 3D Motion Demo, shocking graphics. (QuickTime 60MB)

    Vuoi guadagnare soldi velocemente? Clicca qui!

  9. #9
    Ex ***** VIPz Estathé L'avatar di nicjedi
    Registrato il
    12-02
    Località
    non vivo
    Messaggi
    16.148
    Citazione Nelvien
    ok grazie
    ops..mi son dimenicato
    aspe..scrivo il codice e posto qua
    assumo che il valore del numero sia nella variabile "numero"

    Codice:
    String romano;
     int n;
     
     romano = "";
     
     n = floor(numero/1000);
     for (i=0, i<n, i++)
     	romano += "M";
     n = floor(numero/500);
     for (i=0, i<n, i++)
     	romano += "D";
     n = floor(numero/100);
     for (i=0, i<n, i++)
     	romano += "C";
     n = floor(numero/50);
     for (i=0, i<n, i++)
     	romano += "L";
     n = floor(numero/10);
     for (i=0, i<n, i++)
     	romano += "X";
     n = floor(numero/5);
     for (i=0, i<n, i++)
     	romano += "V";
     n = floor(numero/1);
     for (i=0, i<n, i++)
     	romano += "I";
     println("il numero "+numerp+" in numero romani è "+ romano);
    Non è proprio il massimo...ma così su due piedi...

    Ciao

    Nicola
    Ultima modifica di nicjedi; 5-08-2004 alle 00:53:52
    "La violenza è l'ultimo rifugio degli incapaci"
    "Non lasciare mai che la morale ti impedisca di fare la cosa giusta"
    "La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta."
    "fare molte cose alla volta significa non farne bene nessuna"


  10. #10
    Utente
    Registrato il
    07-04
    Messaggi
    38
    #include<stdio.h>
    #include<stdlib.h>
    #include<string.h>
    #include<math.h>

    char* regole ( int num ) {
    switch(num) {

    case 1: return "I"; break;
    case 2: return "II"; break;
    case 3: return "III"; break;
    case 4: return "IV"; break;
    case 5: return "V"; break;
    case 6: return "VI"; break;
    case 7: return "VII"; break;
    case 8: return "VIII"; break;
    case 9: return "IX"; break;
    case 10: return "X"; break;
    case 20: return "XX"; break;
    case 30: return "XXX"; break;
    case 40: return "XL"; break;
    case 50: return "L"; break;
    case 60: return "LX"; break;
    case 70: return "LXX"; break;
    case 80: return "LXXX"; break;
    case 90: return "XC"; break;
    case 100: return "C"; break;
    case 200: return "CC"; break;
    case 300: return "CCC"; break;
    case 400: return "CD"; break;
    case 500: return "D"; break;
    case 600: return "DC"; break;
    case 700: return "DCC"; break;
    case 800: return "DCCC"; break;
    case 900: return "CM"; break;
    case 1000: return "M"; break;
    case 2000: return "MM"; break;
    case 3000: return "MMM"; break;
    case 4000: return "MV_"; break;
    case 5000: return "V_"; break;
    case 6000: return "V_M"; break;
    case 7000: return "V_MM"; break;
    case 8000: return "V_MMM"; break;
    case 9000: return "MX_"; break;
    case 10000: return "X_"; break;
    case 20000: return "X_X_"; break;
    case 30000: return "X_X_X_"; break;
    case 40000: return "X_L_"; break;
    case 50000: return "L_"; break;
    case 60000: return "L_X_"; break;
    case 70000: return "L_X_X_"; break;
    case 80000: return "L_X_X_X_"; break;
    case 90000: return "X_C_"; break;
    case 100000: return "C_";
    }

    return "";

    }




    int get_cifre( int numero ) {

    int cifre=0;

    while( numero!=0 ) {
    cifre++;
    numero/=10;
    }

    return cifre;

    }



    char* traduci (int num ) {

    int cifre,temp;
    char *romano=(char*)calloc(40,sizeof(char));
    if(romano==NULL)
    return NULL;
    strcpy(romano,"");
    if( num<=0)
    return NULL;
    while( num!=0 ) {
    cifre=get_cifre(num);
    temp=(int)pow(10,cifre-1);
    temp*=(num/temp);
    strcat(romano,regole(temp));
    num%=temp;
    }

    return romano;
    }


    int main( void ) {

    int num;
    char *c;
    printf("Inserisci il numero:\n");
    scanf("%d",&num);
    c=traduci(num);
    if(c!=NULL)
    printf("In romano=%s\n",c);
    else
    printf("Traduzione non riuscita\n");
    system("PAUSE");
    return 0;
    }



    Questo è quello che mi viene in mente al momento... il programma funziona
    con numeri inferiori a 200000 ( può essere facilmente esteso comunque per
    accettare numeri più grandi ).

    P.S. Credo che il codice di nicjedi sia sbagliato : per esempio con numero=4000 il programma stamperebbe MMMM inizialmente ; mi sembra che
    non sia possibile avere 4 simboli uguali di seguito ( se non mi ricordo male...)

  11. #11
    Utente L'avatar di Phoenix
    Registrato il
    10-02
    Località
    Midwich Street
    Messaggi
    6.699
    Citazione nicjedi
    ops..mi son dimenicato
    aspe..scrivo il codice e posto qua
    assumo che il valore del numero sia nella variabile "numero"


    Non è proprio il massimo...ma così su due piedi...

    Ciao

    Nicola
    Anch'io ieri sera l'avevo fatto così... però mi sono esentato dal postarlo per una questione di dignità mi consola che anche tu che sei un genio l'hai pensata allo stesso modo però così ti stampa 4=IIII anzichè IV e così via... che non è correttissimo anche se se si potrebbere fare... mi sa che per implementarlo nel modo corretto non ci si può esimere da una sfilza di define, un po' come ha fatto apieraz.


    He who is not bold enough to be stared at from across the abyss
    is not bold enough to stare into it himself.

  12. #12
    Utente
    Registrato il
    07-04
    Messaggi
    38
    una sfilza di define, un po' come ha fatto apieraz
    define ??

  13. #13
    Ex ***** VIPz Estathé L'avatar di nicjedi
    Registrato il
    12-02
    Località
    non vivo
    Messaggi
    16.148
    Citazione Phoenix
    Anch'io ieri sera l'avevo fatto così... però mi sono esentato dal postarlo per una questione di dignità mi consola che anche tu che sei un genio l'hai pensata allo stesso modo però così ti stampa 4=IIII anzichè IV e così via... che non è correttissimo anche se se si potrebbere fare... mi sa che per implementarlo nel modo corretto non ci si può esimere da una sfilza di define, un po' come ha fatto apieraz.
    Uhm...è vero..azz...hai ragione ...uhm..la scusa che era tardi e avevo passato tutta la sera a lavorare su siti può andare bene?

    Ciao

    Nicola
    "La violenza è l'ultimo rifugio degli incapaci"
    "Non lasciare mai che la morale ti impedisca di fare la cosa giusta"
    "La disumanità del computer sta nel fatto che, una volta programmato e messo in funzione, si comporta in maniera perfettamente onesta."
    "fare molte cose alla volta significa non farne bene nessuna"


  14. #14
    Utente L'avatar di Phoenix
    Registrato il
    10-02
    Località
    Midwich Street
    Messaggi
    6.699
    Citazione apieraz
    define ??
    Io avevo pensato di farlo definendo una miriade di costanti come tu hai fatto una miriade di case nello switch, però poi era troppo lungo e ho preferito giocare a PES3

    Nic se almeno avessi detto che ti eri accorto dell'imperfezione si poteva fare... ma così sei proprio imperdonabile


    He who is not bold enough to be stared at from across the abyss
    is not bold enough to stare into it himself.

  15. #15
    Utente L'avatar di Nelvien
    Registrato il
    07-04
    Località
    Venezia
    Messaggi
    7.460
    quindi verrebbe fuori una cosa lunga?Mi sà che il mio prof di info lo mando a fare il cul.o



Pag 1 di 2 12 UltimoUltimo

Regole di Scrittura

  • Tu non puoi inviare nuove discussioni
  • Tu non puoi inviare risposte
  • Tu non puoi inviare allegati
  • Tu non puoi modificare i tuoi messaggi
  •