Reading:
if
Statements
What do the following code segments do. Consider different values for the variable
guess
?
int guess = 3; // 1 if (guess <= 5) { println("The Cat in the Hat"); } // 2 if (guess == 5) { println("Hop on Pop"); } else { println("Horton Hears a Who"); } // 3 if (guess != 5) println("Green Eggs and Ham"); // 4 if (guess <= 5) println("The Cat in the Hat"); println("Comes Back"); // 5 if (1 < guess < 5) { println("And to Think that I Heard it on Mulberry Street"); } // 6 if (guess = 5) { println("How the Grinch Stole Christmas"); } // 7 if (guess == 5); println("The Lorax");
Explain what happens with these statements and why. Are there compile-time errors, run-time errors, logic errors? If the statement doesn't work as one might expect, modify it so that it does.
Now, declare and initialize a string variable,
guess
and try to write selection statements that do the following:
guess
is equal to “mike”, print “Mike Mulligan and his Steam
Shovel”
guess
is equal to “katy”, print “Katy and the Big Snow”, if it is
equal to “maybelle” print “Maybelle the Cable Car”, otherwise, print “The Little
House”.
Vary the value of
guess
to assure yourself that your statements handle all cases properly. Note that you might consider programming your
equivalence conditions as either
guess == "mike"
or as
guess.equals("mike")
. Which of these forms works appropriately? Why? See Chapter 3, Section 3.3.5 for details on this issue.
switch
Statement
Skip this section for now, we’ll return to it later in the course.