Ver Mensaje Individual
  #6 (permalink)  
Antiguo 11/12/2010, 15:23
Avatar de razpeitia
razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 8 meses
Puntos: 1360
Respuesta: problema con python cuestion nº primos

Trata de explicarme cada linea de código de tu programa.

A la mejor tienes problemas con return, break, indentación de código, etc..
Ademas de problemas con matemáticas.

Recuerda que un numero es primo si sus divisores son solo 1 y el mismo.
Por ejemplo:
Código:
 #: Divisores    Es primo
 2: 1, 2         Si
 3: 1, 3         Si
 4: 1, 2, 4      No
 5: 1, 5         Si
 6: 1, 2, 3, 6   No
 7: 1, 7         Si
 8: 1, 2, 4, 8   No
 9: 1, 3, 9      No
10: 1, 2, 5, 10  No
Entonces si pruebo sus divisores, entre 2 y (n - 1)* si algún numero entre ese rango divide a n entonces no es primo de lo contrario es primo.

*Este rango se puede optimizar.

PD: Recuerda para checar si un numero es divisible entre otro, por ejemplo.
8 es divisible por 2
Para saber si un numero es divisible entre otro solo basta checar si el residuo es 0

Ejemplo:
8 % 2 = 0
De todas formas checa este libro (pagina 113), tiene un apartado de primos. (Pero recuerda no solo copiar el código y ya, de otra forma no estarías aprendiendo)