double p=(400*(365-39)+97)/146097.;
for(int i=0;i<=38;i++){
 p*=400.*(365-i)/146097;
}
p=1-p;
System.out.println("p="+p);
でやってみると
0.8940045686978787
になった