go to previous page   go to home page   go to next page hear noise

Answer:

No — the user might want to see the value of the polynomial when x is 0.0. Any other value has the same problem. It is also dangerous to test for exact equality with double precision.


Testing the User's Response

In this program, no special number is suitable as a sentinel because any number is potential data. Because of this, there must be a prompt that asks if the user wants to continue, and another prompt that asks for data.

Here is an outline of the program:


class EvalPoly
{
  public static void main (String[] args )
  {

    double x;                      // a value to use with the polynomial
    String response = "y";         // "y" or "n"

    while ( response.equals("y") )    
    {
       // Get a value for x.

       // Evaluate the polynomial.

       // Print out the result.

       // Ask the user if the program should continue.
       // Put the answer in the String "response" points to
      
    }

  }
}

It is often useful to work on one aspect of a program at a time. Let us first look at the "prompting and looping" aspect and temporarily ignore the polynomial evaluation aspect.

The condition part of the while statement, response.equals("y") evaluates to true or false. Here is how this happens:


In other words, response.equals("y") asks: did the user type exactly a "y"?


QUESTION 16:

If the user types "yes" will the program continue?