Математическое правило показывает, что моя «программа» дает неправильный ответ.
Я был бы очень признателен, если бы вы могли проверить этот небольшой фрагмент кода и сообщить мне о проблеме с ним.Я знаю, что проблема где-то после строки ll = []
.Я просто не могу определить точную причину этого.Но я знаю, что сумма логарифмов всех простых чисел меньше n меньше n .Моя программа нарушает это правило.
Вот код:
from math import log
lp = [] ## create a list
for n in range(2,10000):
for x in range(2,n):
if n % x == 0:
break
else:
lp.append(n) ## fill that list with the primes
##print lp[500] found the value of lp[500]
ll = [] ## create a second list
for i in range(2, lp[500]):
if i < 3581: ## this is the number corresponding to lp[500]
i = log(i, )
ll.append(i) ## fill the second list with logs of primes
print sum (ll), 3581, sum(ll)/3581`