mirror of
https://github.com/pocketpy/pocketpy
synced 2025-10-22 04:20:17 +00:00
...
This commit is contained in:
parent
1444c4b380
commit
d93af53776
@ -778,7 +778,13 @@ inline void add_module_math(VM* vm){
|
|||||||
vm->bind_func<2>(mod, "gcd", [](VM* vm, ArgsView args) {
|
vm->bind_func<2>(mod, "gcd", [](VM* vm, ArgsView args) {
|
||||||
i64 a = CAST(i64, args[0]);
|
i64 a = CAST(i64, args[0]);
|
||||||
i64 b = CAST(i64, args[1]);
|
i64 b = CAST(i64, args[1]);
|
||||||
a = std::gcd(a, b);
|
if(a < 0) a = -a;
|
||||||
|
if(b < 0) b = -b;
|
||||||
|
while(b != 0){
|
||||||
|
i64 t = b;
|
||||||
|
b = a % b;
|
||||||
|
a = t;
|
||||||
|
}
|
||||||
return VAR(a);
|
return VAR(a);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user