求最大公约数

xiaoxiao2021-02-28  69

求N个数最大公约数

今年人人网笔试题

要求:

求N个数的最大公约数

格式:

输入:
3
3 6 9
输出:
3
#include <iostream> using namespace std; int main() { int *a = new int; int n=0,min=10000,count=0; int temp; cin>>n;//n代表求n个数的最大公约数 for(int i=0;i<n;i++) { cin>>a[i]; } for(int j=0;j<n;j++) { //先找出输入数里边的最小数 if(min>a[j]) { min=a[j]; } } //从最小数开始往下遍历,找出公约数,即为最大公约数 for (int k=min;k>0;k--) { for(int l=0;l<n;l++) { if(a[l]%k==0) { count++; } } if(count==n) { temp = k; break; } else count = 0; } cout<<temp<<endl; return 0; }

转载请注明原文地址: https://www.6miu.com/read-76331.html

最新回复(0)