/// w ##class(PHA.Test).GetComDiv(1, 8)ClassMethod GetComDiv(num1, num2){ s big = $s(num1 > num2 : num1 , 1 : num2) s sm = $s(num1 < num2 : num1 , 1 : num2) s rem = big # sm q:(rem = 0) sm q ..GetComDiv(rem, sm)}/// w ##class(PHA.Test).Deci2Fra(0.125)ClassMethod Deci2Fra(num){ s nnum = $zabs(num) q:(nnum '< 1)&&(nnum '[ ".") num s ten = $l($p(num, ".", 2)) * 10 s num1 = num * ten s num2 = ten s com = ..GetComDiv(num1, num2) q (num1 / com) _ "/" _ (num2 / com)}
DHC-APP>w ##class(PHA.Test).Deci2Fra(0.12)
3/25
DHC-APP>w ##class(PHA.Test).Deci2Fra(0.125)
1/8
DHC-APP>w ##class(PHA.Test).Deci2Fra(0.5)
1/2