Hola, cuando ejecuto el programa este no realiza absolutamente ninguna accion, cuando ingreso el valor para "n" no ejecuta nada, alguien me podria ayudar a encontrar el error?? no lo veo, saludos
#include <stdio.h>
#include <stdbool.h>
#include <stdlib.h>
int main(void){
int i = 0;
int j = 0;
int aux = 0;
int n = 0;
_Bool Prime = true;
scanf("%d",&n);
while(1){
for(i = 0;i < n;i++){
for(j = 2;j < 9;j++){
aux = i%j;
if(i == 2){
break;
}else if(i == j){
continue;
}else if(aux == 0){
Prime = false;
break;
}
}
if(Prime){
printf("\t\t\t%d\n\n",i);
}
}
}
system("pause");
return 0;
}
No entiendo tu planteamiento.
tampoco entiendo lo que intentas hacer con el código... solo te digo
cuando entra a los 2 for por primera vez, es i = 0, j = 2, por consecuencia aux = i%j -> aux = 0, así que Prime se vuelve false... y así queda permanentemente, por lo tanto no se imprime nada
en realidad seria en el segundo bucle for :
for(j=0;j<10;j++)
Lo que quiero hacer es que imprima una serie de numeros de numeros primos hasta "n", a cada numero "i" analiza el modulo de su division en "j" digamos si es primo el modulo tendria que dar siempre distinto de 0 cuando lo divida entre 2 & 9,mientras que no sea igual el dividendo y el divisor, es asi :huh: o tengo un error de concepto??
No me di cuenta que la variable Prime quedaba con el valor False si es que se cumplia esa condicion jaja, no podria hacer asi??
else{Prime = true}
esto iria al final de los else if anidados
tambien sacaria la estructura while, no se para que la puse. :silbar: