Least common multiple: Difference between revisions
Content added Content deleted
(→{{header|D}}: keep gcd separate so it can be reused; also allow bigint to return zero) |
|||
Line 182: | Line 182: | ||
<lang d>import std.stdio, std.bigint; |
<lang d>import std.stdio, std.bigint; |
||
T lcm(T)(T m, T n) |
T lcm(T)(T m, T n) { |
||
⚫ | |||
in { |
|||
if (n == 0) return n; |
|||
⚫ | |||
} body { |
|||
return (r >= 0) ? r : -r; |
|||
} |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
n2 = t2 % n2; |
|||
⚫ | |||
T gcd(T)(T a, T b) { |
|||
⚫ | |||
while (b != 0) { |
|||
⚫ | |||
⚫ | |||
⚫ | |||
⚫ | |||
return a; |
|||
} |
} |
||