Ok I have tried a few ways to get this loop to terminate before using the ending variable in the function but I cannot seem to figure it out. This is just my latest attempt. I want this program to end when the user enters 0 but it always returns a square root for 0 (which of course is 0) before terminating. Did I really forget how to do this much while on vacation?
#include <iostream>
#include <cmath>
using namespace std;
void wierdsquareroot (double x)
{
cout << "The square root is " << sqrt(x) << endl;
}
int main () // Program calculates the square root of a number
{
double num;
do
{
if (num != 0)
{
cout << "Enter a number (a double): "; cin >> num;
wierdsquareroot (num);
}
}while (num != 0);
}