Simple Premier Générateur en Python

Quelqu'un pourrait-il me dire ce que je fais de mal avec ce code? C'est juste l'impression de "comte" de toute façon. Je veux juste un de très simple, le premier générateur (rien de compliqué).

import math

def main():
    count = 3
    one = 1
    while one == 1:
        for x in range(2, int(math.sqrt(count) + 1)):
            if count % x == 0: 
                continue
            if count % x != 0:
                print count

        count += 1
  • pouvez-vous poster quelques sortie?
  • N'est-il pas mettre fin? Pas surprenant avec un "tout en un == 1:" en elle. N'est-il pas de produire une sortie à tous? Elle produit non-nombres premiers? Est-il trop lent? N'est-il pas en C#? Quel est le problème?
  • Si ce n'est pas le travail que vous voudrez peut-être regarder dans le Crible d'Eratosthène: en.wikipedia.org/wiki/Sieve_of_Eratosthenes
  • Je seconde CTT commentaire. Il sera tout aussi facile, si pas plus facile à code de trop.
  • pour les implémentations simples de Crible d'Eratosthène voir: stackoverflow.com/questions/2068372/...
InformationsquelleAutor marc lincoln | 2009-02-19