Título: Programa en C Publicado por: joseh94 en 13 Octubre 2014, 13:05 pm Hola a todos!
soy estudiante de ingeniería y estoy resolviendo un ejercicio de programación en C, que trata de obtener todos los divisores de un número dado. El código que he hecho es el siguiente: #include <stdio.h> int main(void) { int a,i; printf("Introduzca el numero: "); scanf("%d",&a); for(i=a;i==2;i--) { if(a%i==0) printf("%d",i); } return 0; } Pero cuando lo ejecuto no me muestra nada en pantalla. Lo he echo así porque es lo básico que me están enseñando aún, y he probado también a ir guardando todos los divisores que obtenga en un vector y luego mostrar en pantalla el vector, pero nada. Alguien me podría ayudar? Gracias! Título: Re: Programa en C Publicado por: DeMoNcRaZy en 13 Octubre 2014, 13:16 pm Prueba así:
Código
Título: Re: Programa en C Publicado por: joseh94 en 13 Octubre 2014, 13:20 pm Prueba así: Código
Es que el comando cin.get() no nos lo han enseñado, no hay otra forma más simple? Título: Re: Programa en C Publicado por: leosansan en 13 Octubre 2014, 13:22 pm Hola a todos! soy estudiante de ingeniería y estoy resolviendo un ejercicio de programación en C, que trata de obtener todos los divisores de un número dado. El código que he hecho es el siguiente: #include <stdio.h> i................................................ for(i=a;i==2;i--) { if(a%i==0) printf("%d",i); } ...................................... } Pero cuando lo ejecuto no me muestra nada en pantalla. Lo he echo así porque es lo básico que me están enseñando aún, y he probado también a ir guardando todos los divisores que obtenga en un vector y luego mostrar en pantalla el vector, pero nada. Alguien me podría ayudar? Gracias! El error lo tienes en el for ">=" en lugar de "==". Y deja algún espacio en el printf para que no salgan los divisores pegados. Por cierto, puedes prescindir del uso de las llaves cuando sólo hay una línea: Código
¡¡¡¡ Saluditos! ..... !!!! (http://st.forocoches.com/foro/images/smilies/aaaaa.gif) Título: Re: Programa en C Publicado por: DeMoNcRaZy en 13 Octubre 2014, 13:23 pm cin.get(); es para que no se cierre el programa (la ventana).
Lo que realmente ha echo que se muestre tu programa es cuándo has añadido la librería: <iostream> Puedes usar la librería <stdlib.h> y sustituir cin.get(); por system("PAUSE"); Título: Re: Programa en C Publicado por: leosansan en 13 Octubre 2014, 13:31 pm Insisto, con perdón, en que el error que hace que no muestre ningún resultado es:
Citar for( i = a ; i == 2 ; i-- ) que debería ser: Citar for( i = a ; i >= 2 ; i-- ) ¡¡¡¡ Saluditos! ..... !!!! (http://st.forocoches.com/foro/images/smilies/aaaaa.gif) |