Hola buenas estoy empezando a programar y llevo un día entero resolviendo un problema que seguro que se puede hacer en 5 minutos, el problema es este: https://gyazo.com/6542c560c942442f08009202a0d3cfb6 (https://gyazo.com/6542c560c942442f08009202a0d3cfb6)
Mi programa es este pero falla cuando hay un cero en el numero.
int cerificar(int n){
int i=n%10;
int potencia=1;
while(n!=0){
n=n/10;
potencia=potencia*100;
i=i+n%10*potencia;
}
return i;
}
La mejor opción diría yo, es comprobar si la cifra es 0 en el comienzo de cada ciclo del bucle. Si es 0, continuas con el bucle con continue; (o si no quieres usar ese tipo de sentencias, con condiciones).
Ya está ivan gracias, como has dicho había que poner alguna condición para cuando el modulo de n era 0 porque yo lo del continue no lo he visto todavía.
int cerificar(int n){
int i=n%10;
int potencias = 1;
n=n/10;
while(n!=0){
if(n%10>0){
potencias=potencias*100;
i=i+n%10*potencias;
}
n=n/10;
}
return i;
}