求N个整数的最大公约数.docVIP

  • 6
  • 0
  • 约1.08千字
  • 约 3页
  • 2018-03-09 发布于河南
  • 举报
求N个整数的最大公约数

#include iostream #include string #include cstdarg #define MAX 100 using namespace std; int a[MAX],N; //求两个正整数最大公约数 int fun(int a,int b) { cout FUN:进入fun函数 endl; //cout 调用两个参数的fun endl; int max , min ,q,r,i=0; if(ab) { max = a; min = b; } else { max = b; min= a; } do { cout FUN:fun函数第 ++i 次循环 endl; q = max / min; r = max - min*q; max = min; min = r; }while(r); return max; } //求任意N个整数的最大公约数 int fun(int i,...) { cout NFUN:进入Nfun函数 endl; int j = i,q,q1; N = i; //首先把N个整数存入到数组中 va_list ap; va_start(ap,i); while(i--) { a[i] = va_arg(ap,int); } va_end(ap); //求出前两个的公约数 q = fun(a[0],a[1]); //求出N个整数的最大公约数 for(i= 2; ij ;i++) { cout NFUN:Nfun函数第 i-1 次循环 endl; q1 = fun(q,a[i]); q = q1; } return q; } int main() { int tem = fun(5,120,180,240,360,900); for(int i = 0;iN;i++) { cout a[i] ; } cout 的最大公约数是: tem endl; }

文档评论(0)

1亿VIP精品文档

相关文档