用c++求3个数最小公倍数代码
时间: 2023-05-31 19:04:39 浏览: 302
#include <stdio.h>
// 定义函数求两个数的最大公约数
int gcd(int a, int b) {
int temp;
while (b != 0) {
temp = a % b;
a = b;
b = temp;
}
return a;
}
// 定义函数求三个数的最小公倍数
int lcm(int a, int b, int c) {
int temp = gcd(gcd(a, b), c); // 先求出三个数的最大公约数
return a * b * c / temp; // 最小公倍数等于三个数的乘积除以最大公约数
}
int main() {
int a, b, c;
printf("请输入三个正整数:");
scanf("%d %d %d", &a, &b, &c);
printf("它们的最小公倍数为:%d\n", lcm(a, b, c));
return 0;
}
相关问题
c++求两个数最小公倍数,使用while
可以使用以下代码实现:
```c++
#include <iostream>
using namespace std;
int main()
{
int a, b, max, min, lcm;
cout << "请输入两个正整数:" << endl;
cin >> a >> b;
max = (a > b) ? a : b;
min = (a < b) ? a : b;
int i = 1;
while (true) {
lcm = max * i;
if (lcm % min == 0) {
cout << a << "和" << b << "的最小公倍数是:" << lcm << endl;
break;
}
i++;
}
return 0;
}
```
首先输入两个正整数,然后通过三目运算符找出它们的最大值和最小值。之后用一个 `while` 循环来找到它们的最小公倍数,循环从 1 开始,每次将最大值乘以循环变量 i 来得到可能的最小公倍数,如果当前得到的数能够被最小值整除,则说明当前得到的数就是最小公倍数,输出即可,使用 `break` 语句来退出循环。
求2个数最小公倍数c++代码
以下是Python代码实现:
```
def gcd(a, b):
if b == 0:
return a
return gcd(b, a % b)
def lcm(a, b):
return (a * b) // gcd(a, b)
a = int(input("请输入第一个数:"))
b = int(input("请输入第二个数:"))
c = lcm(a, b)
print("最小公倍数为:", c)
```
首先定义了一个求最大公约数的函数gcd,然后根据最大公约数求出最小公倍数的函数lcm。最后输入两个数a和b,调用函数lcm求得最小公倍数c,输出即可。
阅读全文