【Java开源代码栏目提醒】:网学会员为需要Java开源代码的朋友们搜集整理了d6r2F.java相关资料,希望对各位网友有所帮助!
import java.util.Random;
public class d6r2F
{
int ran1_idum;
static double r[] = new double[98];
static int ix1, ix2, ix3;
double ran1(int idum)
{
double rm1, rm2 ,t;
int m1, m2, m3, ia1, ia2, ia3, ic1, ic2, ic3, j;
boolean iff; iff=true;
m1 = 259200; ia1 = 7141; ic1 = 54773; rm1 = 0.0000038580247;
m2 = 134456; ia2 = 8121; ic2 = 28411; rm2 = 0.0000074373773;
m3 = 243000; ia3 = 4561; ic3 = 51349;
if ((idum < 0) || (iff == false))
{
iff = true;
ix1 = (ic1 - idum) % m1;
ix1 = (ia1 * ix1 + ic1) % m1;
ix2 = ix1 % m2;
ix1 = (ia1 * ix1 + ic1) % m1;
ix3 = ix1 % m3;
for (j = 1; j <= 97; j++)
{
ix1 = (ia1 * ix1 + ic1)% m1;
ix2 = (ia2 * ix2 + ic2)% m2;
r[j] = ((double)ix1 + (double)ix2 * rm2) * rm1;
}
idum = 1;
}
ix1 = (ia1 * ix1 + ic1) % m1;
ix2 = (ia2 * ix2 + ic2) % m2;
ix3 = (ia3 * ix3 + ic3) % m3;
j = 1 + (int)((97 * ix3) / m3);
if ((j > 97) || (j < 1))
{
System.out.println( "abnormal exit");
System.exit(1);
}
t = r[j];
r[j] = ((double)ix1 + (double)ix2 * rm2) * rm1;
ran1_idum = idum;
return t;
}
double fnc(double x1, double x2, double x3, double x4)
{
double temp;
temp = Math.sqrt(x1 * x1 + x2 * x2 + x3 * x3 + x4 * x4);
return temp;
}
}
上一篇:
d6r2.java
下一篇:
陕西农村基层公共卫生机构人力资源配置评价