C 迭代法求平方根

2022-04-28 23:06:22 字數 637 閱讀 7222

今天筆者突然想用c++實現求平方根的程式,整體的思路是採用迭代法

首先,寫出迭代表達是xk+1=0.5*(xk+y/xk),由於筆者只是求解近似解,

所以,我為的控制了迭代的次數,選擇5次。**如下:

1 #include 2

using

namespace

std;

3class

square

9void

it_root()

12float getx() const

13float gety() const

14private:15

float

x, y;

16};

1718

1920

intmain()

2126 std::cout << root.getx() <

2728 std::cout << "

hello world!\n";

29 }

square.cpp

結果在vs2017上執行如下圖所示:

迭代法求平方根

迭代法也稱輾轉法,是一種不斷用變數的舊值遞推新值的過程,跟迭代法相對應的是直接法,即一次性解決問題。迭代法又分為精確迭代和近似迭代,二分法 和 牛頓迭代法 屬於近似迭代法。迭代演算法是用計算機解決問題的一種基本方法。它利用計算機運算速度快 適合做重複性操作的特點,讓計算機對一組指令 或一定步驟 進行...

迭代法求平方根

踩了個坑,在判斷迴圈成立條件的時候理解錯了,一直報錯。題目描述 用迭代法求 平方根 公式 求a的平方根的迭代公式為 x n 1 x n a x n 2 要求前後兩次求出的差的絕對值少於0.00001。輸出保留3位小數輸入x 輸出x的平方根 樣例輸入 4樣例輸出 2.000 解題思路以及注意事項 迭代...

c 求平方根(牛頓迭代法)

借鑑了 思路很簡單,就是確定這樣乙個函式 確定乙個點,在這個點做函式的切線,這條切線和x軸的交點會越來越靠近所求的值 接下來就是高一數學,假設這個點是x0,確定的點就是 x0,x0 x0 n 對函式求導,得切線斜率是2x0 計算這個切線和x軸的交點為 x0 x0 num 2 x0 再比較大小,不斷迴...