Итак, я создал программу, чтобы найти наибольший общий делитель из пяти чисел.
И вывод, когда я использовал Visual Studio, просто прекрасен, но вывод в онлайн-системе становится сумасшедшим.
Подобно тому, как положить в программу 12, 24, 8, 36, 100, вывод будет 32758.
Кто-нибудь может мне ответить?
#include<iostream>
using namespace std;
const int LEN = 5;
int x = 0;
// TODO 1: Complete the function declaration of GCD(), takes 2 interger as parameter.
int GCD(int n1, int n2) {
for (int i = 1; i <= n1 && i <= n2; i++) {
if (n1 % i == 0 && n2 % i == 0) {
x = i;
}
}
return x;
}
// TODO 2: Complete the function implementation, return the GCD of 2 given number
int main() {
int Num[LEN];
int answer;
int gcd[4], y, z;
cout << "Enter " << LEN << " numbers:" << endl;
for (int i = 0; i < LEN; i++)
cin >> Num[i];
cout << "GCD:" << endl;
for (int i = 1; i < LEN; i++) {
gcd[i - 1] = GCD(Num[i - 1], Num[i]);
}
for (z = 3; z >= 0; z--) {
if (gcd[z] < gcd[z - 1]) {
y = gcd[z];
gcd[z] = gcd[z - 1];
gcd[z - 1] = y;
}
}
answer = gcd[0];
cout << answer << endl;
return 0;
}
Вывод в онлайн-систему