Calculate HCF and LCM using C program
Before going to the topic first we have to know what is HCF and LCM, so that we can understand our c program logic.
HCF
The highest number among a group of bigger numbers (often two) that can divide into them all.
Example:
10 and 15
10’s factors: 1, 2, 5, 10
15’s factors: 1, 3, 5, 15
The highest in all lists is 5; HCF(10,15) is 5.
Also known as HCD (highest common divisor), GCD (greatest common divisor), and GCF (greater common factor).
LCM
The Least Common Multiple (LCM) of a group of numbers is the smallest number that is a multiple of all the numbers.
for example -: Let’s say you’re looking for the least common multiple of 20 and 42. Here’s how you would factor them 20 = 2 x 2 x 5 and 42 = 2 x 3 x 7
If the number just occurs in one number, then it has one occurrence. Here is a list of the most occurrences of each prime number from the previous example 2 → 2 times 3 → 1 time 5 → 1 time 7 → 1 time
Since 2 occurs twice, you’ll have to multiply it twice. Here’s what you should do to find the LCM: 2 x 2 x 3 x 5 x 7 = 420.
I hope you understand the basic concept of calculating LCM & HCF now below I am writing program to calculate HCF and LCM.
Program to calculate HCF & LCM
#include<stdio.h> // header file
int main () { // returns integer
int a, b, x, y, t, gcd, lcm; // declaration of variable
printf("Enter two integers\n");
scanf("%d%d", &x, &y);
a = x;
b = y;
while ( b!= 0) {
t = b;
b = a % b;
a = t;
}
gcd = a;
lcm = (x*y)/gcd;
printf("Greatest common divisor of %d and %d = %d\n", x, y, gcd);
printf("Least common multiple of %d and %d = %d\n, x, y, lcm");
return 0;
}
Still confused feel free to ask, we are here to help you
See Also
- Malloc and Calloc function in C
- Pointer in C programming
- Function in C
- C program to find out ASCII value of the character