From bb32d2ddcd68d2cf131760d9c1d99f9107c912f8 Mon Sep 17 00:00:00 2001 From: Rutherther Date: Sun, 29 Oct 2023 19:35:30 +0100 Subject: [PATCH] feat: add gcd program for testing --- programs/gcd.c | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100755 programs/gcd.c diff --git a/programs/gcd.c b/programs/gcd.c new file mode 100755 index 0000000..15faca6 --- /dev/null +++ b/programs/gcd.c @@ -0,0 +1,44 @@ +#ifdef unix +#include +#endif + +int int_remainder(int a, int b) { + while (a >= b) { + a -= b; + } + + return a; +} + +int gcd(int a, int b) +{ + int previous_r = b; + + int current_r; + while ((current_r = int_remainder(a, previous_r)) != 0) { + a = previous_r; + previous_r = current_r; + } + + return previous_r; +} + +void main() +{ + int a = 1071; + int b = 462; + + #ifdef unix + printf("a: "); + scanf("%d", &a); + printf("b: "); + scanf("%d", &b); + #endif + + int res = gcd(a, b); + + #ifdef unix + printf("%d\n", res); + #endif + +} -- 2.48.1