2016-03-08 96 views
1

我對理解J解釋無窮大有困難,例如(cos=.2&o.^:_)1是0.73908,而((^&2)^:_) 2是_,但是((+&1)^:_) 0掛了我的電腦而不是回答_。餘弦和功率示例如何工作?J解釋infinities

回答

2

表格v ^:_ y將v應用於y直到沒有變化。換句話說,它可以用作一個收斂測試。

((+&1)^:_) 0注意:每次增加一個執行...緩慢到達無窮大

((^&2)^:_) 2注意:增加得快得多,所以得到_(無窮)更快

(cos=.2&o.^:_)1注意。收斂

J新C程序員亨利富給出的用途的一個很好的說明^:_ http://www.jsoftware.com/help/jforc/loopless_code_iv_irregular_o.htm#_Toc191734389

3

您的計算機掛起,因爲有很多(如很多)的步驟,直到最後計算達到_

如果保留中間步驟,你可以很容易地看到餘弦如何快速收斂:

(2&o.^:(<_)) 1 
1 0.540302 0.857553 0.65429 ... 
#(2&o.^:(<_)) 1 
77 

在短短的77步就達到了一個穩定的點。

同樣,^&2增長速度非常快,因此達到其穩定點(_)很快:

((^&2)^:(<_)) 2 
2 4 16 256 65536 4.29497e9 1.84467e19 3.40282e38 1.15792e77 1.34078e154 _ 
#((^&2)^:(<_)) 2 
11 

(+&1),另一方面,是一個非常緩慢增加的功能。從0開始,你必須等待大約1e19個步驟,直到達到穩定點;即數字x,其等於x+1