求指定兩個(gè)數(shù)的最大公約數(shù)
? ? ? ? ? ? int num1 = Convert.ToInt32(Console.ReadLine());
? ? ? ? ? ? int num2 = Convert.ToInt32(Console.ReadLine());
? ? ? ? ? ? int min = num1;
? ? ? ? ? ? if (num2 < num1)
? ? ? ? ? ? { min = num2; }
? ? ? ? ? ? for (int i = min; i > 0; i--)//難點(diǎn)之一,要遞減,從大到小遍歷
? ? ? ? ? ? {
? ? ? ? ? ? ? ? if (num2 % i == 0 & num1 % i == 0)
? ? ? ? ? ? ? ? {
? ? ? ? ? ? ? ? ? ? Console.WriteLine("{0}和{1}的最大公約數(shù)是{2}", num1, num2, i);
? ? ? ? ? ? ? ? ? ? break;//break非常重要。因?yàn)椴挥胋reak,會(huì)輸出所有的約數(shù)。一個(gè)數(shù)會(huì)有好幾? ? ? ? ? ? ? ? ? ?? ? ? ? ? ? ?? //個(gè)約數(shù),我們要在找到第一個(gè)后就退出循環(huán)。
? ? ? ? ? ? ? ? }
? ? ? ? ? ? }
標(biāo)簽: