穷举搜索法解方程组(待高手指点)
本人最近经常要用C语言解决数学方程,而解方程组,穷举搜索法是个好算法,但本人有点菜,得不到理想的结果.现有个方程组,我把我的程序写出来,请高手为我点化. 方程组为: { v*t*cos(a)=1000 (0<a<90度) 1.89*t-v*t*sin(a)=1160 (1.0<v<2.0) (600<t<1200) } 我编的程序如下: # include <math.h> # define pi 3.1415926 main() { float v, t, a; for(v=1.0;v<2.0;v+=0.01) for(a=0.0001;a<pi/2;a+=0.01*pi) for(t=600;t<1200;t+=0.01) {if (fabs(v*t*cos(a)-1000)<=0.01) if(fabs(1.89*t-v*t*sin(a)-1160)<=0.01) printf("v=%f , a=%f, t=%f\n",v,a,t); } } 两个方程,三个未知数,会得到很多解. |