Convert decimal number to rational: Difference between revisions

Content added Content deleted
Line 1,533: Line 1,533:


proc `$`(self: Rational): string =
proc `$`(self: Rational): string =
if self.denominator == 1:
$self.numerator & "//" & $self.denominator
$self.numerator
else:
$self.numerator & "//" & $self.denominator


func rationalize(x: float, tol: float = epsilon(float)): Rational =
func rationalize(x: float, tol: float = epsilon(float)): Rational =
Line 1,586: Line 1,589:
3//4
3//4
1//7
1//7
35//1
35
35001//1000
35001//1000
9//10
9//10