Engel expansion: Difference between revisions

J draft
m (→‎{{header|Raku}}: slightly different output formatting)
(J draft)
Line 42:
 
 
 
=={{header|J}}==
{{trans|Raku}}<lang J>to_engle=: {{ r=. i.0 while. y * 30>:#r do. y=. _1+y*{:r=. r, >.%y end. r }}
from_engle=: {{+/%*/\y}}</lang>
 
Task examples:<lang J>to_engle 3.14159265358979
1 1 1 8 8 17 19 300 1991 2767 8641 16313 1628438 7702318 25297938 431350188 765676622 776491263 1739733589 2329473788 6871947674 17179869184
from_engle to_engle 3.14159265358979
3.14159
3.14159265358979-from_engle to_engle 3.14159265358979
0
to_engle 2.71828182845904
1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 17 60 89 126 565 686 1293 7419 13529 59245 65443 133166 225384 655321 656924
from_engle to_engle 2.71828182845904
2.71828
2.71828182845904-from_engle to_engle 2.71828182845904
0
1.414213562373095-from_engle to_engle 1.414213562373095
0</lang>
(by default, J displays the first six digits of floating point numbers)
 
=={{header|Raku}}==
6,951

edits