The lowest Common Denominator or Least Common Denominator is the Least Common Multiple of the denominators of a set of fractions.
Common denominator : when the denominators of two or more fractions are the same.
Least Common denominator is the smallest of all common denominators.
Why do we need LCD ?
It simplifies addition, subtraction and comparing fraction.
Common Denominator can be simply evaluated by multiplying the denominators. In this case, 3 * 6 = 18
But that may not always be least common denominator, as in this case LCD = 6 and not 18. LCD is actually LCM of denominators.
Examples :
LCD for fractions 5/12 and 7/15 is 60. We can write both fractions as 25/60 and 28/60 so that they can be added and subtracted easily. LCD for fractions 1/3 and 4/7 is 21.
Example Problem : Given two fractions, find their sum using least common dominator.
Examples:
Input : 1/6 + 7/15 Output : 19/30 Explanation : LCM of 6 and 15 is 30. So, 5/30 + 14/30 = 19/30 Input : 1/3 + 1/6 Output : 3/6 Explanation : LCM of 3 and 6 is 6. So, 2/6 + 1/6 = 3/6
Note* These answers can be further simplified by Anomalous cancellation.
# python Program to determine # LCD of two fractions and # Perform addition on fractions # function to calculate gcd # or hcf of two numbers. def gcd(a, b):
if (a = = 0 ):
return b
return gcd(b % a, a)
# function to calculate # lcm of two numbers. def lcm(a, b):
return (a * b) / gcd(a, b)
def printSum(num1, den1,
num2, den2):
# least common multiple
# of denominators LCD
# of 6 and 15 is 30.
lcd = lcm(den1, den2);
# Computing the numerators
# for LCD: Writing 1/6 as
# 5/30 and 7/15 as 14/30
num1 * = (lcd / den1)
num2 * = (lcd / den2)
# Our sum is going to be
# res_num/lcd
res_num = num1 + num2;
print ( int (res_num) , "/" ,
int (lcd))
# Driver Code # First fraction is 1/6 num1 = 1
den1 = 6
# Second fraction is 7/15 num2 = 7
den2 = 15
printSum(num1, den1, num2, den2); # This code is contributed # by Sam007 |
// C# Program to determine LCD of two // fractions and Perform addition on // fractions using System;
class GFG {
// function to calculate gcd or
// hcf of two numbers.
static int gcd( int a, int b)
{
if (a == 0)
return b;
return gcd(b % a, a);
}
// function to calculate lcm of
// two numbers.
static int lcm( int a, int b)
{
return (a * b) / gcd(a, b);
}
static void printSum( int num1, int den1,
int num2, int den2)
{
// least common multiple of
// denominators LCD of 6 and 15
// is 30.
int lcd = lcm(den1, den2);
// Computing the numerators for LCD:
// Writing 1/6 as 5/30 and 7/15 as
// 14/30
num1 *= (lcd / den1);
num2 *= (lcd / den2);
// Our sum is going to be res_num/lcd
int res_num = num1 + num2;
Console.Write( res_num + "/" + lcd);
}
// Driver code
public static void Main ()
{
// First fraction is 1/6
int num1 = 1, den1 = 6;
// Second fraction is 7/15
int num2 = 7, den2 = 15;
printSum(num1, den1, num2, den2);
}
} // This code is contributed by Sam007. |
<?php // PHP Program to determine // LCD of two fractions and // Perform addition on fractions // function to calculate gcd // or hcf of two numbers. function gcd( $a , $b )
{ if ( $a == 0)
return $b ;
return gcd( $b % $a , $a );
} // function to calculate // lcm of two numbers. function lcm( $a , $b )
{ return ( $a * $b ) / gcd( $a , $b );
} function printSum( $num1 , $den1 ,
$num2 , $den2 )
{ // least common multiple
// of denominators
// LCD of 6 and 15 is 30.
$lcd = lcm( $den1 , $den2 );
// Computing the numerators for LCD:
// Writing 1/6 as 5/30 and 7/15 as
// 14/30
$num1 *= ( $lcd / $den1 );
$num2 *= ( $lcd / $den2 );
// Our sum is going to be res_num/lcd
$res_num = $num1 + $num2 ;
echo $res_num . "/" . $lcd ;
} // Driver Code
// First fraction is 1/6
$num1 = 1;
$den1 = 6;
// Second fraction is 7/15
$num2 = 7;
$den2 = 15;
printSum( $num1 , $den1 , $num2 , $den2 );
// This code is contributed by Sam007. ?> |
Output :
19/30
Time Complexity: O(log(max(deno1,deno2)))
Auxiliary Space: O(log(max(deno1,deno2)))