Académique Documents
Professionnel Documents
Culture Documents
La criba de Eratstenes es un algoritmo que permite hallar todos los nmeros primos
menores que un nmero natural dado n. Se llena una tabla con todos los nmeros
naturales comprendidos entre 2 y n siendo n un nmero ledo por teclado, atendiendo
los siguientes limitantes 1 < n <= 10, y se van convirtiendo en cero nmeros que no
son primos de la siguiente manera:
Comenzando por el 2, se convierten en cero todos sus mltiplos; comenzando de nuevo,
cuando se encuentra un nmero entero que no ha sido convertido en cero, ese nmero es
declarado primo, y se procede a convertir en cero todos sus mltiplos, as
sucesivamente. El proceso termina cuando el cuadrado del mayor nmero confirmado
como primo es mayor que n.
Proceso de criba
Determinemos, mediante el siguiente ejemplo, el proceso para determinar la lista de los
nmeros primos menores de 20.
1) Primer paso: se llena un arreglo con los nmeros naturales comprendidos entre
2 y 20
2
10
11
12
13
14
15
16
17
18
19
20
10 11 12 13 14 15 16 17 18 19 20
3) Tercer paso: Se convierten en cero todos los mltiplos del nmero que se acaba
de indicar como primo.
11 0
13 0
15 0
17 0
19 0
11 0
13 0
17 0
19 0
Como resultado se obtienen e imprimen los nmeros primos comprendidos entre 2 y 20,
y estos son:
2, 3, 5, 7, 11, 13, 17, 19.
Se pide:
Elaborar un programa en lenguaje C que encuentre e imprima todos los nmeros primos
comprendidos entre 2 y n, utilizando el algoritmo de la criba de Eratstenes, atendiendo
las siguientes indicaciones:
a) Utilizar programacin orientada a objetos, crear una clase denominada Criba,
con un campo arreglo.
b) Utilizar un arreglo de enteros de mximo 100 elementos, por lo que deber
validar que el usuario no introduzca un nmero mayor que la cantidad mxima.
c) Escribir una funcin int divisor(int, int), que reciba dos nmeros
enteros y devuelva un 1 (uno) si el primer nmero es divisor del segundo o un 0
(cero) si no lo es, esta funcin la utilizar en el programa para encontrar los
divisores del nmero evaluado.
d) Se evaluar que el programa siga el algoritmo de la criba de Eratstenes
planteado en este documento.
e) Almacenar los resultados en un archivo de texto
Entregar:
1.
2.
3.
4.
5.