首页 > 代码库 > 求两数最小公倍数

求两数最小公倍数

     输入代码:

/*  
 * Copyright (c) 2014, 烟台大学计算机学院  
 * All rights reserved.  
 * 文件名称:sum123.cpp  
 * 作    者:林海云  
 * 完成日期:2015年1月10日  
 * 版 本 号:v2.0  
 *  
 * 问题描述:求两数的最小公倍数
 * 输入描述:两个整数
 * 程序输出:最小公倍数
 */    
#include<iostream>
using namespace std;
int gcd(int x,int y);
int gad(int x,int y);
int main()
{
    int m,n,sum;
    cin>>m>>n;
    sum=gad(m,n);
    cout<<sum<<endl;
    return 0;
}
int gcd(int x,int y)
{
    int r;
    while(y!=0)
    {
        r=x%y;
        x=y;
        y=r;
    }
    return x;
}
int gad(int x,int y)
{
    int s,d;
    s=x*y;
    d=s/gcd(x,y);
    return d;
}

运行结果:

技术分享


总结:求两数的最小公倍数=两个数的积/两数的最小公约数;

最小公约数用辗转相除法求,设两数为m,n,两数相除的余数为r,r=x%y,x=y,y=r;如此辗转相除。

求两数最小公倍数