introduzco el 5, introduzco el 167457, y me dice que el 5 esta en la cifra.
Pero no funciona y no le encuentro el fallo, por un lado tengo un problema a la hora de contar las cifras y finalmente no funciona.
¿Me podríais echar una mano? Gracias de antemano.
Código
#include <stdio.h> #include <stdlib.h> #define TAM 20 int main() { int i,num,cifra,resto[TAM]; int semaforo=0; int potencia=10; int longitud=1; int copia_cifra; //introduzco un numero de 1 a 9 while(num>9||num<1) { } //introduzco una cifra mayor que 0 while(cifra<1) { } copia_cifra=cifra; //Aqui obtengo el numero de cifras que tiene mi numero while(copia_cifra/10>0) { copia_cifra=copia_cifra/10; longitud++; } //Divido la cifra por decena centenas etc y averiguo si coincide con el numero pedido for(i=0;i<longitud&&semaforo!=1;i++) { resto[i]=cifra%(potencia^(i+1)); return 0; if(resto[i]==num)semaforo=1; else if(resto[i]/(potencia^i)==num)semaforo=1; } return 0; }