C++

C++ Program to Find LCM

LCM of two integers a and b is the smallest positive integer that is divisible by both a and b.


Example 1: Find LCM

#include 
using namespace std;

int main()
{
    int n1, n2, max;

    cout << "Enter two numbers: ";
    cin >> n1 >> n2;
    
    // maximum value between n1 and n2 is stored in max
    max = (n1 > n2) ? n1 : n2;

    do
    {
        if (max % n1 == 0 && max % n2 == 0)
        {
            cout << "LCM = " << max;
            break;
        }
        else
            ++max;
    } while (true);
    
    return 0;
}

Output

Enter two numbers: 12
18
LCM = 36

In above program, user is asked to integer two integers n1 and n2 and largest of those two numbers is stored in max.

It is checked whether max is divisible by n1 and n2, if it's divisible by both numbers, max (which contains LCM) is printed and loop is terminated.

If not, value of max is incremented by 1 and same process goes on until max is divisible by both n1 and n2.


Example 2: Find LCM using HCF

The LCM of two numbers is given by:

LCM = (n1 * n2) / HCF

Visit this page to learn: How to compute HCF in C++?

#include 
using namespace std;

int main()
{
    int n1, n2, hcf, temp, lcm;

    cout << "Enter two numbers: ";
    cin >> n1 >> n2;

    hcf = n1;
    temp = n2;
    
    while(hcf != temp)
    {
        if(hcf > temp)
            hcf -= temp;
        else
            temp -= hcf;
    }

    lcm = (n1 * n2) / hcf;

    cout << "LCM = " << lcm;
    return 0;
}

Leave a Reply

Your email address will not be published. Required fields are marked *