[問題] N的指令打在Do迴圈內無產生效果

作者: ntust661 (TOEFL_5!)   2013-03-18 00:02:08
我有一個程式
x=1;
Do[
x = 1/3 * x ;
y = N[x,20] ;
Print[y];
,{i,1,20}];
結果還是產生程式內部預設的6有效位數
請問這要怎麼排除困難@@?
作者: LPH66 (-6.2598534e+18f)   2013-03-18 00:56:00
你確定你的程式真的如此嗎? x 的初始值是從哪裡來的?我照你這幾行自己打上去跑一遍是正常的
作者: ntust661 (TOEFL_5!)   2013-03-18 01:19:00
http://ppt.cc/3zFd請LPH大大解惑QQ
作者: LPH66 (-6.2598534e+18f)   2013-03-18 01:31:00
問題在那一個 0.33333 那個數的精確度是 MachinePrecision所以計算結果就會被影響 依然是 MachinePrecision所以顯示時就是預設的樣子了解法有兩個 一是照內文一樣打 1/3 另一是直接指定精確度改成 0.33333`20 就是 20 位精確了 (那個 ` 是 1 左邊的鍵)
作者: ntust661 (TOEFL_5!)   2013-03-18 01:36:00
謝謝 我馬上試試看

Links booklink

Contact Us: admin [ a t ] ucptt.com