所謂浮點數計算的精度 (precision) 就是,當一個數字寫成科學記數符號的時候, 它的底數部份總共有幾位數字。 例如 32 寫成十位數字的科學記數符號就是
不論整數還是浮點數計算,Maple 都是以軟體來做。 所以,既然 Maple 可以做任意大整數的計算,其實它也可以做任意精度的浮點數計算。 您可以在 evalf( ) 的第二個參數,設定其精度。例如
evalf(1/7, 50);就以五十位數字來計算。 另一個方法是修改記錄此參數的變數值,語法是
evalf(sqrt(2), 50);
Digits := 50;則此後的所有浮點數計算都會以五十位數字來作。例如
1.0/7;如果要恢復原來的設定,必須明確地說
evalf(sqrt(2));
Digits := 10;
提高精度以後的浮點數計算,比較不容易出錯。例如
x := 0.00001;得到正確答案:2x2 + x4,也就是
evalf( (1+x^2)^2 - 1 , 50 );
習題
Digits := 20;的情況下,使得
(1+x^2)^2 - 1;答案為 0 的最大正數 x 是什麼?