c编写程序,输入两个整数,求这两个整数的最大公约数并输出。
时间: 2024-01-05 10:44:49 浏览: 29
可以使用欧几里德算法来求解最大公约数,代码如下:
```c
#include <stdio.h>
int gcd(int a, int b) {
if (b == 0) {
return a;
} else {
return gcd(b, a % b);
}
}
int main() {
int a, b;
printf("请输入两个整数:");
scanf("%d %d", &a, &b);
int result = gcd(a, b);
printf("%d 和 %d 的最大公约数是:%d\n", a, b, result);
return 0;
}
```
简单解释一下,欧几里德算法是基于辗转相除的思想,即对于两个正整数a和b(a>b),它们的最大公约数等于a除以b的余数c和b之间的最大公约数。重复这个过程,直到c等于0为止,此时b就是最大公约数。
相关问题
c++编写程序,输入两个整数,求这两个整数的最大公约数并输出。
可以的,这个问题可以很容易地解决。以下是一个简单的 C 代码示例:
```
#include <stdio.h>
int gcd(int a, int b) {
if (b == 0) {
return a;
} else {
return gcd(b, a % b);
}
}
int main() {
int a, b;
printf("请输入两个整数:");
scanf("%d%d", &a, &b);
int result = gcd(a, b);
printf("%d 和 %d 的最大公约数是 %d\n", a, b, result);
return 0;
}
```
运行程序后,输入两个整数,程序将会输出这两个整数的最大公约数。
从键盘输入两个整数,编写程序计算这两个整数的最大公约数并输出python
可以使用辗转相除法来计算两个整数的最大公约数。代码如下:
```python
a = int(input("请输入第一个整数:"))
b = int(input("请输入第二个整数:"))
# 辗转相除法
while b != 0:
a, b = b, a % b
print("最大公约数为:", a)
```
运行程序后,输入两个整数,即可得到它们的最大公约数。