Algoritmo para calcular numeros primos en C?

La idea es ingresar un numero por teclado y que el programa muestre cuantos numeros primos hay hasta ese numero.

1 respuesta

Calificación
  • Anónimo
    hace 1 década
    Respuesta preferida

    Este programa funciona pero no es muy eficiente, lo que hace es dividir a cada numero por TODOS sus antecesores sólo para averiguar si es divisible por alguno de ellos.

    #include<stdio.h>

    #include<stdlib.h>

    int main(void){

        unsigned int n, i ,j, b;

        printf("n = ");

        scanf("%d", & n);

        for (i = 1; i < n; i++){

            j = 1;

            do

                j++;

            while (j < i && (i % j != 0));

            if (i == j)

                printf("%d\n", i);

        }

        system("pause>>NUL");

    }

    Para agilizar este algoritmo es necesario notar que un número es primo si y sólo si no es divisible por todos los números primos menores que su raíz cuadrada.

¿Aún tienes preguntas? Pregunta ahora para obtener respuestas.