import java.io.*;
class pen0315{
String str;
int n,mx;
String x3[]=new String[3];
String x4[]=new String[4];
String x5[]=new String[5];
String x8[]=new String[8];
String x14[]=new String[14];
String test1[]=new String[100*100];
String test2[]=new String[100*100];
String test3[]=new String[100*100];
String test4[]=new String[100*100];
String test5[]=new String[100*100];
int year,age,byear,car;
int cho;
double mh[][]=new double[100][100];
double fh[][]=new double[100][100];
double m4[][]=new double[100][100];
double f4[][]=new double[100][100];
double m5[][]=new double[100][100];
double f5[][]=new double[100][100];
double m2[][]=new double[100][100];
double f2[][]=new double[100][100];
double m3[][]=new double[100][100];
double f3[][]=new double[100][100];
double m1[][]=new double[100][100];
double f1[][]=new double[100][100];
double m2p[][]=new double[200][200];
double f2p[][]=new double[200][200];
double m3p[][]=new double[200][200];
double f3p[][]=new double[200][200];
double mw[]=new double[100];
double fw[]=new double[100];
double rate[]=new double[100];
double rev[]=new double[100];
double m2by[][]=new double[200][100];
double f2by[][]=new double[200][100];
double malpha[]=new double[100];
double mbeta[]=new double[100];
double mgamma[]=new double[100];
double falpha[]=new double[100];
double fbeta[]=new double[100];
double fgamma[]=new double[100];
double mtheta[]=new double[100];
double ftheta[]=new double[100];
double mis[][]=new double[100][51];
double mos[][]=new double[100][51];
double wmis[][]=new double[100][51];
double wmos[][]=new double[100][51];
double mnew1[]=new double[200];
double fnew1[]=new double[200];
double mnew2[]=new double[200];
double fnew2[]=new double[200];
double mnew3[]=new double[100];
double fnew3[]=new double[100];
double mnew[]=new double[200];
double fnew[]=new double[200];
double minx[][]=new double[100][100];
double finx[][]=new double[100][100];
double mout[][]=new double[100][100];
double fout[][]=new double[100][100];
double mtunew1[]=new double[200];
double ftunew1[]=new double[200];
double mtunew2[]=new double[200];
double ftunew2[]=new double[200];
double mtunew[]=new double[200];
double ftunew[]=new double[200];
double mtime1[]=new double[200];
double ftime1[]=new double[200];
double mtime2[]=new double[200];
double ftime2[]=new double[200];
double mtime[]=new double[200];
double ftime[]=new double[200];
double mwage1[]=new double[200];
double fwage1[]=new double[200];
double mwage2[]=new double[200];
double fwage2[]=new double[200];
double mwage[]=new double[200];
double fwage[]=new double[200];
double mtuwage1[]=new double[200];
double ftuwage1[]=new double[200];
double mtuwage2[]=new double[200];
double ftuwage2[]=new double[200];
double mtuwage[]=new double[200];
double ftuwage[]=new double[200];
double mtutime1[]=new double[200];
double ftutime1[]=new double[200];
double mtutime2[]=new double[200];
double ftutime2[]=new double[200];
double mtutime[]=new double[200];
double ftutime[]=new double[200];
double mrp[][]=new double[100][100];
double wrp[][]=new double[100][100];
double drp[][]=new double[100][100];
double msrate[][]=new double[100][100];
double wsrate[][]=new double[100][100];
double dsrate[][]=new double[100][100];
double mde[]=new double[116];
double fde[]=new double[116];
double b1[]=new double[116];
double b2[]=new double[116];
double b3[]=new double[116];
double b4[]=new double[116];
double c1[]=new double[116];
double c2[]=new double[116];
double c3[]=new double[116];
double c4[]=new double[116];
double m[][]=new double[100][100];
double f[][]=new double[100][100];
double kisoj[]=new double[100];
public static void main(String[] args) {
pen0315 test=new pen0315();
}
pen0315(){
cho=1900;
make04();
make05();
make69();
make08();
make09();
make10();
make47();
datainput14();
make14();
make16();
datainput151();
datainput152();
make15();
datainput18();
make18();
make19();
make20();
make21();
make22();
make23();
make24();
make25();
make26();
make27();
make28();
make29();
make30();
make31();
make32();
make33();
make34();
make35();
make36();
make37();
datainput381();
datainput382();
datainput383();
datainput384();
make41();
make42();
make43();
make44();
make45();
make46();
datainput491();
datainput492();
make49();
make50();
make51();
make56();
make72();
make73();
}
void make51(){
for (year=10;year<100;year++){
for (age=20;age<60;age++){
m1[year][age]=m[year][age]-m2[year][age]-m3[year][age]-m4[year][age]-m5[year][age];
f1[year][age]=f[year][age]-f2[year][age]-f3[year][age]-f4[year][age]-f5[year][age];
}
}
}
void make50(){
try{
BufferedReader br50 =new BufferedReader(new FileReader("gdata/共済3号.txt"));
for(n=0; n<95*40;n++){
str = br50.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br50.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<95*40; n++){
year=Integer.valueOf(test1[n]);
age=Integer.valueOf(test2[n]);
m5[year][age]=Double.valueOf(test3[n]);
f5[year][age]=Double.valueOf(test4[n]);
}
}
void make49(){
double ch,r1;
for (year=10;year<100;year++){
ch = 1.3;
if (year < 30)ch=1.3+0.18*(year - 30) / 25;
for (age=20;age<60;age++){
r1=f3p[8][age]/m2p[8][age];
f3[year][age]=rate[age]*m2[year][age]/ch;
}
}
}
void datainput491(){
try{
BufferedReader br491 =new BufferedReader(new FileReader("data/0902.txt"));
for(n=0; n<98*86;n++){
str = br491.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br491.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<98*86; n++){
year=Integer.valueOf(test1[n]);
age=Integer.valueOf(test2[n]);
m2p[year][age]=Double.valueOf(test3[n]);
f2p[year][age]=Double.valueOf(test4[n]);
}
}
void datainput492(){
try{
BufferedReader br492 =new BufferedReader(new FileReader("data/0903.txt"));
for(n=0; n<98*86;n++){
str = br492.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br492.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<98*86; n++){
year=Integer.valueOf(test1[n]);
age=Integer.valueOf(test2[n]);
m3p[year][age]=Double.valueOf(test3[n]);
f3p[year][age]=Double.valueOf(test4[n]);
}
}
void datainput381(){
try{
BufferedReader br381 =new BufferedReader(new FileReader("data/男子失権率.txt"));
for(n=0; n<116;n++){
str = br381.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br381.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<116; n++){
age=Integer.valueOf(test1[n]);
mde[age]=Double.valueOf(test2[n]);
}
}
void datainput382(){
try{
BufferedReader br382 =new BufferedReader(new FileReader("data/女子失権率.txt"));
for(n=0; n<116;n++){
str = br382.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br382.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<116; n++){
age=Integer.valueOf(test1[n]);
fde[age]=Double.valueOf(test2[n]);
}
}
void datainput383(){
try{
BufferedReader br383 =new BufferedReader(new FileReader("data/男子受給者.csv"));
for(n=0; n<116;n++){
str = br383.readLine();
x14=str.split(",");
test1[n]=x14[0];
test2[n]=x14[1];
test3[n]=x14[2];
test4[n]=x14[5];
test5[n]=x14[6];
}
br383.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<116; n++){
age=Integer.valueOf(test1[n]);
b1[age]=Double.valueOf(test2[n]);
b2[age]=Double.valueOf(test3[n]);
b3[age]=Double.valueOf(test4[n]);
b4[age]=Double.valueOf(test5[n]);
}
}
void datainput384(){
try{
BufferedReader br384 =new BufferedReader(new FileReader("data/女子受給者.csv"));
for(n=0; n<116;n++){
str = br384.readLine();
x14=str.split(",");
test1[n]=x14[0];
test2[n]=x14[1];
test3[n]=x14[2];
test4[n]=x14[5];
test5[n]=x14[6];
}
br384.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<116; n++){
age=Integer.valueOf(test1[n]);
c1[age]=Double.valueOf(test2[n]);
c2[age]=Double.valueOf(test3[n]);
c3[age]=Double.valueOf(test4[n]);
c4[age]=Double.valueOf(test5[n]);
}
}
void make46(){
double z1,z2;
for(byear=1998; byear<2035; byear++){
makemat(byear,falpha,fbeta,fgamma,ftheta,f2by);
makewage(byear,falpha,fbeta,fgamma,mtheta,f2by,fw);
z1=0;
z2=0;
for(car=1;car<25;car++){
z1 = z1 +car*(mis[64][car] + mos[64][car]);
z2 = z2 +car*(wmis[64][car]*mis[64][car] +wmos[64][car]*mos[64][car]);
}
if(z1>0)fwage1[byear-cho] = z2/z1;
}
}
void make45(){
double z1,z2;
for(byear=1998; byear<2035; byear++){
makemat(byear,malpha,mbeta,mgamma,mtheta,m2by);
makewage(byear,malpha,mbeta,mgamma,mtheta,m2by,mw);
z1=0;
z2=0;
for(car=1;car<25;car++){
z1 = z1 +car*(mis[64][car] + mos[64][car]);
z2 = z2 +car*(wmis[64][car]*mis[64][car] +wmos[64][car]*mos[64][car]);
}
if(z1>0)mwage1[byear-cho] = z2/z1;
}
}
void make47(){
double krate[]=new double[100];
double z1;
for(year=10; year<50; year++){
krate[year] = 1.05 - 0.05 * (double)(year - 10) / 40;
}
for(year=50; year<100; year++){
krate[year] = 1;
}
for(year=10; year<50; year++){
z1=0;
for(age=20; age<61; age++){
z1=z1+m[year][age]+f[year][age];
}
kisoj[year]=(double)z1/krate[year];
}
}
void make37(){
double z1,z2;
for(byear=1998; byear<2035; byear++){
makemat(byear,falpha,fbeta,fgamma,ftheta,f2by);
makewage(byear,falpha,fbeta,fgamma,mtheta,f2by,fw);
z1=0;
z2=0;
for(car=25;car<49;car++){
z1 = z1 +car*(mis[64][car] + mos[64][car]);
z2 = z2 +car*(wmis[64][car]*mis[64][car] +wmos[64][car]*mos[64][car]);
}
if(z1>0)fwage1[byear-cho] = z2/z1;
}
}
void make36(){
double z1,z2;
for(byear=1998; byear<2035; byear++){
makemat(byear,malpha,mbeta,mgamma,mtheta,m2by);
makewage(byear,malpha,mbeta,mgamma,mtheta,m2by,mw);
z1=0;
z2=0;
for(car=25;car<49;car++){
z1 = z1 +car*(mis[64][car] + mos[64][car]);
z2 = z2 +car*(wmis[64][car]*mis[64][car] +wmos[64][car]*mos[64][car]);
}
if(z1>0)mwage1[byear-cho] = z2/z1;
}
}
void makewage(int byear,double[] alpha,double[] beta,double[] gamma,double[] theta,double[][] popby,double[] wage){
double v,z1,z2,z3,z4,z5,z6,z7;
for(age=16;age<65;age++){
for(car=0;car<50;car++){
mis[age][car]=0;
mos[age][car]=0;
wmis[age][car]=0;
wmos[age][car]=0;
}
}
mis[15][1] = popby[byear-cho][age];
wmis[15][1]=wage[15];
for(age=16;age<65;age++){
z1= (1 - gamma[age - 1])* popby[byear-cho][age-1];
z2=popby[byear-cho][age] - z1;
if(z2 < 0)z2 = 0;
z3 =(1 - theta[age]) * z2;
z4 = theta[age] * z2;
mis[age][1] = z3;
wmis[age][1]=wage[age];
z5 = 0;
for(car=1;car<49;car++){
z5 = z5 + mis[age][car];
}
if(z5 == 0)z5 = 1;
v=(double)z4/z5;
if(v > 1)v = 1;
for(car=2;car<50;car++){
z6= (1 - gamma[age - 1]) *mis[age-1][car-1];
mis[age][car]=z6+v * mos[age-1][car-1];
z7 =wmis[age-1][car-1]*(1 - gamma[age - 1]) *mis[age-1][car-1];
z7=z7+wmos[age-1][car-1]*v * mos[age-1][car-1];
if(z7>0)z7=(double)z7/mis[age][car];
wmis[age][car]=(wage[age]+(car-1)*z7)/car;
}
for(car=1;car<49;car++){
z6 =(gamma[age - 1] - alpha[age - 1] - beta[age-1]) * mis[age-1][car] ;
mos[age][car]=z6+(1 - alpha[age - 1] - v) * mos[age-1][car];
z7 = wmis[age-1][car]*(gamma[age - 1] - alpha[age - 1] - beta[age-1]) * mis[age-1][car];
z7=z7+wmos[age-1][car]*(1 - alpha[age - 1] - v) * mos[age-1][car];
if(z7>0)z7=(double)z7/mos[age][car];
wmos[age][car]=z7;
}
}
}
void make04(){
try{
BufferedReader br04 =new BufferedReader(new FileReader("gdata/将来推計人口.txt"));
for(n=0; n<100*100; n++){
str = br04.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br04.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<100*100; n++){
year=Integer.valueOf(test1[n]);
age=Integer.valueOf(test2[n]);
m[year][age]=Double.valueOf(test3[n]);
f[year][age]=Double.valueOf(test4[n]);
}
}
void make69(){
double n1;
int n2;
double data5[][]=new double[33][4];
try{
BufferedReader br05 =new BufferedReader(new FileReader("data/労働力率.csv"));
for(n=0; n<33; n++){
str = br05.readLine();
x8=str.split(",");
test1[n]=x8[1];
test2[n]=x8[2];
test3[n]=x8[3];
test4[n]=x8[4];
}
br05.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<33; n++){
data5[n][0]=Double.valueOf(test1[n]);
data5[n][1]=Double.valueOf(test2[n]);
data5[n][2]=Double.valueOf(test3[n]);
data5[n][3]=Double.valueOf(test4[n]);
}
for(year=6; year<12; year++){
for(age=15; age<70; age++){
n1 =(year - 6)/ 6;
n2 = (int)((age - 15) / 5);
msrate[year][age]=data5[n2][0]+n1*(data5[n2][1]-data5[n2][0]);
wsrate[year][age]=data5[n2+10][0]+n1*(data5[n2+10][1]-data5[n2+10][0]);
dsrate[year][age]=data5[n2+21][0]+n1*(data5[n2+21][1]-data5[n2+21][0]);
}
}
for(year=12; year<18; year++){
for(age=15; age<70; age++){
n1 =(year - 12)/ 6;
n2 = (int)((age - 15) / 5);
msrate[year][age]=data5[n2][1]+n1*(data5[n2][2]-data5[n2][1]);
wsrate[year][age]=data5[n2+10][1]+n1*(data5[n2+10][2]-data5[n2+10][1]);
dsrate[year][age]=data5[n2+21][1]+n1*(data5[n2+21][2]-data5[n2+21][1]);
}
}
for(year=18; year<30; year++){
for(age=15; age<70; age++){
n1 =(year - 18)/ 12;
n2 = (int)((age - 15) / 5);
msrate[year][age]=data5[n2][2]+n1*(data5[n2][3]-data5[n2][2]);
wsrate[year][age]=data5[n2+10][2]+n1*(data5[n2+10][3]-data5[n2+10][2]);
dsrate[year][age]=data5[n2+21][2]+n1*(data5[n2+21][3]-data5[n2+21][2]);
}
}
for(year=30; year<100; year++){
for(age=15; age<70; age++){
n2 = (int)((age - 15) / 5);
msrate[year][age]=data5[n2][3];
wsrate[year][age]=data5[n2+10][3];
dsrate[year][age]=data5[n2+21][3];
}
}
}
void make05(){
double n1;
int n2;
double data5[][]=new double[33][4];
try{
BufferedReader br05 =new BufferedReader(new FileReader("data/労働力率.csv"));
for(n=0; n<33; n++){
str = br05.readLine();
x8=str.split(",");
test1[n]=x8[0];
test2[n]=x8[1];
test3[n]=x8[2];
test4[n]=x8[3];
}
br05.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<33; n++){
data5[n][0]=Double.valueOf(test1[n]);
data5[n][1]=Double.valueOf(test2[n]);
data5[n][2]=Double.valueOf(test3[n]);
data5[n][3]=Double.valueOf(test4[n]);
}
for(year=6; year<12; year++){
for(age=15; age<70; age++){
n1 =(year - 6)/ 6;
n2 = (int)((age - 15) / 5);
mrp[year][age]=data5[n2][0]+n1*(data5[n2][1]-data5[n2][0]);
wrp[year][age]=data5[n2+10][0]+n1*(data5[n2+10][1]-data5[n2+10][0]);
drp[year][age]=data5[n2+21][0]+n1*(data5[n2+21][1]-data5[n2+21][0]);
}
}
for(year=12; year<18; year++){
for(age=15; age<70; age++){
n1 =(year - 12)/ 6;
n2 = (int)((age - 15) / 5);
mrp[year][age]=data5[n2][1]+n1*(data5[n2][2]-data5[n2][1]);
wrp[year][age]=data5[n2+10][1]+n1*(data5[n2+10][2]-data5[n2+10][1]);
drp[year][age]=data5[n2+21][1]+n1*(data5[n2+21][2]-data5[n2+21][1]);
}
}
for(year=18; year<30; year++){
for(age=15; age<70; age++){
n1 =(year - 18)/ 12;
n2 = (int)((age - 15) / 5);
mrp[year][age]=data5[n2][2]+n1*(data5[n2][3]-data5[n2][2]);
wrp[year][age]=data5[n2+10][2]+n1*(data5[n2+10][3]-data5[n2+10][2]);
drp[year][age]=data5[n2+21][2]+n1*(data5[n2+21][3]-data5[n2+21][2]);
}
}
for(year=30; year<100; year++){
for(age=15; age<70; age++){
n2 = (int)((age - 15) / 5);
mrp[year][age]=data5[n2][3];
wrp[year][age]=data5[n2+10][3];
drp[year][age]=data5[n2+21][3];
}
}
}
void make08(){
try{
BufferedReader br08 =new BufferedReader(new FileReader("gdata/被用者.txt"));
for(n=0; n<92*55; n++){
str = br08.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br08.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<92*55;n++){
year=Integer.valueOf(test1[n]);
age=Integer.valueOf(test2[n]);
mh[year][age]=Double.valueOf(test3[n]);
fh[year][age]=Double.valueOf(test4[n]);
}
}
void make09(){
try{
BufferedReader br09 =new BufferedReader(new FileReader("gdata/共済年金被保険者.txt"));
for(n=0; n<95*55; n++){
str = br09.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br09.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0; n<95*55;n++){
year=Integer.valueOf(test1[n]);
age=Integer.valueOf(test2[n]);
m4[year][age]=Double.valueOf(test3[n]);
f4[year][age]=Double.valueOf(test4[n]);
}
}
void make10(){
for(year=5; year<100; year++){
for(age=15; age<70; age++){
m2[year][age] = mh[year][age]-m4[year][age];
f2[year][age] = fh[year][age]-f4[year][age];
}
}
}
void datainput14(){
double z;
try{
BufferedReader br14 =new BufferedReader(new FileReader("data/14.txt"));
for(n=0; n<55; n++){
str = br14.readLine();
x3=str.split(",");
test1[n]=x3[0];
test2[n]=x3[1];
test3[n]=x3[2];
}
br14.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0;n<55;n++){
z=Double.valueOf(test1[n]);
age=(int)z;
mw[age]=Double.valueOf(test2[n]);
fw[age]=Double.valueOf(test3[n]);
}
}
void make14(){
double g[]=new double[100];
double mwage[][]=new double[100][100];
double fwage[][]=new double[100][100];
double z1;
rate[5] = 14.288;
for(year=6;year<100;year++){
rate[year] = rate[year - 1] + 0.354;
if(rate[year]>18.3)rate[year] = 18.3;
}
g[10] = 1.08;
for(year=11;year<100;year++){
g[year] = (1 + 0.025)*g[year-1];
}
for(year=11;year<100;year++){
for(age=15;age<70;age++){
mwage[year][age] = 240 * g[year] * mw[age];
fwage[year][age] = 210 * g[year] * fw[age];
}
}
for(year=10;year<100;year++){
z1 = 0;
for(age=15;age<70;age++){
z1 = z1 + rate[year] * mwage[year][age] * m2[year][age] / 100;
z1 = z1 + rate[year] * fwage[year][age] * f2[year][age] / 100;
}
rev[year] = (double)z1 /10000;
}
}
void make16(){
for(year=8; year<100;year++){
for(age=15; age<70;age++){
byear=year-age+2000;
m2by[byear-cho][age]=m2[year][age];
}
}
}
void datainput151(){
double z;
try{
BufferedReader br151 =new BufferedReader(new FileReader("data/男子脱退力.csv"));
for(n=0; n<55; n++){
str = br151.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br151.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0;n<55;n++){
age=Integer.valueOf(test1[n]); ;
malpha[age]=Double.valueOf(test2[n]);
mbeta[age]=Double.valueOf(test3[n]);
mgamma[age]=Double.valueOf(test3[n]);
}
}
void datainput152(){
try{
BufferedReader br152 =new BufferedReader(new FileReader("data/再加入率.csv"));
for(n=0; n<50; n++){
str = br152.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br152.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0;n<55;n++){
age=Integer.valueOf(test1[n]); ;
mtheta[age]=Double.valueOf(test2[n]);
ftheta[age]=Double.valueOf(test3[n]);
}
}
void makemat(int byear,double[] alpha,double[] beta,double[] gamma,double[] theta,double[][] popby){
double v,z1,z2,z3,z4,z5;
for(age=16;age<65;age++){
for(car=0;car<50;car++){
mis[age][car]=0;
mos[age][car]=0;
}
}
mis[15][1] = popby[byear-cho][age];
for(age=16;age<65;age++){
z1= (1 - gamma[age - 1])* popby[byear-cho][age-1];
z2=popby[byear-cho][age] - z1;
if(z2 < 0)z2 = 0;
z3 =(1 - theta[age]) * z2;
z4 = theta[age] * z2;
mis[age][1] = z3;
z5 = 0;
for(car=1;car<49;car++){
z5 = z5 + mis[age][car];
}
if(z5 == 0)z5 = 1;
v=(double)z4/z5;
if(v > 1)v = 1;
for(car=2;car<50;car++){
mis[age][car] = (1 - gamma[age - 1]) *mos[age-1][car-1] + v * mos[age-1][car-1];
}
for(car=1;car<49;car++){
mos[age][car] = (gamma[age - 1] - alpha[age - 1] - beta[age-1]) * mis[age-1][car] + (1 - alpha[age - 1] - v) * mos[age-1][car];
}
}
}
void make15(){
double z1;
for(byear=1998; byear<2035; byear++){
makemat(byear,malpha,mbeta,mgamma,mtheta,m2by);
z1 = 0;
for(car=25;car<49;car++){
z1 = z1 + mis[64][car] + mos[64][car];
}
mnew1[byear-cho] = z1;
}
}
void datainput18(){
double z;
try{
BufferedReader br18 =new BufferedReader(new FileReader("data/女子脱退力.csv"));
for(n=0; n<55; n++){
str = br18.readLine();
x4=str.split(",");
test1[n]=x4[0];
test2[n]=x4[1];
test3[n]=x4[2];
test4[n]=x4[3];
}
br18.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0;n<55;n++){
age=Integer.valueOf(test1[n]); ;
falpha[age]=Double.valueOf(test2[n]);
fbeta[age]=Double.valueOf(test3[n]);
fgamma[age]=Double.valueOf(test3[n]);
}
}
void make18(){
double z1;
for(byear=1998; byear<2035; byear++){
makemat(byear,falpha,fbeta,fgamma,ftheta,f2by);
z1 = 0;
for(car=25;car<49;car++){
z1 = z1 + mis[64][car] + mos[64][car];
}
fnew1[byear-cho] = z1;
}
}
void make19(){
try{
BufferedReader br19 =new BufferedReader(new FileReader("gdata/男子被保険者.txt"));
for(n=0; n<55*50; n++){
str = br19.readLine();
x3=str.split(",");
test1[n]=x3[0];
test2[n]=x3[1];
test3[n]=x3[2];
}
br19.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0;n<55*50;n++){
age=Integer.valueOf(test1[n]); ;
car=Integer.valueOf(test2[n]); ;
minx[age][car]=Double.valueOf(test3[n]);
}
}
void make20(){
try{
BufferedReader br20 =new BufferedReader(new FileReader("gdata/女子被保険者.txt"));
for(n=0; n<55*50; n++){
str = br20.readLine();
x3=str.split(",");
test1[n]=x3[0];
test2[n]=x3[1];
test3[n]=x3[2];
}
br20.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0;n<55*50;n++){
age=Integer.valueOf(test1[n]); ;
car=Integer.valueOf(test2[n]); ;
finx[age][car]=Double.valueOf(test3[n]);
}
}
void make21(){
try{
BufferedReader br21 =new BufferedReader(new FileReader("gdata/男子待期者.txt"));
for(n=0; n<55*50; n++){
str = br21.readLine();
x3=str.split(",");
test1[n]=x3[0];
test2[n]=x3[1];
test3[n]=x3[2];
}
br21.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0;n<55*50;n++){
age=Integer.valueOf(test1[n]); ;
car=Integer.valueOf(test2[n]); ;
mout[age][car]=Double.valueOf(test3[n]);
}
}
void make22(){
try{
BufferedReader br22 =new BufferedReader(new FileReader("gdata/女子待期者.txt"));
for(n=0; n<55*50; n++){
str = br22.readLine();
x3=str.split(",");
test1[n]=x3[0];
test2[n]=x3[1];
test3[n]=x3[2];
}
br22.close();
}
catch(IOException e){ System.out.println("入出力エラーです。");}
for(n=0;n<55*50;n++){
age=Integer.valueOf(test1[n]); ;
car=Integer.valueOf(test2[n]); ;
fout[age][car]=Double.valueOf(test3[n]);
}
}
void makemat2(int byear,double[] alpha,double[] beta,double[] gamma,double[] theta,double[][] popby,double[][] pinx,double[][] pout){
double v,z1,z2,z3,z4,z5;
int stage;
stage =2008 - byear;
for(car=1;car<49;car++){
mis[stage][car] = pinx[stage][car];
mos[stage][car] = pout[stage][car];
}
for(age=stage+1;age<65;age++){
z1= (1 - gamma[age - 1])* popby[byear-cho][age-1];
z2=popby[byear-cho][age] - z1;
if(z2 < 0)z2 = 0;
z3 =(1 - theta[age]) * z2;
z4 = theta[age] * z2;
mis[age][1] = z3;
z5 = 0;
for(car=1;car<49;car++){
z5 = z5 + mis[age][car];
}
if(z5 == 0)z5 = 1;
v=(double)z4/z5;
if(v > 1)v = 1;
for(car=2;car<50;car++){
mis[age][car] = (1 - gamma[age - 1]) *mos[age-1][car-1] + v * mos[age-1][car-1];
}
for(car=1;car<49;car++){
mos[age][car] = (gamma[age - 1] - alpha[age - 1] - beta[age-1]) * mis[age-1][car] + (1 - alpha[age - 1] - v) * mos[age-1][car];
}
}
}
void make23(){
double z1;
for(byear=1950; byear<1990; byear++){
makemat2(byear,malpha,mbeta,mgamma,mtheta,m2by,minx,mout);
z1 = 0;
for(car=25;car<49;car++){
z1 = z1 + mis[64][car] + mos[64][car];
}
mnew2[byear-cho] = z1;
}
}
void make24(){
double z1;
for(byear=1950; byear<1990; byear++){
makemat2(byear,falpha,fbeta,fgamma,ftheta,f2by,finx,fout);
z1 = 0;
for(car=25;car<49;car++){
z1 = z1 + mis[64][car] + mos[64][car];
}
fnew2[byear-cho] = z1;
}
}
void make25(){
double z1;
for(byear=1998; byear<2035; byear++){
makemat(byear,malpha,mbeta,mgamma,mtheta,m2by);
z1 = 0;
for(car=1;car<25;car++){
z1 = z1 + mis[64][car] + mos[64][car];
}
mtunew1[byear-cho] = z1;
}
}
void make26(){
double z1;
for(byear=1998; byear<2035; byear++){
makemat(byear,falpha,fbeta,fgamma,ftheta,f2by);
z1 = 0;
for(car=1;car<25;car++){
z1 = z1 + mis[64][car] + mos[64][car];
}
ftunew1[byear-cho] = z1;
}
}
void make27(){
for(byear=1948;byear<2035;byear++){
mnew[byear-cho]=mnew1[byear-cho]+mnew2[byear-cho];
}
for(byear=1948;byear<2035;byear++){
fnew[byear-cho]=fnew1[byear-cho]+fnew2[byear-cho];
}
}
void make28(){
double z1;
for(byear=1950; byear<1990; byear++){
makemat2(byear,malpha,mbeta,mgamma,mtheta,m2by,minx,mout);
z1 = 0;
for(car=1;car<25;car++){
z1 = z1 + mis[64][car] + mos[64][car];
}
mtunew2[byear-cho] = z1;
}
}
void make29(){
double z1;
for(byear=1950; byear<1990; byear++){
makemat2(byear,falpha,fbeta,fgamma,ftheta,f2by,finx,fout);
z1 = 0;
for(car=1;car<25;car++){
z1 = z1 + mis[64][car] + mos[64][car];
}
ftunew2[byear-cho] = z1;
}
}
void make30(){
for(byear=1948;byear<2035;byear++){
mtunew[byear-cho]=mtunew1[byear-cho]+mtunew2[byear-cho];
}
for(byear=1948;byear<2035;byear++){
ftunew[byear-cho]=ftunew1[byear-cho]+ftunew2[byear-cho];
}
}
void make31(){
double z1,z2;
for(byear=1998; byear<2035; byear++){
makemat(byear,malpha,mbeta,mgamma,mtheta,m2by);
z1=0;
z2=0;
for(car=25;car<49;car++){
z1 = z1 + mis[64][car] + mos[64][car];
z2 = z2 +car*(mis[64][car]+mos[64][car]);
}
if(z1>0)z2=z2/z1;
mtime1[byear-cho]=z2;
}
}
void make32(){
double z1,z2;
for(byear=1998; byear<2035; byear++){
makemat(byear,falpha,fbeta,fgamma,ftheta,f2by);
z1=0;
z2=0;
for(car=25;car<49;car++){
z1 = z1 + mis[64][car] + mos[64][car];
z2 = z2 +car*(mis[64][car]+mos[64][car]);
}
if(z1>0)z2=z2/z1;
ftime1[byear-cho]=z2;
}
}
void make33(){
double z1,z2;
for(byear=1950; byear<1990; byear++){
makemat2(byear,malpha,mbeta,mgamma,mtheta,m2by,minx,mout);
z1=0;
z2=0;
for(car=25;car<49;car++){
z1 = z1 + mis[64][car] + mos[64][car];
z2 = z2 +car*(mis[64][car]+mos[64][car]);
}
if(z1>0)z2=z2/z1;
mtime2[byear-cho]=z2;
}
}
void make34(){
double z1,z2;
for(byear=1950; byear<1990; byear++){
makemat2(byear,falpha,fbeta,fgamma,ftheta,f2by,finx,fout);
z1=0;
z2=0;
for(car=25;car<49;car++){
z1 = z1 + mis[64][car] + mos[64][car];
z2 = z2 +car*(mis[64][car]+mos[64][car]);
}
if(z1>0)z2=z2/z1;
ftime2[byear-cho]=z2;
}
}
void make35(){
for(byear=1948;byear<2035;byear++){
mtime[byear-cho]=mtime1[byear-cho]+mtime2[byear-cho];
}
for(byear=1948;byear<2035;byear++){
ftime[byear-cho]=ftime1[byear-cho]+ftime2[byear-cho];
}
}
void make41(){
double z1,z2;
for(byear=1998; byear<2035; byear++){
makemat(byear,malpha,mbeta,mgamma,mtheta,m2by);
z1=0;
z2=0;
for(car=1;car<25;car++){
z1 = z1 + mis[64][car] + mos[64][car];
z2 = z2 +car*(mis[64][car]+mos[64][car]);
}
if(z1>0)z2=z2/z1;
mtutime1[byear-cho]=z2;
}
}
void make42(){
double z1,z2;
for(byear=1998; byear<2035; byear++){
makemat(byear,falpha,fbeta,fgamma,ftheta,f2by);
z1=0;
z2=0;
for(car=1;car<25;car++){
z1 = z1 + mis[64][car] + mos[64][car];
z2 = z2 +car*(mis[64][car]+mos[64][car]);
}
if(z1>0)z2=z2/z1;
ftutime1[byear-cho]=z2;
}
}
void make43(){
double z1,z2;
for(byear=1950; byear<1990; byear++){
makemat2(byear,malpha,mbeta,mgamma,mtheta,m2by,minx,mout);
z1=0;
z2=0;
for(car=1;car<25;car++){
z1 = z1 + mis[64][car] + mos[64][car];
z2 = z2 +car*(mis[64][car]+mos[64][car]);
}
if(z1>0)z2=z2/z1;
mtutime2[byear-cho]=z2;
}
}
void make44(){
double z1,z2;
for(byear=1950; byear<1990; byear++){
makemat2(byear,falpha,fbeta,fgamma,ftheta,f2by,finx,fout);
z1=0;
z2=0;
for(car=1;car<25;car++){
z1 = z1 + mis[64][car] + mos[64][car];
z2 = z2 +car*(mis[64][car]+mos[64][car]);
}
if(z1>0)z2=z2/z1;
ftutime2[byear-cho]=z2;
}
}
void make56(){
for(byear=1948;byear<2035;byear++){
mtutime[byear-cho]=mtutime1[byear-cho]+mtutime2[byear-cho];
}
for(byear=1948;byear<2035;byear++){
ftutime[byear-cho]=ftutime1[byear-cho]+ftutime2[byear-cho];
}
}
void make72(){
double z1;
for(age=60;age<70;age++){
z1 = 0 ;
for(car=25;car<50;car++){
z1 = z1 + minx[age][car] + mout[age][car];
}
mnew3[age] = z1 ;
}
}
void make73(){
double z1;
for(age=60;age<70;age++){
z1 = 0 ;
for(car=25;car<50;car++){
z1 = z1 + finx[age][car] + fout[age][car];
}
fnew3[age] = z1 ;
}
}
}
最終更新:2011年03月14日 23:53