# Reduce the fraction to its lowest form

Given two integers **x **and **y **and where x is divisible by y. It can be represented in the form of a fraction **x/y**. The task is to reduce the fraction to its lowest form.

**Examples:**

Input :x = 16, y = 10Output :x = 8, y = 5Input :x = 10, y = 8Output :x = 5, y = 4

**Approach:** Both of the values **x** and **y **will be divisible by their greatest common divisor. So if we divide x and y from the gcd(x, y) then x and y can be reduced to its simplest form.

Below is the implementation of the above approach:

## C++

`// C++ program to reduce a fraction x/y ` `// to its lowest form ` ` ` `#include <bits/stdc++.h> ` `using` `namespace` `std; ` ` ` `// Function to reduce a fraction to its lowest form ` `void` `reduceFraction(` `int` `x, ` `int` `y) ` `{ ` ` ` `int` `d; ` ` ` `d = __gcd(x, y); ` ` ` ` ` `x = x / d; ` ` ` `y = y / d; ` ` ` ` ` `cout << ` `"x = "` `<< x << ` `", y = "` `<< y << endl; ` `} ` ` ` `// Driver Code ` `int` `main() ` `{ ` ` ` `int` `x = 16; ` ` ` `int` `y = 10; ` ` ` ` ` `reduceFraction(x, y); ` ` ` ` ` `return` `0; ` `} ` |

*chevron_right*

*filter_none*

## Java

`// Java program to reduce a fraction x/y ` `// to its lowest form ` `class` `GFG ` `{ ` ` ` `// Function to reduce a fraction to its lowest form ` `static` `void` `reduceFraction(` `int` `x, ` `int` `y) ` `{ ` ` ` `int` `d; ` ` ` `d = __gcd(x, y); ` ` ` ` ` `x = x / d; ` ` ` `y = y / d; ` ` ` ` ` `System.out.println(` `"x = "` `+ x + ` `", y = "` `+ y); ` `} ` ` ` `static` `int` `__gcd(` `int` `a, ` `int` `b) ` `{ ` ` ` `if` `(b == ` `0` `) ` ` ` `return` `a; ` ` ` `return` `__gcd(b, a % b); ` ` ` `} ` ` ` `// Driver Code ` `public` `static` `void` `main(String[] args) ` `{ ` ` ` `int` `x = ` `16` `; ` ` ` `int` `y = ` `10` `; ` ` ` ` ` `reduceFraction(x, y); ` `} ` `} ` ` ` `/* This code contributed by PrinciRaj1992 */` |

*chevron_right*

*filter_none*

## Python3

`# Python3 program to reduce a fraction x/y ` `# to its lowest form ` `from` `math ` `import` `gcd ` ` ` `# Function to reduce a fraction ` `# to its lowest form ` `def` `reduceFraction(x, y) : ` ` ` ` ` `d ` `=` `gcd(x, y); ` ` ` ` ` `x ` `=` `x ` `/` `/` `d; ` ` ` `y ` `=` `y ` `/` `/` `d; ` ` ` ` ` `print` `(` `"x ="` `, x, ` `", y ="` `, y); ` ` ` `# Driver Code ` `if` `__name__ ` `=` `=` `"__main__"` `: ` ` ` ` ` `x ` `=` `16` `; ` ` ` `y ` `=` `10` `; ` ` ` ` ` `reduceFraction(x, y); ` ` ` `# This code is contributed by Ryuga ` |

*chevron_right*

*filter_none*

## C#

`// C# program to reduce a fraction x/y ` `// to its lowest form ` `using` `System; ` ` ` `class` `GFG ` `{ ` ` ` `// Function to reduce a fraction to its lowest form ` `static` `void` `reduceFraction(` `int` `x, ` `int` `y) ` `{ ` ` ` `int` `d; ` ` ` `d = __gcd(x, y); ` ` ` ` ` `x = x / d; ` ` ` `y = y / d; ` ` ` ` ` `Console.WriteLine(` `"x = "` `+ x + ` `", y = "` `+ y); ` `} ` ` ` `static` `int` `__gcd(` `int` `a, ` `int` `b) ` `{ ` ` ` `if` `(b == 0) ` ` ` `return` `a; ` ` ` `return` `__gcd(b, a % b); ` ` ` `} ` ` ` `// Driver Code ` `public` `static` `void` `Main(String[] args) ` `{ ` ` ` `int` `x = 16; ` ` ` `int` `y = 10; ` ` ` ` ` `reduceFraction(x, y); ` `} ` `} ` ` ` `// This code has been contributed by 29AjayKumar ` |

*chevron_right*

*filter_none*

## PHP

`<?php ` `// PHP program to reduce a fraction x/y ` `// to its lowest form ` ` ` `// Function to reduce a fraction to its lowest form ` `function` `reduceFraction(` `$x` `, ` `$y` `) ` `{ ` ` ` `$d` `; ` ` ` `$d` `= __gcd(` `$x` `, ` `$y` `); ` ` ` ` ` `$x` `= ` `$x` `/ ` `$d` `; ` ` ` `$y` `= ` `$y` `/ ` `$d` `; ` ` ` ` ` `echo` `(` `"x = "` `. ` `$x` `. ` `", y = "` `. ` `$y` `); ` `} ` ` ` `function` `__gcd(` `$a` `, ` `$b` `) ` `{ ` ` ` `if` `(` `$b` `== 0) ` ` ` `return` `$a` `; ` ` ` `return` `__gcd(` `$b` `, ` `$a` `% ` `$b` `); ` ` ` `} ` ` ` `// Driver Code ` `$x` `= 16; ` `$y` `= 10; ` ` ` `reduceFraction(` `$x` `, ` `$y` `); ` ` ` `// This code is contriuted by Rajput-Ji ` `?> ` |

*chevron_right*

*filter_none*

**Output**:

x = 8, y = 5

## Recommended Posts:

- Find ΔX which is added to numerator and denominator both of fraction (a/b) to convert it to another fraction (c/d)
- Fraction
- First occurrence of a digit in a given fraction
- Convert Binary fraction to Decimal
- Find Recurring Sequence in a Fraction
- Greedy Algorithm for Egyptian Fraction
- Expressing a fraction as a natural number under modulo 'm'
- Maximum rational number (or fraction) from an array
- Represent the fraction of two numbers in the string format
- Largest proper fraction with sum of numerator and denominator equal to a given number
- Build Lowest Number by Removing n digits from a given number
- Find maximum operations to reduce N to 1
- Count operations of the given type required to reduce N to 0
- Reduce the array to a single element with the given operation
- Minimum number of operations required to reduce N to 1

If you like GeeksforGeeks and would like to contribute, you can also write an article using contribute.geeksforgeeks.org or mail your article to contribute@geeksforgeeks.org. See your article appearing on the GeeksforGeeks main page and help other Geeks.

Please Improve this article if you find anything incorrect by clicking on the "Improve Article" button below.