Minkowski question-mark function: Difference between revisions
J: trivia
m (J: remove some silliness, add a small but movtivating example) |
(J: trivia) |
||
Line 474:
f=. 1|y
node=. *i.2 2 NB. node of Stern-Brocot tree
B=. ''
for. i.ITERCOUNT do.
B=. B, b=. f>:%/t=. +/node
node=. t (1-b)} node
end.
Line 486:
cf=. i.0
cur=. 0 NB. 1 if generating "top" side of cf
cnt=. 1 NB. "bits" (proposed continued fraction element)
for. i.ITERCOUNT do.
if. f=<. f do.
cf=. cf,%cnt break.
Line 500:
(+%)/(<.y),cf
}}</lang>
That said, note that this algorithm introduces significant numeric instability for √7 divided by 3:
|