2014-09-30 140 views
0

我在讀R.G.Droomey的書如何通過計算機解決它,並在第3章我發現這個問題 - 「設計和實現一個算法到iteratively compute the reciprocal of a number」。我完全困惑於如何做到這一點,因爲他在to compute the square roots之前如何教學,然後突然提出這個問題。什麼是關係?算法迭代計算一個數的倒數

這是什麼算法?另外當我們能直接找到數字的倒數時,爲什麼我們需要這個?

回答

2

迭代計算任何函數可能會要求您使用一些數值分析方法,如Newton-Raphson(http://en.wikipedia.org/wiki/Newton%27s_method)或二分查找。

此方法與數值分析(http://en.wikipedia.org/wiki/Numerical_analysis)的整個概念一起,允許您通過近似計算函數f(x)的根,而無需使用解決方案的任何給定公式。作爲一個例子,你可以計算f(x)= 5 * x^2 + sqrt(x)+ ln(x)的根,這裏很難找到解的公式。

另外爲什麼我們需要這個,當我們可以直接找到 數的倒數?

想象一下,你需要計算一個機器中一個數字的倒數,在這個機器中你不能計算除法,但只能計算加法,減法和乘法。你怎麼做呢?你用數值分析:)