Invertire sequenza di numeri

di il
1 risposte

Invertire sequenza di numeri

Salve, ecco il mio codice:
/*
Esercizio 1.05
Scrivere un numero a cifre invertite. Ricordati che il nostro sistema numerico è decimale.
Riferimenti .http://it.wikipedia.org/wiki/Sistema_numerico_decimale 
Esempio: 15---> verrà stampato 51


*/

 #include <iostream>
#include <cmath>
#include <cstdlib>
#include <time.h>
#include <conio.h>
#include <windows.h>
#include <stdio.h>
#include <math.h>

using namespace std;

 int n;

int main ()
 {
    
    do{
      cin>>n; 
      if(n<10)
      cout<<"L'inverso di "<<n<<"? Dimmelo tu perche' io non lo so! \n";
      
      else if(n==10)
      cout<<"L'inverso di "<<n<<" e' 01\n";
      
      else if((n>10)&&(n<=99))
      cout<<"L'inverso di "<<n<<" e' "<<n%10<<n/10<<endl;
      
      else if((n>99)&&(n<=999))
      cout<<"L'inverso di "<<n<<" e' "<<(((n%100)/10)%10)<<(n%100)/10<<n/100<<endl;
      
      else if((n>999)&&(n<=9999))
      cout<<"L'inverso di "<<n<<" e' "<<(((n%1000)/100)%10)%10<<((n%1000)/100)%10<<(n%1000)/100<<n/1000<<endl;
      
      
      
                }while(n<=9999);
          
      system("pause");
             return 0;
             
}

In pratica, se scrivo
12 --> 21;
123 --> 321;
1234 --> 4321;

UN aiuto? Grazie... il programma da risultati solo con cifre decimali cacchio

1 Risposte

  • Re: Invertire sequenza di numeri

    Non fare tutte quelle if ... cerca di impostare un algoritmo che vada bene per qualsiasi intero.

    Con un ciclo e delle divisioni/resti per 10 dovresti risolvere.
Devi accedere o registrarti per scrivere nel forum
1 risposte