亲爱的大神们:
各位好,学弟近期写论文建模需要用到编程求解,但不懂运用何种软件,最近看到一篇文献里使用的模型和我的比较相似,苦于看不懂不知道该用什么软件也不知道如何运行,故请教大神指点迷津,下面是C++源代码:(附件里是模型需要的参数数值和运行结果,懂的大神可以参考一下)
#include<iostream.h>
void main ()
{ int i,j;
double a,b,c,1,v,hd,hm,n:
double w1,w2,w3,w11,w22,q1,lr11,lr12,lr1,lr21,q2,lr22,w,q,lr2;
cout<<"请依次输入参数值:";
cin>>a>>b>>c>>l>>v>>hd>>hm>>n;
for(i=j=1;i<=10,j<=10;i++,j++)
{
wl=0。5*a+0。25*b*1*(2*i-1)+0。5*v-0。25*hd*1+0。5*1*hm*(i-(j-l)*n);
w2=a/3+(b*1*i-hd*1)/3+2*v/3+2*l*hm*(i-(j-1)*n)/3;
w3=a i*b*l+b*l;
if(wl<=0) w11=0;
else if(wl>=a+i*b*l-b*l) w11=a+i*b*l-b*l;
else w11=w1;
q1=l*(a/(2*c)+b*l/(4*c)*(2*i-l)-w11/(2*c)-hd*l/(4*c));
lr21=w11*q1-v*q1-l*hm*(i-(j-1)*n)*q1;
lr11=((a-w11+hd*(i-l)*l)*(a-w11+hd*(i-l)*l)*l+(b-hd)*(a-w11+hd*(i-1)*l)*l*l*(2*i-1)+((b-hd)*(b-hd)*l*l*l*(3*i*i-3*i+1))/3)/(4*c);
if(w2<a+i*b*l-b*l) w22=a+i*b*l-b*l;
else if(w2>=a+i*b*l-hd*l) w22=a+i*b*l-hd*l;
e1se w22=w2;
q2=((a+b*l*i-hd*l-w22)*(a+b*l*i-hd*l-w22))/(4*c*(b-hd));
lr22=w22*q2-v*q2-l*hm*(i-(j-1)*n)*q2;
lr12=((a-w22+hd*(i-1)*l)*(a-w22+hd*(i-1)*l)*(a-w22+b*i*l-hd*l)/(b-hd)+(b-hd)*(-w22+hd*(i-1)*l)*(a-w22+b*i*l-hd*l)/(b-hd)*(w22+b*i*l+hd*l-a-2*hd*i*l)/(b-hd)+(b-hd)*(b-hd)*(a-w22+b*i*l-hd*l)/(b-hd)*(((w22-a-hd*l*(i-1))*(w22-a-hd*l*(i-l)))/((b-hd)*(b-hd))+(w22-a-hd*l*(i-1))/(b-hd)*i*l+i*i*l*l)/3)/(4*c);
if(lr21>=lr22) {w=w11;q=q1:lr2=lr21;lr1=lr11;}
else {w=w22;q=q2;lr2=lr22;lr1=lr12;}
cout<<w<<" "<<q<<" "<<lr1<<lr2<<endl;
}
不知道代码写的有没有错误,请懂的大神看看。帮忙备注一下每行代码都是什么意思,该如何带入数值进行运算出结果,如果运行比较困难的是否可以将这个代码转换成matlab程序语言,我学过一点matlab,但是C++代码不会运行,如果两种都会的大神还望不吝赐教,提供帮助的大神金币双手全奉供!比较急,小弟在此先拜谢了!
![菜鸟求助代码运用]()
参数.png
![菜鸟求助代码运用-1]()
计算结果.png |