アットウィキロゴ

おじゅうn

package p5;
 
 
public class pro {
 
    int number,datanumber;
    double[][] rate=new double[22][11];
  double[] avg=new double[22];
 double[] delta=new double[22];
  int[] point=new int[22];
 
 double[] muxs=new double[11];
 double[] sigxs=new double[11];
 
  double[] mus=new double[11];
 double[] sigs=new double[11];
 
    public static void main(String[] args) {
        pro t=new pro();
    }
 
    pro(){
 
    double[][] count=new double[12][2001];     
 
 
 
    number=10;
 
    datanumber=21;
 
    int s;
    int tr,y;
    for(s=1;s<number+1;s++){
    for(tr=1;tr<datanumber+1;tr++){
    for(y=0;y<2001;y++){
    count[s][y]=count[s][y]+point[tr]*rate[tr][s]*f(y,avg[tr],delta[tr]);    
    }
    }
    }   
 
    for(s=1;s<number+1;s++){
 
   double a1=0;
   double a2=0;
   double a3=0;
   for(y=0;y<2001;y++){
   a1=a1+count[s][y];
   a2=a2+y*count[s][y]; 
    }
   if(a1>0)muxs[s]=a2/a1;
   a3=0;
   for(y=0;y<2001;y++){
   a3=a3+count[s][y]*(y-muxs[s])*(y-muxs[s]); 
    }
   if(a1>0)sigxs[s]=Math.sqrt(a3/a1);
    }
 
 
   for(s=1;s<number+1;s++){
 
   double a1=0;
   double a2=0;
   double a3=0;
   for(tr=1;tr<datanumber+1;tr++){
   a1=a1+point[tr]*rate[tr][s];
   double z=50*tr-25;
   if(tr==21)z=1200;
   a2=a2+z*point[tr]*rate[tr][s];; 
    }
   if(a1>0)mus[s]=a2/a1;
   a3=0;
   for(tr=1;tr<datanumber+1;tr++){
   double z=50*tr-25;
   if(tr==21)z=1200;
   a3=a3+(z-mus[s])*(z-mus[s])*point[tr]*rate[tr][s]; 
    }
   if(a1>0)sigs[s]=Math.sqrt(a3/a1);
    }
 
 
 
 
    }
 
     double f(double x,double mup,double sigp){
double pi,f1,f2;
 
        pi=Math.PI;
 
        f2=Math.sqrt(2*pi*sigp*sigp);
        f1=-(x-mup)*(x-mup)/(2*sigp*sigp);
 
        return Math.exp(f1)/f2;
}
 
}
 
最終更新:2017年01月12日 05:12