2016 Update
This commit is contained in:
parent
948b86eafa
commit
dcf5d15da3
7965 changed files with 139854 additions and 31002 deletions
|
|
@ -0,0 +1,44 @@
|
|||
-- lcm :: Integral a => a -> a -> a
|
||||
on lcm(x, y)
|
||||
if x = 0 or y = 0 then
|
||||
0
|
||||
else
|
||||
abs(x div (gcd(x, y)) * y)
|
||||
end if
|
||||
end lcm
|
||||
|
||||
|
||||
-- TEST
|
||||
on run
|
||||
|
||||
lcm(12, 18)
|
||||
|
||||
--> 36
|
||||
end run
|
||||
|
||||
|
||||
-- GENERAL FUNCTIONS
|
||||
|
||||
-- abs :: Num a => a -> a
|
||||
on abs(x)
|
||||
if x < 0 then
|
||||
-x
|
||||
else
|
||||
x
|
||||
end if
|
||||
end abs
|
||||
|
||||
-- gcd :: Integral a => a -> a -> a
|
||||
on gcd(x, y)
|
||||
script _gcd
|
||||
on lambda(a, b)
|
||||
if b = 0 then
|
||||
a
|
||||
else
|
||||
lambda(b, a mod b)
|
||||
end if
|
||||
end lambda
|
||||
end script
|
||||
|
||||
_gcd's lambda(abs(x), abs(y))
|
||||
end gcd
|
||||
Loading…
Add table
Add a link
Reference in a new issue