clase # 2 detección de números primos
DESCRIPTION
ClaseTRANSCRIPT
![Page 1: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/1.jpg)
DETECCION DE NUMEROS PRIMOS
Obed David GuevaraJosé Guadalupe GonzalesÁngel Javier Esquivel AcevedoJesús Alejandro Beltrán
![Page 2: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/2.jpg)
NUMERO PRIMO• Un número primo es un número natural que
tiene exactamente dos divisores naturales distintos: él mismo y el 1.
• Los números primos del conjunto de los naturales menores que cien son los siguientes: 2, 3, 5, 7, 11, 13, 17, 19, 23, 29, 31, 37, 41, 43, 47, 53, 59, 61, 67, 71, 73, 79, 83, 89 y 97.
![Page 3: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/3.jpg)
NUMEROS PRIMOSEuclides demostró alrededor
del año 300 a. C. que existen infinitos números primos. Se contraponen así a los números compuestos, que son aquellos que tienen algún divisor natural aparte de él mismo y del 1. El número 1, por convenio, no se considera ni primo ni compuesto.
![Page 4: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/4.jpg)
La propiedad de ser primo se denomina primalidad, y el término primo se puede emplear como adjetivo. A veces se habla de número primo impar para referirse a cualquier número primo mayor que 2, ya que éste es el único número primo par.
![Page 5: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/5.jpg)
El teorema fundamental de la aritmética establece que todo número natural tiene una representación única como producto de factores primos, salvo el orden. Un mismo factor primo puede aparecer varias veces. El 1 se representa entonces como un producto vacío.
![Page 6: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/6.jpg)
Criba de EratostenesLa manera más eficiente de encontrar todos los
números primos pequeños (menores a 10,000,000) es usando la Criba de Eratóstenes:
Hacer una lista de todos los
números enteros menores o iguales a n (y mayores que uno). Tachar los múltiplos de todos los números primos menores o iguales a la raíz de n, los número que queden sin tachar son los primos.
![Page 7: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/7.jpg)
Por ejemplo, para encontrar todos los primos menores que o iguales a 30, primero hacemos una lista con los números desde 2 hasta 30.2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
18 19 20 21 22 23 24 25 26 27 28 29 30
![Page 8: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/8.jpg)
El primer número no tachado es primo, en este caso 2, lo mantenemos (indicaremos que es primo) y tachamos a sus múltiplos (indicaremos que fueron tachados mostrándolos subrayados), así que todos los número en negritas y subrayados no son primos.
2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30
![Page 9: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/9.jpg)
inicio
Num, fac, i
Fac =0
Num
Num!=2 &&Num%2==0
No es primo
i<=sqrt(Num)
i<=sqrt(Num)
i= i+1
Num%i==0
Fac
Fac==0
No es primo
Si es primo
fin
![Page 10: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/10.jpg)
PROGRAMA EN C. #include <stdio.h>
int main(void) { int num, i, fac = 0, r; do { printf("Dame el numero: "); scanf("%d", &num); if ((num % 2 == 0) && (num != 2)) { printf("\nEl numero %d NO es primo", num); } else { for (i = 3; i <= (sqrt(num)); i+= 2) { if (num % i == 0) { printf("\nEl numero %d NO es primo", num); fac = 1; break; } } if (fac == 0) { printf("\nEl numero %d SI es primo", num); } } printf("\n\nDesea consultar otro numero? SI (1) NO (0):\n"); scanf("%d", &r); }while(r == 1); return 0;}
![Page 11: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/11.jpg)
Ejemplo #!/usr/bin/pythondef primos (n): print "Numeros primos" for i in range(2,n): for x in range(2,i): if i % x == 0: break else : print i,print "entre uno y que numeros quieres encontrar primos?«n = input("")primos(n)
![Page 12: Clase # 2 Detección de números primos](https://reader036.vdocuments.pub/reader036/viewer/2022062313/55827f61d8b42adf088b5313/html5/thumbnails/12.jpg)