static int GetGCD(int a, int b)
{
int k = a;
{
int k = a;
if (a > b)
k = b;
k = b;
while (! ((a%k == 0) && (b%k == 0)))
k–;
k–;
return k;
}
}
static int GetGCDByEuclidean(int a, int b)
{
if (a > b)
return InternalGetGCDByEaclidean(a, b);
else return InternalGetGCDByEaclidean(b, a);
}
{
if (a > b)
return InternalGetGCDByEaclidean(a, b);
else return InternalGetGCDByEaclidean(b, a);
}
static int InternalGetGCDByEaclidean(int g, int s)
{
if (s == 0)
return g;
return InternalGetGCDByEaclidean(s, g % s);
}
{
if (s == 0)
return g;
return InternalGetGCDByEaclidean(s, g % s);
}
static int GetGCDByEuclidean2(int a, int b)
{
while(!((a == 0)||(b == 0)))
{
if (a > b)
a = a – b;
else b = b – a;
}
if (a != 0)
return a;
else return b;
}
{
while(!((a == 0)||(b == 0)))
{
if (a > b)
a = a – b;
else b = b – a;
}
if (a != 0)
return a;
else return b;
}