【题目】C语言:用迭代法求平方根.利用公式z(n+1)=1/2*(x(n)+a/x(n)) 计算a的平方根.要求|z(n+1)-x(n)| 相关知识点: 实数 平方根与立方根 算术平方根 算术平方根的概念 求一个数的算术平方根 平方根 平方根的概念 求一个数的平方根 ...
C语言:用迭代法求平方根.利用公式x(n+1)=1/2*(x(n)+a/x(n)) 计算a的平方根.要求|x(n+1)-x(n)|
int main(){ double x1,x2,a;printf("please input a numble:");scanf("%lf",&a);if(a<0)printf("erorr");else { x2=1.0;do { x1=x2;x2=0.5*(x1+a/x1);} while(fabs(x2-x1)>=1e-5);printf("a=%.2f,x=%.2f\n",a,x2);} return 0;} ...
改为 scanf("%lf",&a);试试
准备进行下一次迭代 x0 = x1;} return 0;} 在上面的代码中,我们定义了迭代次数为100,初值x0为1.0,并使用求平方根的迭代公式x1=sin(x0)+0.5进行迭代。这里的公式是x1=sin(x0)+0.5,而不是您所说的x1=x0-sin(x0)-0.5。不过,您可以通过更改迭代公式来求解您所提到的方程。
int main(){ float num,x=1,tmp; //注意迭代开始时x的值为1 cout<<"输入需要求开平方的数"<<endl;cin>>num;do { tmp=x;x=(x+num/x)/2; //迭代求根号值 }while(fabs(x-tmp)>=1e-5); //使用了fabs函数,需要加cmath头文件,注意10的高次方的表达方式 // fabs关于绝...
int c=0;double ch=0;cout << "please enter a:";cin >> a;for (c = 10; ch>1e-7; c++){ ch = fabs(re(c) - re(c - 1));} cout << "sqrt is:" << re(c) << endl;} double re(int n){ double x;if (n >= 2)x = 0.5*(re(n - 1) + a / re(n -...
main函数你没有给出类型..你给int main()的话,最后要return 0;或是给void main()也可以,取决于你的编译器
1、c语言的开方函数是:sqrt()函数。功能:计算一个非负实数的平方根。函数原型:在VC0中的math.h头文件的函数原型为double sqrt(double)。 2、直接用两个数(或变量)相乘就可以表示平方,比如x*x 不过如果,需要求m的n次方,就需要用到pow(x,y)乘方(包括开方)这个库函数了,使用pow(x,y)这个库函数,需要math...
C语言:用迭代法求平方根.利用公式x(n+1)=1/2*(x(n)+a/x(n)) 计算a的平方根.要求|x(n+1)-x(n)| 答案 #include#includeint main() double x1,x2,a printf("please input a numble:") scanf("%lf",&a) if(a=1e-5) printf("a=%.2f,x=%.2f\n",a,x2) return 0相关推...