我在寫一個簡單的程序,要求輸入5個數字並輸出他們的GCD。我已經發現瞭如何用兩個數字用一個簡單的方法做到這一點:找到n個數字的GCD
private static int gcd(int number1, int number2) //Finds GCD of 2 numbers.
{
if(number2 == 0)
{
return number1;
}
return gcd(number2, number1%number2);
}
在return語句的實際是什麼題混淆了我,雖然我不知道我怎麼會寫了這一點,5甚至更多的數字。我聽說用gcd(a,b,c)= gcd(gcd(a,b),c)遞歸地執行這種方法是最好的方法,但我想我遇到了麻煩有問題的數學邏輯。我只需要一個很好的起點,真的,如何返回3個數字,然後是4,然後是5等等。我想,一旦我獲得了邏輯部分,我就會明白如何做到這一點更容易。
這似乎已經問過,請參閱http://stackoverflow.com/a/4887702/477522 – ajmartin 2013-03-12 00:42:29
這在任何搜索過程中都沒有出現。感謝您的發現。 – Hydlide 2013-03-12 00:47:49