duda con ejercicio de clase
Publicado por dai1 (14 intervenciones) el 29/10/2007 12:28:16
Hola q tal?estaba aciendo un ejercicio de clase que dice
Programa en el que introducimos un numero N y nos devuelve los N primeros números primos
y el codigo q tengo es este
#include<stdio.h>
void main()
{
int n,x,z,cont,esprimo;
double div=0;
char resp;
printf("*******************************************************************************************\t\n");
printf("Programa en el que introducimos un numero N y nos devuelve los N primeros números primos\n");
printf("*******************************************************************************************\t\n");
do
{
printf("\n");
printf("Introduce un numero:\n");
fflush(stdin);
scanf("%d",&n);
while(n<0)
{
printf("Ese dato es erroneo\n");
printf("Introduce un numero:\n");
fflush(stdin);
scanf("%d",&n);
}
printf("\n");
printf("Los primeros numeros primos son\n\n");
cont=0;
while(cont<=n)
{
for(x=1;x<=n;x++)
{
esprimo=1;
for(z=n;z>0;z--)
{
div=z%x;
if(div==0)
esprimo=0;
}
if(esprimo==1)
cont++;
printf("%d\n",x);
}
}
printf("\n");
printf("Quieres introducir otro numero:\n");
fflush(stdin);
scanf("%c",&resp);
}
while(resp=='s' || resp=='S');
}
Entonces se que tengo que ir hasta n para sacar todos los primos pero no se como continuar con esos dos for,si alguien me pudiera ayudar...
gracias por adelantado
Programa en el que introducimos un numero N y nos devuelve los N primeros números primos
y el codigo q tengo es este
#include<stdio.h>
void main()
{
int n,x,z,cont,esprimo;
double div=0;
char resp;
printf("*******************************************************************************************\t\n");
printf("Programa en el que introducimos un numero N y nos devuelve los N primeros números primos\n");
printf("*******************************************************************************************\t\n");
do
{
printf("\n");
printf("Introduce un numero:\n");
fflush(stdin);
scanf("%d",&n);
while(n<0)
{
printf("Ese dato es erroneo\n");
printf("Introduce un numero:\n");
fflush(stdin);
scanf("%d",&n);
}
printf("\n");
printf("Los primeros numeros primos son\n\n");
cont=0;
while(cont<=n)
{
for(x=1;x<=n;x++)
{
esprimo=1;
for(z=n;z>0;z--)
{
div=z%x;
if(div==0)
esprimo=0;
}
if(esprimo==1)
cont++;
printf("%d\n",x);
}
}
printf("\n");
printf("Quieres introducir otro numero:\n");
fflush(stdin);
scanf("%c",&resp);
}
while(resp=='s' || resp=='S');
}
Entonces se que tengo que ir hasta n para sacar todos los primos pero no se como continuar con esos dos for,si alguien me pudiera ayudar...
gracias por adelantado
Valora esta pregunta


0