我一直在学习 Python 2.5.4,我有以下问题需要解决:
“编写一个程序,计算从 2 到某个数 n 的所有素数的对数之和,并打印出素数的对数之和、数 n 以及这两个量的比值。测试不同的n 的值。”
这是我到目前为止所拥有的:
from math import *
n = raw_input('This is a logarithm ratio tester. Which number do you want to test? ')
for x in range(2,n): #picks numbers to test
for divisor in range(2, 1+int(sqrt(x+1))):
if x%divisor == 0: #checks if x is prime
log(x) #computes log of prime
不幸的是,我不确定如何实现对所有日志求和的函数。我想一旦我有了它,我只需要用以下内容结束程序:
print 'Sum of the logs of the primes is',logsum
print 'n =',n
print 'Ratio of sum to n is',logsum/n
或者一些变种。但是,什么是获得我标记为 logsum 的好方法?请注意,我学习编程的时间不超过一周,我对语句/函数的了解很少,而且我不是数学家。如有疑问,请假设我是个白痴。谢谢!