class
pro{
public static void main(String args[]){
double tl,tr,b1,w1;
int n;
double th[]=
new double
[101];
for (n=1;n<101;n++){
th[n]=0.02*n;
}
tl=0.2;
tr=0.1;
w1=wel(th,tl,tr);
System.out.println(w1);
}
public static double wel(double[] th,double tl,double tr){
double c1,l1,w1;
int n;
w1=0;
for (n=1;n<101;n++){
c1=cx(th[n],tl,tr);
l1=lx(th[n],tl,tr);
w1=w1+u(c1,1-l1);
}
return w1;
}
public static double bud(double[] th,double tl,double tr){
double c1,y1,b1;
int n;
b1=0;
for (n=1;n<101;n++){
c1=cx(th[n],tl,tr);
y1=th[n]*lx(th[n],tl,tr);
b1=b1+y1-c1;
}
return b1;
}
public static double cx(double th1,double tl,double tr){
double l1,w1,c1;
l1=lx(th1,tl,tr);
w1=(1-tl)*th1;
c1=w1*l1+tr;
return c1;
}
public static double lx(double th1,double tl,double tr){
double w1,l1;
w1=(1-tl)*th1;
l1=(w1-tr)/(2*w1);
if (l1<0)l1=0;
return l1;
}
public static double u(double c1,double x1){
double c2,x2,z2,u2;
c2=c1;
x2=x1;
z2=0;
if (c2<0.001)z2=
100;
if (x2>1)z2=100;
if (x2<0)z2=100;
if (z2>50)c2=0.01;
if (z2>50)x2=0.5;
u2=Math.log(c2)+Math.log(x2);
if (z2>50)u2=-
999;
return u2;
}
}
最終更新:2010年04月12日 16:16