Primzahlen finden! Euler 3
Verfasst: Freitag 7. Oktober 2016, 21:00
Ich habe einen Code geschrieben, welcher die Primzahlen, in einem bestimmten Bereich finden soll. Allerdings teilt mein Programm anscheinend nicht immer richtig. Das erste Problem lässt sich schon bei 16 finden.
Im Folgenden seht ihr den Code + Das was es ausgespuckt hat.
(13, 'in else. append. Last divisor 11 ')
(14, 'in if. not append. Devisible by 2 ')
(15, 'in if. not append. Devisible by 3 ')
(16, 'in else. append. Last divisor 13 ')
(17, 'in else. append. Last divisor 16 ')
(18, 'in if. not append. Devisible by 2 ')
Liste + Länge der Liste:
[2, 3, 5, 7, 11, 13, 16, 17, 19, 23, 27, 29, 31, 35, 37, 41, 43, 47, 50, 53, 59, 61, 65, 67, 71, 73, 77, 79, 83, 87, 89, 95, 97, 101]
34
Ich bin ratlos, da er anscheinend 2 ebenfalls ausprobiert hat, aber aus irgendeinem Grund nicht in das if statement gegangen ist. :K
Bitte um eure Hilfe und danke im voraus.
Im Folgenden seht ihr den Code + Das was es ausgespuckt hat.
Code: Alles auswählen
def euler3():
prim_lst = [2]
div = 3
while div <= 100:
for x in prim_lst:
if div % x == 0:
print(div, "in if. not append. Devisible by %d " % (x))
div +=1
else:
print(div,"in else. append. Last divisor %d " % (x))
prim_lst.append(div)
div+=1
print(prim_lst)
print(len(prim_lst))
euler3()(14, 'in if. not append. Devisible by 2 ')
(15, 'in if. not append. Devisible by 3 ')
(16, 'in else. append. Last divisor 13 ')
(17, 'in else. append. Last divisor 16 ')
(18, 'in if. not append. Devisible by 2 ')
Liste + Länge der Liste:
[2, 3, 5, 7, 11, 13, 16, 17, 19, 23, 27, 29, 31, 35, 37, 41, 43, 47, 50, 53, 59, 61, 65, 67, 71, 73, 77, 79, 83, 87, 89, 95, 97, 101]
34
Ich bin ratlos, da er anscheinend 2 ebenfalls ausprobiert hat, aber aus irgendeinem Grund nicht in das if statement gegangen ist. :K
Bitte um eure Hilfe und danke im voraus.