Я очень новичок в C++ и пытаюсь создать функцию для реализации евклидова алгоритма, который возвращает наибольший общий делитель для двух целых входов.C++ Самый большой общий делитель
Текущий подход, который я принимаю, продолжает терпеть крах - можете ли вы помочь мне понять, почему?
int main() {
int a = 0;
int b = 0;
cin >> a;
cin >> b;
do {
if (a > b) a = a % b;
else if (a < b) b = b % a;
else if (a == b) break;
} while ((a || b) != 0);
return 0;
}
Спасибо,
Дэвид
спасибо Армен, изучая рекурсию следующий;) –
http://www.nullptr.me/2012/01/07/c-template-metaprogramming/ есть несколько реализаций GCD. также рекурсивный. – Alex