That didn't change anything that I can see. The answer still comes out to -1.#INF. Even when I try sqroot(16) I get the same answer (-1.#INF not 4). Why would I change TOLERANCE to 100? Since the program has to have a tolerance of .000001, would I have to use #include<iomanip> and setprecision(6)? I forgot how to define a tolerance..