アットウィキロゴ

産業連関表5

package ren;
 
 
public class pro {
 
     int number,s,ip,ou;
 
    double[][] x=new double[3][3];
     double[] y=new double[3];
     double[] ex=new double[3];
     double[] im=new double[3];
 
    double x1;
 
     double[] c=new double[3];
    double[][] rate=new double[3][3];
     double[] alpha=new double[3];
 
      double[] ys=new double[3];
      double[] ims=new double[3];
       double[] cs=new double[3];
 
 
    public static void main(String[] args) {
        pro test=new pro();
    }
 
  pro(){  
 
      number=2;
 
      x[1][1]=20;
      x[1][2]=30;
      x[2][1]=30;
      x[2][2]=40;
      y[1]=100;
      y[2]=200;
      ex[1]=10;
      ex[2]=5;
      im[1]=23;
      im[2]=7;
 
      for(s=1;s<number+1;s++){
      x1=0;
      for(ip=1;ip<number+1;ip++){
      x1=x1+x[s][ip];         
      }
      c[s]=y[s]+im[s]-ex[s]-x1;  
      }
 
      for(ou=1;ou<number+1;ou++){
      for(ip=1;ip<number+1;ip++){
      rate[ou][ip]=x[ou][ip]/y[ou];         
      }
      }
 
      double x1;
      for(s=1;s<number+1;s++){
      x1=0;
      for(ou=1;ou<number+1;ou++){
      x1=x1+x[ou][s]; 
      }
      alpha[s]=im[s]/(c[s]+x1); 
      }
 
 
      ys=y;
      cs=c;
      ims=im;
 
      cs[2]=cs[2]+10;
 
      sol();
 
 
      System.out.println(ys[1]+","+ys[2]);
 
 
 
 
 
  }
 
  void sol(){
 
      int t;
 
      t=0;
      while(t<50){
      cal();
      t=t+1;
      }
 
  }
 
void cal(){
 
 double[] yp=new double[3];
 double[] imp=new double[3];
 int s;
 double y1,x1;
 
 for(s=1;s<number+1;s++){
 y1=ex[s]-ims[s]+cs[s]; 
 for(ou=1;ou<number+1;ou++){
 y1=y1+rate[ou][s]*ys[ou];
 }
 yp[s]=y1;
 }
 
 for(s=1;s<number+1;s++){
 x1=cs[s]; 
 for(ou=1;ou<number+1;ou++){
 x1=x1+rate[ou][s]*ys[ou];
 }
 imp[s]=alpha[s]*x1;
 }
 
 ims=imp;
 ys=yp;
 
}
 
}
 
最終更新:2014年02月03日 01:54