dt = .000001 t = 0 epsilon = .000001 low = 81000000.0 high = 84000000.0 while abs(t - 3.036) > epsilon: c = (low + high)/2 a = 0 x = 6.371*(10**6) v = 0 t = 0 while x < 3.831606*(10**8): v += a*dt x += v*dt a = c + (6.67*(10**(-11))*(7.34767309*(10**22)/(3.84898*(10**8)-x)**2 - 5.972*(10**24)/(x**2))) t += dt if t > 3.036: low = c elif t < 3.036: high = c print c #c = 81757141.1133