Fractran: Difference between revisions

→‎{{header|Common Lisp}}: Fix termination problem.
m (→‎{{header|REXX}}: increased the number of numeric digits when using larger number of terms.)
(→‎{{header|Common Lisp}}: Fix termination problem.)
Line 190:
<lang lisp>(defun fractran (n frac-list)
(lambda ()
(prog1
(let ((f (find-if (lambda (frac)
n
(integerp (* n frac)))
(when n
frac-list)))
(prog1 n (whenlet ((f (setffind-if n(lambda (* f n))))))frac)
(integerp (* n frac)))
frac-list)))
(when f (setf n (* f n))))))))
 
 
;; test
543

edits