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

    Esercizio invertire cifre

    Salve avete un idea di come poter implementare questo: Leggere un numero di 5 cifre e determinare il numero ke si ottiene invertendo le 5 cifre del numero di input (es 12348 --> 84321) USANDO solo le funzioni if/else nn gli array o quant'altro

  2. #2
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    ciao,

    ma con quale linguaggio?

    ricorda di indicare sempre il liguaggio nel titolo

  3. #3
    ah giusto scusatemi... cmq in C

  4. #4
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    in C non sono pratico, tuttavia penso che debba esistere qualcosa cosi come esiste per delphi

    AnsiReverseString(source);

    che sarebbe andata bene per te.

    ciao

  5. #5
    si solo che a me interessava un implementazione senza funzioni ma semplice semplice utilizzando gli if

  6. #6
    Salve avete un idea di come poter implementare questo: Leggere un numero di 5 cifre e determinare il numero ke si ottiene invertendo le 5 cifre del numero di input (es 12348 --> 84321) USANDO solo le funzioni if/else nn gli array o quant'altro
    Un forum non va utilizzato per farsi risolvere gli esercizi...
    "Se riesci a passare un pomeriggio assolutamente inutile in modo assolutamente inutile, hai imparato a vivere."

  7. #7
    Utente di HTML.it
    Registrato dal
    Dec 2002
    Messaggi
    1,326
    come fai a invertire una stringa im maniera 'semplice semplice' solo utilizando if????

    credo che servino altri parametri come ad esempio la lunghezza della stringa etc etc, e comunque credo che questa conversione puo avvenire solo tramite l'utilizzo di una funzione.

    chiaramente questo e' solo il mio parere! poi forse ( anzi sicuramente ) c'e' qualcosa che non conosco del C per cui riuscirai nel tuo intento...

    ciao

  8. #8
    Puoi risolvere anche senza usare if ed else (che non sono funzioni).
    Nel tuo caso dividi 12348 per 10000, scarti il resto ed ottieni 1;
    Sottrai a 12348, 1*10000 ottenendo 2348, che dividi per 1000 scarti il resto ed ottieni 2;
    Sottrai a 12348, 1*10000 e 2*1000 ottenendo 348, che dividi per 100 scarti il resto ed ottieni 3;
    Sottrai a 12348, 1*10000, 2*1000 e 3*100 ottenendo 48, che dividi per 10 scarti il resto ed ottieni 4;
    Sottrai a 12348, 1*10000, 2*1000, 3*100 e 4*10 ottenendo 8;

    il numero "girato" è quindi:
    8*10000 + 4*1000 + 3*100 + 2*10 +1;

  9. #9
    Tempo fà imbattei in questo problema, mi ricordo di aver risolto in questo modo dopo aver studiato l'operatore "Modulo" per ottenere il resto :
    Codice PHP:
    int ReversaDigit(int input)
    {
       
    //ToDo: effetuare un controllo per vedere se input è positivo!

       
    int buff//Il buffer che conterrà il numero invertito
       
    while(input 0)
       {
         
    buff += input 10//Otteniamo il resto della divisione per 10
         
    input input 10;
       }
      return 
    buff;


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.