Deceptive numbers: Difference between revisions

Content added Content deleted
Line 75: Line 75:
#synon _isdeceptive Isdeceptive
#synon _isdeceptive Isdeceptive
#synon _modulepow ModulePow
#synon _modulepow ModulePow
#define Breaking Goto(exit)

Main
Main
i = 49, c=0
i = 49, c=0
Line 85: Line 85:


is deceptive ( n )
is deceptive ( n )
ret=0, x=7
x=7
When ( And( Bitand(n,1), And( Mod(n,3), Mod(n,5) )) ) {
And( Bitand(n,1), And( Mod(n,3), Mod(n,5) )), do {
Iterator( x+=6, #( (x*x) <= n ),\
Iterator( x+=6, #( (x*x) <= n ),\
#(!( (n%x) && (n%(x+4)) )), do{ \
#(!( (n%x) && (n%(x+4)) )), do{ \
Let ' ret := Equals( Module Pow (10, Minus one(n), n), 1) ' } )
Module Pow (10, Minus one(n), n), Is equal to '1', Breaking } )
}
}
Set '0'
Return ' ret '
exit:

Return
module pow(b, e, m)
module pow(b, e, m)
Loop for (p = 1, e, e >>= 1)
Loop for (p = 1, e, e >>= 1)