RosettaCodeData/Task/Modular-exponentiation/PicoLisp/modular-exponentiation-1.l
Ingy döt Net db842d013d A-M baby
2013-04-10 21:29:02 -07:00

8 lines
194 B
Text

(de **Mod (X Y N)
(let M 1
(loop
(when (bit? 1 Y)
(setq M (% (* M X) N)) )
(T (=0 (setq Y (>> 1 Y)))
M )
(setq X (% (* X X) N)) ) ) )