中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

c++怎么求最大公約數

c++
小億
184
2023-09-28 11:38:51
欄目: 編程語言

C++中求最大公約數可以使用歐幾里得算法(輾轉相除法)。

以下是使用遞歸方式實現最大公約數的示例代碼:

#include <iostream>
int gcd(int a, int b) {
if (b == 0) {
return a;
}
return gcd(b, a % b);
}
int main() {
int a, b;
std::cout << "請輸入兩個數字:";
std::cin >> a >> b;
int result = gcd(a, b);
std::cout << "最大公約數為:" << result << std::endl;
return 0;
}

以上代碼中,gcd函數用于計算最大公約數。在每次遞歸調用中,如果b等于0,則a即為最大公約數;否則,遞歸調用gcd(b, a % b),直到b等于0。

main函數中,用戶輸入兩個數字ab,然后調用gcd函數計算最大公約數,并輸出結果。

你也可以使用循環方式來實現最大公約數的計算:

#include <iostream>
int gcd(int a, int b) {
while (b != 0) {
int temp = b;
b = a % b;
a = temp;
}
return a;
}
int main() {
int a, b;
std::cout << "請輸入兩個數字:";
std::cin >> a >> b;
int result = gcd(a, b);
std::cout << "最大公約數為:" << result << std::endl;
return 0;
}

以上代碼中,gcd函數使用循環方式實現,每次循環中取b的值保存到temp變量中,然后將a賦值為bb賦值為a除以b的余數,直到b等于0。循環結束后,a即為最大公約數。

0
镇巴县| 大悟县| 长子县| 玉山县| 长垣县| 松江区| 吴堡县| 台北市| 彰化市| 潢川县| 新和县| 丹江口市| 石楼县| 项城市| 玛曲县| 临漳县| 齐齐哈尔市| 饶平县| 汾西县| 交口县| 金乡县| 台江县| 罗源县| 安顺市| 屏东市| 华蓥市| 淮阳县| 龙口市| 寿阳县| 千阳县| 南雄市| 故城县| 金昌市| 永登县| 永宁县| 连平县| 平舆县| 西乡县| 镇赉县| 临城县| 宁都县|