Difference between revisions of "Control Structures"

From CompSciWiki
Jump to: navigation, search
Line 13: Line 13:
 
==[[Nesting]]==
 
==[[Nesting]]==
  
==[[Review Questions and Exercises]]==
+
==[[Control Structures Review Questions and Exercises|Review Questions and Exercises]]==
  
 
==Review Questions and Exercises==
 
==Review Questions and Exercises==

Revision as of 15:36, 20 March 2007


Wiki 1010 Table of Contents

Chapter #

Control Structures are blocks of code that force the computer to make a decision. Sometimes you will want your program to perform different tasks depending on certain boolean conditions. For example if you were writing a game you would probably find it very useful to be able to know when the user has won the game so that you could show a high scores page.

If control structures were not used then programs would begin at the first line and excecute every line of code in order, giving the same output every time. Imagine how boring Tetris would be if there was only one piece! Control structures allow you to change the order of execution, jumping from one section of code to another as needed.

  Write a Program a Day Case Studies





Table of Contents



The If-Statement

The If-Else Statement

Conditions

Nesting

Review Questions and Exercises

Review Questions and Exercises

The solutions to these exercises can be found here.

Review Questions

  1. Name the 3 different logical operators. What are the benefits of using logical operators?
  2. What is the proper way in Java to compare strings? Why?
  3. What are the results of the following logical operations?
    1. 'a' != 'b'
    2. (127-3*9) >= (97+8/4)
    3. "Hello" == "Hello"
  4. Write the truth table for the expression (X || Y) && Z


Exercises

1. Look at the code below. Clean it up so it uses the proper logical operators and proper use of if-else's.

if (x == 1)
{
  if (y == 1)
  {
    if (!!!!true)
    {
      System.out.println("X and Y are 1!");
    }
  }
}
if (x == 2)
{
  System.out.println("X is 2!");
}
if (x < 1)
{
  System.out.println("X is under 1 or over 2!");
}
if (x > 2)
{
  System.out.println("X is under 1 or over 2!");
}


2. Is the result of the following statement true or false?

String s1 = "test";
String s2 = "TEST";
String s3 = "test";

if (!(!(s1.equals(s2) && s1.equals(s3)) || s2.equals(s3)))
  System.out.println("The result is true");
else
  System.out.println("The result is false");

3. Write a program that will prompt a user to enter an integer. The program will determine whether the number is even or odd and print out the result. It will print out a different result if the number is negative. The program will continue until the user enters a 0. Also note that if the user enters a 0, the program will not print out anything other than that the program has finished.

4. Write a program that will prompt the user to enter a string. The program will print out whether or not the first character is a vowel or not.

Template loop detected: Template loop detected: