2.设计一个子函数,找出任意2个整数的最大公约数,并在主函数中输入数据调用函数,在主函数中输出结果。
时间: 2024-05-06 19:16:20 浏览: 46
下面是一个使用欧几里得算法(辗转相除法)实现求最大公约数的 Python 代码:
```python
def gcd(a, b):
"""求a和b的最大公约数"""
while b:
a, b = b, a % b
return a
# 在主函数中输入数据调用函数
a = int(input("请输入第一个整数:"))
b = int(input("请输入第二个整数:"))
result = gcd(a, b)
print(f"{a}和{b}的最大公约数为{result}")
```
这个程序首先定义了一个名为 `gcd` 的函数,接受两个整数参数 `a` 和 `b`,使用 while 循环不断用 `a` 对 `b` 取模,直到 `b` 变为 0,此时 `a` 即为最大公约数。在主函数中,我们通过 `input` 函数获取用户输入的两个整数,然后调用 `gcd` 函数求它们的最大公约数,并输出结果。
相关问题
2.用c语言设计一个子函数,找出任意2个整数的最大公约数,并在主函数中输入数据调用函数,在主函数中输出结果。
以下是用 C 语言编写的求两个整数最大公约数的程序:
```c
#include <stdio.h>
int gcd(int a, int b);
int main()
{
int num1, num2, result;
printf("请输入两个整数:");
scanf("%d %d", &num1, &num2);
result = gcd(num1, num2);
printf("最大公约数为:%d", result);
return 0;
}
int gcd(int a, int b)
{
while (a != b)
{
if (a > b)
a -= b;
else
b -= a;
}
return a;
}
```
在上面的程序中,我们定义了一个 `gcd()` 函数,用于求两个整数的最大公约数。主函数中调用该函数,并输出结果。
运行程序,输入两个整数,即可得到它们的最大公约数。
用c语言2.设计一个子函数,找出任意2个整数的最大公约数,并在主函数中调用此函数。
以下是用C语言实现找出任意2个整数的最大公约数的程序:
```c
#include <stdio.h>
int gcd(int num1, int num2);
int main() {
int num1, num2;
printf("请输入两个整数:");
scanf("%d %d", &num1, &num2);
printf("%d 和 %d 的最大公约数是 %d\n", num1, num2, gcd(num1, num2));
return 0;
}
int gcd(int num1, int num2) {
int remainder;
while (num2 != 0) {
remainder = num1 % num2;
num1 = num2;
num2 = remainder;
}
return num1;
}
```
程序中,我们设计了一个子函数 `gcd` 来求两个整数的最大公约数。使用 `while` 循环和辗转相除法来计算最大公约数。主函数中调用了这个子函数,并输出结果。
阅读全文