Código
#include <stdio.h> int main() { int valor; int i; for ( i = 2; i < valor; i++ ) if (0 == (valor % i)) return 0; }
He probado el código y es un poco malo, si el número es primo directamente se sale del programa, y si el número no lo es, te lo repite por cada divisor que tenga, y me han pedido que haga que solo se imprima un mensaje indicando si el número es primo o no al final del bucle. Para esto, nos dicen que utilicemos una variable de control, cuando encuentre un divisor se active dicha variable. Y al final del bucle se mostrará el mensaje adecuado segun el valor de la variable de control.
He pensado que se tendría que usar la variable de control flag, pero no sé como implementarla muy bien, ¿alguien podría aclararmelo?, yo lo he intentado poniendo esto:
Código
#include <stdio.h> int main() { int valor; int i; int flag; flag=0; for ( i = 2; i < valor; i++ ) if (0 == (valor % i)) {flag=1; } else flag=0; return 0; }
Pero aun así, al probarlo me sigue dando error, ¿alguna solución?
Saludos