输入两个正整数m和n(1000000=<n<=900000000);
时间: 2024-01-02 12:02:33 浏览: 42
好的,以下是Java代码实现:
```java
import java.util.Scanner;
public class CommonDivisor {
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
int m = input.nextInt();
int n = input.nextInt();
int commonDivisor = 1;
for (int i = 2; i <= Math.min(m, n); i++) {
if (m % i == 0 && n % i == 0) {
commonDivisor = i;
}
}
System.out.println(commonDivisor);
}
}
```
输入两个正整数m和n,然后利用循环结构遍历2到min(m, n)之间的整数,判断是否同时为m和n的因子,若是,则更新最大公约数的值。最后输出最大公约数的值。
相关问题
输入两个正整数m和n(m<=1000, n<=1000),求其最大公约数和最小公倍数。
题目要求输入两个正整数m和n(m<=1000, n<=1000),求它们的最大公约数和最小公倍数。
计算最大公约数和最小公倍数的方法有很多,常见的有辗转相除法、欧几里得算法,以及更加高级的数学方法。但是在这里我们可以直接使用Python内置模块math中的gcd和lcm函数来求解。
以下是使用Python代码实现题目要求的过程:
```python
import math
#输入两个正整数m和n
m = int(input('请输入正整数m:'))
n = int(input('请输入正整数n:'))
#计算最大公约数和最小公倍数
gcd = math.gcd(m, n)
lcm = m * n // math.gcd(m, n)
#输出结果
print('最大公约数:', gcd)
print('最小公倍数:', lcm)
```
其中,math.gcd(x, y)函数用于计算x和y的最大公约数,而m * n // math.gcd(m, n)则是通过最大公约数来计算最小公倍数。最后使用print语句将结果输出即可。
输入两个正整数m和n
您好!根据提供的引用内容,我可以回答您的问题。输入两个正整数m和n是指用户需要在程序中输入两个正整数m和n的值,以便程序能够计算它们的最大公约数和最小公倍数。
下面是一个示例代码,可以帮助您更好地理解如何输入两个正整数m和n并计算它们的最大公约数和最小公倍数:
```c
#include <stdio.h>
int main() {
int m, n, t, d;
printf("请输入两个正整数m和n:\n");
scanf("%d%d", &m, &n);
if (m < n) {
t = m;
m = n;
n = t;
}
for (d = n; d >= 1; d--) {
if (n % d == 0 && m % d == 0) {
printf("最大公约数为%d\n", d);
printf("最小公倍数为%d\n", m * n / d);
break;
}
}
return 0;
}
```