#include #include static unsigned long int x = 1; double f2() { x*=663608941; return(x*2.328306436538696e-10); } double f1() { static double am,bm,al; double u1,u2,v,w, a=.5, b=.2; am = a; bm = b; al = a + b; for(;;) { u1 = f2(); u2 = f2(); if ((0.2 * u2 + (u1 - 1)* u1 * u2 ) >= 0.01) continue; v = log(u1 / (1.0 - u1)) / .2; w = exp(v); if ((al * (log(al / (bm + w)) + v) - 1.4)< log(u1*u1*u2)) { printf("--------\n"); continue; } printf("%f \n", bm /(bm+w) ); return w; } } int main() { double r; printf("\n output:\n"); r=f1(); return 0; }