支点(开平方实践)

//examples
X*X-B*X-1=0
Go
X=B+1/X
Go
(init x=1 ,B=2 )

(setq   small  37)
(setq  big  99)

(defun  calc  (a  b)
(if  (eq  a  1)
       (cons  b nil)
(cons  (/  (-  b  (mod  b  a ) )
            a)
       (calc   (mod  b a )  a ))))

(defun  recalc  (lst  top)
(if  (eq  (cdr lst ) nil)
    (/ top  (car lst))
(/  top 
    (+   (car  lst)
         (recalc (cdr lst) top)))))

 


(setq  initvalue  1.0)
(setq  B  2)
(defun  fun  (value)
(+  B
    (/  1.0  value)))

(defun  many (value)
(if  (> (abs  (- (fun value ) value ))  (/ 1  10000000) )
       (+ 1  (many   (print (fun value)) ))
      0))

(defun  generate  (count )
(if  (>  count  0)
     (cons  B   (generate  (- count 1)  ))
     (cons  initvalue nil)
)
)


 
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
//比如要开(sqrt 5)

(x-2)(x+2)=1
Go
x=2+1/(2+x)
GO
y=2+x
Go
y-2=2+1/y
Go
y=4+1/y
Go

(setq  B   4)

(+ B (recalc   (generate (many   initvalue ) )  1.0 ) )
//注意最后一行的+ B的意义因为它与前面的1/(1+x)格式不一样.
可以实现.
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
//比如要开(sqrt 7)

(x-2)(x+2)=3
Go
x=2+3/(2+x)
GO
y=2+x
Go
y-2=2+3/y
Go
y=4+3/y
Go

(setq  B   4)

(+ B (recalc   (generate (many   initvalue ) )  3.0 ) )
//注意最后一行的+ B的意义因为它与前面的1/(1+x)格式不一样.
可以实现.
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
//比如要开(sqrt 9)

(x-2)(x+2)=5
Go
x=2+5/(2+x)
GO
y=2+x
Go
y-2=2+5/y
Go
y=4+5/y
Go

(setq  B   4)

(+ B (recalc   (generate (many   initvalue ) )  5.0 ) )
//注意最后一行的+ B的意义因为它与前面的1/(1+x)格式不一样.
可以实现.
$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$
//比如要开(sqrt 11)

(x-2)(x+2)=7
Go
x=2+7/(2+x)
GO
y=2+x
Go
y-2=2+7/y
Go
y=4+7/y
Go

(setq  B   4)

(+ B (recalc   (generate (many   initvalue ) )  7.0 ) )
//注意最后一行的+ B的意义因为它与前面的1/(1+x)格式不一样.
可以实现.
 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值