численные методы. решение нелинейных уравнений
gogot:
помогите проверить программу для решения неоднородного уравнения,
она
#include<iostream.h>
#include<math.h>
int main()
{
int k;
long double r, Z,Z1,Z2,c,x,e,d,a,b,m,n,p=3.14;
cout<<"vvedite [a,b]";
cin>>a;
cin>>b;
cout<<"zadaite shag =>";
cin>>c;
cout<<"vvedite kolichestvo vitkov=>";
cin>>n;
cout<<"vvedite diametr trub prov-ka=>";
cin>>d;
cout<<"vvedite Z=>";
cin>>m;
cout<<"vvedite r=>";
cin>>r;
cout<<"vvedite e=>";
cin>>e;
x=a;k=0;
Z=sqrt(1+(1-(x*x)/(d*d)*(n*n*p*p*x*x)/(2*log(d/x))));
if(Z==m) cout<<"Z["<<x<<"]="<<Z;
else
while(x+c<b){ Z1=sqrt(1+(1-(x*x)/(d*d)*(n*n*p*p*x*x)/(2*log(d/x))));
// cout<<Z2<<" "<<x*100000<<" ";
x=x+c;
Z2=sqrt(1+(1-(x*x)/(d*d)*(n*n*p*p*x*x)/(2*log(d/x)))) ;
if(Z1==m){ cout<<"Z1["<<x*100000<<"]="<<Z1;k++ ;}else
if(Z1*Z2<0){ c=-c/r;
x=x-c*r;}
}
if(k==0){ cout<<"kornei na etom promegutke net";} }
корни находит но вывести их не удается
Навигация