2
23
Apr

Programa en C++ que devuelve las cifras de un número entero en orden inverso

Esto es un programa escrito en C++, programado en el shell. Lo que hace es bien sencillo, el usuario introduce un numero entero como por ejemplo “123456” y el programa re-ordena las cifras poniéndolas en el orden inverso; es decir, en el caso anterior, devolvería el valor de “654321“:

El código es el que sigue:

#include
using namespace std;

int inv(int n);
int pou(int b,int e);

//main
int main(void){
int n;
cin>>n;
cout<<"Numero invertido de orden:"< system("PAUSE");
}

//funcion auxiliar para elevar enteros.
int pou(int b,int e){
int i,r=1;
for(i=0;i r*=b;
}
return(r);
}
//funcio principal de reordenacion
int inv(int n){
int s=n,c=0,i,t=0,x;
while(s>0){
c++;
s/=10;
}
for(i=0;i x=n/(pou(10,i))%10;
t=t*10+x;
}
return(t);
}

Nota: Vas a necesitar de un compilador C++ para compilarlo.

Tags: , , , ,

2 Awesome Responses.

  • eduardo

    hola est muy bien el programa pero tengo una gran duda
    que funcion hace la funcion pou(10,i) en el programa me harian el gran favor lo necesito saber y tambien namespace.
    por su comrencion grasias.

  • La función pou(10,i), lo que hace es elevar un numero a cierto exponente, en este caso eleva 10 a [i], donde [i] puede ser un numero cualquiera. Es decir, que multiplica 10×10 [i]veces.

    namespace std; es para indicarle al programa compilador que sintaxis/nomenclatura utilizas.

    Saludos.

Leave a Reply