double formula, s1, v1, s2; double k; double kInc; // supposing initial values kInc = 0.00001; k = 0.0; s1 = -5.0; v1 = 2.0; s2 = 1.0; const double epsilon = 1.0E-6; for(int i = -10000; i < 400000; i++) { formula = s1 / (v1 + k) + s2; if( fabs(formula) < epsilon) { break; } k += kInc; } printf("\n\nResult: %f (i=%d, cycles: %d) => formula=%f\n\n", k, i, int(k/kInc), formula); // output // >> // Result: 3.000000 (i=290000, cycles: 300000) => formula=0.000000