I am a beginner in python and cant understand why this is happening: from math import * print "enter the number" n=int(raw_input()) d=2 s=0 while d<n : if n%d==0: x=math.log(d) s=s+x print d d=d+1 print s,n,float(n)/s Running it in Python and inputing a non prime gives the error Traceback (most recent call last): File "C:\Python27\mit ocw\pset1a.py", line 28, in <module> x=math.log(d) NameError: name 'math' is not defined Continue reading...