|
[ 簡単な説明 ]
3数以上の最大公約数を求めます。各数値は、配列で渡します。( n は要素数です。) |
/* llgcd */
#include "longint.h"
LINT llgcd(LINT *a, int n)
{
LINT gcd, w;
int j;
gcd.sign = gcd.len = 0;
for(j = 0; j < n; j++)
{
if(a[j].len > 0)
{
gcd = a[j];
gcd.sign = 0;
j++;
break;
}
}
for(; j < n; j++)
{
w = a[j];
if(w.len > 0)
{
w.sign = 0;
gcd = lgcd(gcd, w);
}
}
return gcd;
}
|