アットウィキロゴ

pen02

import tool.readfile;
 
class rou{ 
 
String[] data=new String[50000]; 
double[][] prate=new double[200][10]; 
double mrate[][]=new double[100][100]; 
double wrate[][]=new double[100][100]; 
double drate[][]=new double[100][100]; 
double mrourate[][]=new double[100][100]; 
double wrourate[][]=new double[100][100]; 
double drourate[][]=new double[100][100]; 
int s,datanumber; 
int year,age; 
int n2; 
double n1; 
int m,n; 
 
void makedata(String file){ 
 
 
     readfile sub=new readfile();
        sub.makedata(file,"UTF-8");
        data=sub.data;
        datanumber=sub.datanumber;
 
 
 
 
for(s=1;s<datanumber+1;s++){ 
String[] x=data[s].split(","); 
m=Integer.parseInt(x[0]); 
n=Integer.parseInt(x[1]); 
prate[m][n]=Double.parseDouble(x[2]); 
} 
 
 
for (n=1;n<12;n++){ 
mrate[n][1]= prate[n][1]; 
mrate[n][2]= prate[n][2]; 
mrate[n][3]= prate[n][3]; 
mrate[n][4]= prate[n][4]; 
} 
 
 
for (n=1;n<12;n++){ 
wrate[n][1]= prate[n+11][1]; 
wrate[n][2]= prate[n+11][2]; 
wrate[n][3]= prate[n+11][3]; 
wrate[n][4]= prate[n+11][4]; 
} 
 
for (n=1;n<12;n++){ 
drate[n][1]= prate[n+22][1]; 
drate[n][2]= prate[n+22][2]; 
drate[n][3]= prate[n+22][3]; 
drate[n][4]= prate[n+22][4]; 
} 
 
 
for (year=6;year<12;year++){ 
for (age=15;age<70;age++){ 
n1 = (year - 6) / 6 ; 
n2 =(int)((age - 10) / 5); 
mrourate[year][age] = mrate[n2][1] + n1 * (mrate[n2][2]  - mrate[n2][1] ); 
wrourate[year][age] = wrate[n2][1] + n1 * (wrate[n2][2]  - wrate[n2][1] ); 
drourate[year][age] = drate[n2][1] + n1 * (drate[n2][2]  - drate[n2][1] ); 
} 
} 
 
for (year=7;year<18;year++){ 
for (age=15;age<70;age++){ 
n1 = (year - 12) / 6 ; 
n2 =(int)((age - 10) / 5); 
mrourate[year][age] = mrate[n2][2] + n1 * (mrate[n2][3]  - mrate[n2][2] ); 
wrourate[year][age] = wrate[n2][2] + n1 * (wrate[n2][3]  - wrate[n2][2] ); 
drourate[year][age] = drate[n2][2] + n1 * (drate[n2][3]  - drate[n2][2]); 
} 
} 
 
for (year=18;year<30;year++){ 
for (age=15;age<70;age++){ 
n1 = (year - 18) / 12 ; 
n2 =(int)((age - 10) / 5); 
mrourate[year][age] = mrate[n2][3] + n1 * (mrate[n2][4]  - mrate[n2][3] ); 
wrourate[year][age] = wrate[n2][3] + n1 * (wrate[n2][4]  - wrate[n2][3] ); 
drourate[year][age] = drate[n2][3] + n1 * (drate[n2][4]  - drate[n2][3] ); 
} 
}   
 
for (year=30;year<100;year++){ 
for (age=15;age<70;age++){ 
n1 = (year - 18) / 12 ; 
n2 =(int)((age - 10) / 5); 
mrourate[year][age] = mrate[n2][4] ; 
wrourate[year][age] = wrate[n2][4] ; 
drourate[year][age] = drate[n2][4] ; 
} 
} 
 
 
 
 
 
} 
 
}
最終更新:2014年07月31日 22:55