https://jakerpomperada.com/square-and-cube-root-solver-in-python/