C++如何实现多数的最大公约数
更新:HHH   时间:2023-1-8


这篇文章主要介绍了C++如何实现多数的最大公约数,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。

C++ 实现多数的最大公约数的实例

题目:求最大公约数
输入一组正整数(数量小于20),输出其最大公约数。
输入:121 33 44 11 1111
输出:11

基本思路:

从第一个数开始,和第二个数比较找它两的最大公约数,然后找出的最大公约数和第三个数比较,依次类推。。。

#include <stdio.h> 
 
int gcd(int a,int b) 
{ 
  return a%b?gcd(b,a%b):b; 
} 
 
int main() 
{ 
  int N,a[20],k,i; 
  while(~scanf("%d",&N)) 
  { 
    for(i=0;i<N;i++) 
      scanf("%d",&a[i]); 
 
    k=a[0]; 
    for(i=1;i<N;i++) 
    { 
      k=gcd(k,a[i]); 
    } 
 
    printf("%d\n",k); 
  } 
  return 0; 
}

测试结果,可能想的不周全,欢迎查漏补缺:

感谢你能够认真阅读完这篇文章,希望小编分享的“C++如何实现多数的最大公约数”这篇文章对大家有帮助,同时也希望大家多多支持天达云,关注天达云行业资讯频道,更多相关知识等着你来学习!

返回编程语言教程...