Hola, al fin he entendido, lamento haberte molestado tanto
jajaja
tu me has dado este codigo:
#include <stdio.h>
int main()
{
int n,i,j;
printf("Introduce el numero por favor: ");
fflush (stdout);
scanf("%d",&n);
printf("%4d",1);//desjar una memoria reservada para introducir un numero de cuatro digitos y empezar a contar de 1//
for (i = 2;i <= n;i++){//empezar desde 2 hasta que i sea menor o igual que "n" (numero introducido) incrementar 1//
j = 2;
while (j <= i && i % j != 0)//mientras j sea 2 y sea menor que o igual a i que t no sera 2 por
//el incremento y que el resto de la divicion de entre "i" y "j" sea diferente a 0//
j++; //hacer incremento en j;
if (i == j){//si "i" es igual a "j" imprimir j.
printf("%4d",j);
fflush (stdout);
}
}
return 0;
}
el concepto de % (operador modulo) es que: al dividir dos numero enteros por ejemplo 25/4=5 y sobra 1, el resultado del que deseamos al hacer esto es ese 1 verdad?
bueno basando en tu codigo yo lo he transcrito para comprenderlo mejor y lo deje asi mira:
#include <iostream>
using namespace std;
int main()
{
int a,b,c;
cout<<"introduce un numero: "<<endl;
cin>>a;
for(b = 2; b<=a; b++){//aqui se iniciara a contar desde el 2 como en la La criba de Eratóstenes solo que podria ser
//asi for(b = 2; b <= 20; b++;(este seria el algritmo original lo vi ahi): http://es.wikipedia.org/wiki/Criba_de_Erat%C3%B3stenes
c = 2;
while(c<=b && b % c !=0 )//mientra c=2 y sea <= que c y el resto de la divicion de b/2 sea distinto de 0
c++;//hacer un incremento
if(b==c){//si b es igual a c entonces imprimir c.
cout<<" "<<c;//he dejado esto para que haya un espacio y que los numeros no esten todos pegados.
}
}
return 0;
}
basicamente al hacer b/c c=2 se dece que si se puede dividir entre 2 y el residuo no es cero es un numero primo verdad?
ha! por cierto
lo que esta entre parentesis puede cambiar, en que casos?
cuando se usa la función
tambien se usa?
El codigo funciona genial, digo... introduje el 100000 y pues en menos de 20 sec se ejecuto.
bueno dime en que hay fallas aunque dudo que haya pues solo he reescrito tu codigo jeje...
Saludo.