Advertisement
Falexom

Untitled

Jun 19th, 2022
889
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 0.51 KB | None | 0 0
  1. import math
  2. number = float(input())
  3. def float_to_ratio(flt):
  4.     if int(flt) == flt: # to prevent 3.0 -> 30/10
  5.         return int(flt), 1
  6.     flt_str = str(flt)
  7.     flt_split = flt_str.split('.')
  8.     numerator = int(''.join(flt_split))
  9.     denominator = 10 ** len(flt_split[1])
  10.     x = math.gcd(numerator, denominator)
  11.     s = (int(numerator/x),'/', int(denominator/x))
  12.     print(s)
  13.     stre = ''
  14.     for item in s:
  15.         ex = str(item)
  16.         stre +=  ex
  17.     print(stre)
  18.    
  19. float_to_ratio(number)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement