def vmod(a , b ):

.r1 = b
.r2 = a
. m1 = 0
.m2 = 1


.q = Int(r1 / r2)

.r3 = r1 - q * r2
.m3 = m1 - q * m2


.while r3 != 0:
...r1 = r2
...m1 = m2
...r2 = r3
...m2 = m3
...q = Int(r1 / r2)
...r3 = r1 - r2 * q
...m3 = m1 - m2 * q

.If r2 == 1:

...If m2 < 0: 
.....return( m2 + b)
...Else:
.....return( m2 )


.Else:
...return( -r2 )
 



When I attempt to run this function from the shell run menu,

I get the message 

syntax error


and it highlights    r2  

in the line

.If r2 == 1:

However if I 
use the eval function in the shell, I get

>>> eval("factor30")
<module 'factor30' from 'c:\math\factoring\factor30.pyc'>
>>> 

no error message.


and when I use help to look at the associated module,

this function is not listed.   It must be because of the syntax error.

>>> help(factor30)
Help on module factor30:

NAME
    factor30

FILE
    c:\math\factoring\factor30.py

FUNCTIONS
    factor(z)
    
    factor0(z)
    
    gcd(a, b)
    
    ifprime(z)
    
    ksqrt(j)
    
    test(tv)
    
    transfac(v)



Give me some hint for why this is happening.

The periods at the beginning of each line represents beginning spaces. 

_______________________________________________
Tutor maillist  -  Tutor@python.org
http://mail.python.org/mailman/listinfo/tutor

Reply via email to