Я пытаюсь решить эту проблему, где мне нужно найти GCD из двух введенных чисел, ссылаясь на функцию. Тем не менее, я не уверен, где именно я облажался. Вот точный вопрос для справки:
Напишите функцию, которая принимает x и y в качестве входных параметров, вычисляет и возвращает наибольший общий знаменатель обоих значений.
Я попытался создать функцию для поиска GCD, а затем просто сослаться на функцию позже. Я не уверен, что я делаю не так.
#include <iomanip>
using namespace std;
int gcd;
cout << "Enter a valid integer: ";
cin >> n >> m;
int digit = number(n, m);
return 0;
}
int number(int n, int m){
for (int i=1; i<=n; ++i){
int gcd = i;
if(n%i==0 && m%i==0) {
break;
}
return gcd;
}
}
Я должен получить это:
Введите два целых числа: 12 8
GCD из 12 и 8 равен 4.
Но вместо этого я получаю сообщение об ошибке, поскольку gcd не объявляется в этой области, что не имеет смысла, поскольку я объявил его как int как внутри функции, так и снаружи.