Program to add two fractions | Function to return gcd of a and b ; Function to convert the obtained fraction into it 's simplest form ; Finding gcd of both terms ; Converting both terms into simpler terms by dividing them by common factor ; Function to add two fractions ; Finding gcd of den1 and den2 ; Denominator of final fraction obtained finding LCM of den1 and den2 LCM * GCD = a * b ; Changing the fractions to have same denominator Numerator of the final fraction obtained ; Calling function to convert final fraction into it 's   simplest form ; Driver Code
const gcd = ( a , b ) => { if ( a == 0 ) return b ; return gcd ( b % a , a ) ; } const lowest = ( den3 , num3 ) => { let common_factor = gcd ( num3 , den3 ) ; den3 = parseInt ( den3 / common_factor ) ; num3 = parseInt ( num3 / common_factor ) ; document . write ( ` ${ num3 } ${ den3 } ` ) } const addFraction = ( num1 , den1 , num2 , den2 ) => { let den3 = gcd ( den1 , den2 ) ; den3 = ( den1 * den2 ) / den3 ; let num3 = ( ( num1 ) * ( den3 / den1 ) + ( num2 ) * ( den3 / den2 ) ) ; lowest ( den3 , num3 ) ; } let num1 = 1 ; let den1 = 500 ; let num2 = 2 ; let den2 = 1500 ; document . write ( ` ${ num1 } ${ den1 } ${ num2 } ${ den2 } ` ) ; addFraction ( num1 , den1 , num2 , den2 ) ;