●开平方
在数学中,因为很多数的开平方都是无理数,所以我们需要借助数值计算的方式来进行近似值的求解。在数学中可以使用如下的迭代公式来求解a开平方的近似值:
迭代法求解开平方算法的操作步骤如下:
1.选定一个迭代初值x0,将其带入上面的迭代公式中求解出x1
2.计算x1-x0的绝对值,如果小于指定精度e,则退出迭代过程,否则继续迭代运算
3.将x(n)带入上面的迭代公式,求解出x(n+1)。继续判断x(n+1)-x(n)的绝对值,如果小于指定精度e,则退出迭代过程,否则继续迭代运算
#include<iostream> #include<cmath> using namespace std; class sqrtnum { public: void sqrt() { double t=0; result = x; while (abs(result-t)>e) { t = result; result = 0.5 * (t + x / t); } } void showresult() { cout << result << endl; } double x; double e; double result; }; void text() { sqrtnum sn; cout << "输入开平方数:"; cin >> sn.x; cout << "输入精度数:"; cin >> sn.e; sn.sqrt(); sn.showresult(); } int main() { text(); }