How to make "Fraction Simplification" ? Like

9/18 return 1/2

14/21 return 2/3

I did not find such a function in the documentation

0 votes

Best answer

When you divide int by int, you will get int as result (fraction part will be discarded). To get float in result, you must make one of the numbers float. This can be done in two ways:

1. If you have number, you can add .0 to one of the values: `9.0 / 18`

will give you 0.5

2. If your number is variable, then you have to use explicit type conversion: `float(n) / 18`

will give you 0.5 for `n = 9`

.

To find greatest common factor you can use next function:

```
func gcd(a: int, b: int) -> int:
return a if b == 0.0 else gcd(b, a % b)
```

0 votes

You can use the multiplication method

https://youtu.be/lEpWjfPxhgY

In this video they also explain in medoto GCD

```
print(simplify_by_multiplication(14, 21))
func simplify_by_multiplication(numerator, denominator) -> Array:
var simplify_values := [numerator, denominator]
for i in range(1, numerator+1):
for j in range( 1, denominator+1 ):
print( 'i:', i, ' x j:', j, ' = ', i * j)
if(( i * denominator ) == (j * numerator)):
simplify_values = [i, j]
return simplify_values
return simplify_values
```

- All categories
- Engine 32,158