题解:给定两个正整数,计算这两个数的最小公倍数。

GCD 递归

  • 给定两个正整数,计算这两个数的最小公倍数。
    • 题意
    • 解题思路
    • 代码
    • 请看代码片中的代码

给定两个正整数,计算这两个数的最小公倍数。

给定两个正整数,计算这两个数的最小公倍数。
Input
输入包含多组测试数据,每组只有一行,包括两个不大于1000的正整数.
Output
对于每个测试用例,给出这两个数的最小公倍数,每个实例输出一行。
Sample Input
10 14
Sample Output
70

题意

求最大公倍数。根据题意得:需要多组输入,每组两个数,求这两个数的最小公倍数。

解题思路

辗转相除法,求出最大公约数,通过最大公约数求出最小公倍数。

代码

#include
#include

using namespace std;
int gcd(int a,int b) {
	if(a%b==0)
		return b;
	return gcd(b,a%b);
}
int main() {
	int x,y,t;
	while(scanf("%d %d",&x,&y) !=EOF) {
		t=x*y/gcd(x,y);
		cout<

请看代码片中的代码

定义gcd函数 ,辗转相除法:通过不断调用进行递归,最终得出最大公因数。
最小公倍数等于两数相乘除以最大公约数。
我是个菜鸟 c和c++一起用。
多组输入用的是c语言中的

	while(scanf("%d %d",&x,&y) !=EOF) 

好了,非常简单的问题
完成学长任务,我会继续努力的,写了一个简单的题。请见谅!
Over !! bye

你可能感兴趣的:(ACM)