求一个正整数N的开方,要求不能用库函数sqrt(),结果的精度在0.001

  1. #include<iostream>  
  2. using namespace std;  
  3. int main()  
  4. {  
  5.     int N;  
  6.     cout<<"输入N的值:";  
  7.     cin>>N  
  8.   
  9.     double x1 = 1;//初值  
  10.     double x2 = x1/2.0+N/2.0;  
  11.     while( fabs(x2-x1)>0.001)  
  12.     {  
  13.         x1 = x2;  
  14.         x2 = x1/2.0+N/2.0;  
  15.     }  
  16.     cout<<x1<<endl;  
  17.   
  18.     return 0;  
  19. }  

你可能感兴趣的:(求一个正整数N的开方,要求不能用库函数sqrt(),结果的精度在0.001)