// もちろん落ちるけど #include using namespace std; typedef double Double; #define double long double const double EPS = 1e-12; double a,b,t; double mylog(double x){ return log(x); double i=1; // (i.e. not 3) double logx = 0 ; double ty = (x-1)/(x+1),tty; do { logx = logx + ty / i; tty = ty ; ty = (ty * ((x-1)/(x+1)) * ((x-1)/(x+1))); i = i + 2 ; } while(tty - ty > EPS ); return 2 * logx; } const double e = 2.718281828459045235360287471352662497757247093699; double myexp(double x){ return exp(x); int intp = (int)x; double realp = x - intp; double ans1 = 1; for(int i = 0 ; i < intp ; i++){ ans1 *= e; } double ans2 = 0; double den = 1; double num = 1; double f = 1; for(int i = 1 ; i <= 20 ; i++){ ans2 += num / den; den *= i; num *= realp; } return ans1 * ans2; } double f(double m){ return a * m + b * mylog(m) - mylog(t); } double fd(double x){ return a + b / x; } double solve(){ double x = 0.0001; for(int i = 0 ; i < 16 ; i++){ x = x - f(x) / fd(x); } return x; } int main(){ //cout << mylog(10) << " " << mylog(e*e) << endl; //printf("%.16lf\n",(Double)myexp(1.9)); int n; cin >> n; for(int i = 0 ; i < n ; i++){ scanf("%Lf%Lf%Lf",&a,&b,&t); printf("%.12lf\n",(Double)myexp(solve())); //cout << solve(a,b,t) << endl; } }