Using Fixpoint to Solve Mathmatic Equation ( 无限float运算的扩展 fixpoint style)

(defun  fixpoint  ( x  y)

 

(funcall   y    (funcall  x  x  y) )

 

)

 

(setq  fun (fixpoint  'fixpoint

(lambda (s)   

(lambda ( f check init result)

(if  (funcall check  (funcall f  init) init )

       result

     (progn

     (print init)

     (print  result)

     (funcall   s   f   check   (funcall f  init) (+ result init) )

     )

)

)

)

)

)

 

 

(funcall  fun  (lambda(x)(/  x 2 ) )

      (lambda (x y)(if (<  (abs (-  x  y))  (/ 1  1000000) ) t  nil))  1  0)

 

(funcall  fun  (lambda(x)(/  x 2 ) )

      (lambda (x y)(if (<  (abs (-  x  y))  (/ 1  1000000) ) t  nil))  2  0)

 

(funcall  fun  (lambda(x)(/  x 2 ) )

      (lambda (x y)(if (<  (abs (-  x  y))  (/ 1  1000000) ) t  nil))  3  0)

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值