编程实现,输入两个整数,判断两个数是否为互质数(最大公约数为1的两个数称为互质数)。如果是互质数,则输出yes,否则输出no。
时间: 2023-11-01 20:02:59 浏览: 114
编程实现如下:
```python
def gcd(a, b):
if b == 0:
return a
else:
return gcd(b, a % b)
# 输入两个整数
num1 = int(input("请输入第一个整数:"))
num2 = int(input("请输入第二个整数:"))
# 判断两个数是否互质
if gcd(num1, num2) == 1:
print("yes")
else:
print("no")
```
运行程序后,会提示用户输入两个整数,并对这两个数进行判断。程序中定义了一个`gcd`函数来实现求最大公约数的功能,采用递归的方式,直到找到最大公约数为止。若最大公约数为1,则说明两个数互质,输出"yes";否则输出"no"。
相关问题
sg认识到互质数很有用。若两个正整数的最大公约数为1,则它们是互质数。要求编写函数判断两个整数是否互质数。
好的,以下是判断两个整数是否互质数的Python函数:
```python
def is_coprime(a, b):
"""
判断两个正整数a和b是否互质数
"""
for i in range(2, min(a, b) + 1):
if a % i == 0 and b % i == 0:
return False
return True if a != 1 and b != 1 else False
```
这个函数接受两个参数a和b,用一个循环从2到min(a, b)判断是否存在一个数能同时整除a和b,如果存在则返回False,表示它们不是互质数;否则返回True,表示它们是互质数。需要注意的是,只有a和b都大于1时才有可能是互质数,因为1不是质数,无法被其他数整除。
写一段代码:输入两个正整数,判断它们是否互为互质数。
```
#include <stdio.h>
int gcd(int a, int b) { // 求最大公约数函数
if (a % b == 0) {
return b;
} else {
return gcd(b, a%b);
}
}
int main() {
int a, b;
printf("请输入两个正整数:");
scanf("%d %d", &a, &b);
if (gcd(a, b) == 1) { // 如果最大公约数是1,则互为互质数
printf("%d和%d是互质数\n", a, b);
} else {
printf("%d和%d不是互质数\n", a, b);
}
return 0;
}
```
输入样例:
```
请输入两个正整数:16 27
```
输出样例:
```
16和27是互质数
```