24 lines
401 B
Text
24 lines
401 B
Text
# these implementations ignore negative exponents
|
|
def intpow (int m, int n)
|
|
if (< n 1)
|
|
return 1
|
|
end if
|
|
decl int ret
|
|
set ret 1
|
|
for () (> n 0) (dec n)
|
|
set ret (* ret m)
|
|
end for
|
|
return ret
|
|
end intpow
|
|
|
|
def floatpow (double m, int n)
|
|
if (or (< n 1) (and (= m 0) (= n 0)))
|
|
return 1
|
|
end if
|
|
decl int ret
|
|
set ret 1
|
|
for () (> n 0) (dec n)
|
|
set ret (* ret m)
|
|
end for
|
|
return ret
|
|
end floatpow
|