求给定两个数的最大公约数
问题描述
如题
解决方法
最大公约数的算法此处用碾转相除法,该算法又称为欧几里得算法。实现如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| int gcd = 0; int num1 = 20; int num2 = 6; int remainder = 0; if (num1 % num2 == 0) { gcd = num2; }else{ do { remainder = num1 % num2; num1 = num2; num2 = remainder; } while (remainder > 0); if (num2 == 0) { gcd = num1; }else{ gcd = num2; } } NSLog(@"%d和%d的最大公约数是:%d",20,6,gcd);
|