package base3;
public class pro {
double[] p=new double[9];
int[] base=new int[4];
int out;
int point;
int s,hit;
public static void main(String[] args) {
pro test=new pro();
}
pro(){
p[1]=0.1;
p[2]=0.2;
p[3]=0.3;
p[4]=0.4;
p[5]=0.6;
p[6]=0.7;
p[7]=0.8;
p[8]=1;
point=0;
out=0;
for(s=1;s<4;s++){
base[s]=0;
}
int mode;
mode=0;
while(mode<50){
trial();
change();
if(out>2)mode=100;
}
System.out.println(point);
}
void change(){
if(hit==1)play_1();
if(hit==2)play_2();
if(hit==3)play_3();
if(hit==4)play_4();
if(hit==5)play_5();
if(hit==6)play_6();
if(hit==7)play_7();
if(hit==8)play_8();
}
void play_1(){
if(base[3]==1)point=point+1;
if(base[3]==1)base[3]=0;
if(base[2]==1)base[3]=1;
if(base[2]==1)base[2]=0;
if(base[1]==1)base[2]=1;
if(base[1]==1)base[1]=0;
base[1]=1;
}
void play_2(){
if(base[3]==1)point=point+1;
if(base[3]==1)base[3]=0;
if(base[2]==1)point=point+1;
if(base[2]==1)base[2]=0;
if(base[1]==1)base[3]=1;
if(base[1]==1)base[1]=0;
base[2]=1;
}
void play_3(){
if(base[3]==1)point=point+1;
if(base[3]==1)base[3]=0;
if(base[2]==1)point=point+1;
if(base[2]==1)base[2]=0;
if(base[1]==1)point=point+1;
if(base[1]==1)base[1]=0;
base[3]=1;
}
void play_4(){
if(base[3]==1)point=point+1;
if(base[3]==1)base[3]=0;
if(base[2]==1)point=point+1;
if(base[2]==1)base[2]=0;
if(base[1]==1)point=point+1;
if(base[1]==1)base[1]=0;
point=point+1;
}
void play_5(){
base[1]=base[1]+1;
if(base[1]==2)base[2]=base[2]+1;
if(base[1]==2)base[1]=1;
if(base[2]==2)base[3]=base[3]+1;
if(base[2]==2)base[2]=1;
if(base[3]==2)point=point+1;
if(base[3]==2)base[3]=1;
}
void play_6(){
out=out+1;
}
void play_7(){
out=out+1;
}
void play_8(){
if(base[3]==1)point=point+1;
if(base[3]==1)base[3]=0;
if(base[2]==1)base[3]=1;
if(base[2]==1)base[2]=0;
if(base[1]==1)base[2]=1;
if(base[1]==1)base[1]=0;
out=out+1;
}
void trial(){
double p1;
int s;
p1=Math.random();
hit=1;
for(s=1;s<9;s++){
if(p1>p[s])hit=s+1;
}
}
}
最終更新:2014年04月01日 15:58