python somme de nombres premiers

Je suis attachant à faire un programme en python qui permettra de générer de la somme des nombres premiers pour un certain nombre, mais le programme ne donne pas le résultat correct,s'il vous plaît dites-moi pourquoi.

b=1
#generates a list of numbers.
while b<100:
    b=b+1
    x = 0.0
    a = 0
    d = 0
    #generates a list of numbers less than b. 
    while x<b:
        x=x+1
        #this will check for divisors. 
        if (b/x)-int(b/x) == 0.0:
            a=a+1
        if a==2:
            #if it finds a prime it will add it.
            d=d+b
print d 

Je l'ai fait à générer une liste de nombres premiers avec succès, mais je ne pouvais pas obtenir les premiers à ajouter.

C'est le code que j'ai utilisé pour générer une liste de nombres premiers.

b=1
while b<1000:
    b=b+1
    n = b
    x = 0.0
    a = 0
    while x<n:
        x=x+1
        if (n/x)-int(n/x) == 0.0:
            a=a+1
    if a==2:
        print b
  • Avez-vous le code que vous avez écrit?
  • que voulez-vous dire? le code est ci-dessus, ou voulez-vous dire le code qui a généré une liste de nombres premiers.
  • Je voulais dire, avez-vous le code pour la somme de la liste, mais j'ai ajouté que faire ci-dessous.
  • Pouvez-vous être plus précis sur votre objectif kyle? Somme des nombres premiers pour un certain nombre = foo(15) = 3+5 = 8?
  • Ne pas le vérifier a==2 aller à l'extérieur de l'intérieur alors?
  • Vos commentaires dire que vous êtes la génération d'une liste, mais toutes tes variables sont des nombres. Êtes-vous sûr de savoir ce qu'est un liste c'est?
  • Je pense que quand @kylek dit "générer une liste de nombres premiers" e n'a sans doute pas dire "liste" comme en Python type de données. Comme vous le dites, il n'y a pas de liste dans le code, donc j'attends e ne voulais pas dire de cette façon.

InformationsquelleAutor kyle k | 2013-06-20