220 likes | 406 Views
Introduction to Programming with Java, for Beginners. Control Structures. Sequential Control Flow. Consists of just a list of commands to be done in order Welcome to Dr. Java > int x = 2; > int squareOfX = x * x; > System.out.println(x); //Or just type: squareOfX 2.
E N D
Introduction to Programmingwith Java, for Beginners Control Structures
Sequential Control Flow • Consists of just a list of commands to be done in order Welcome to Dr. Java > int x = 2; > int squareOfX = x * x; > System.out.println(x); //Or just type: squareOfX 2
What are control Structures ? • You can’t do very much if your program consists of sequential control flow • The program cannot choose whether or not to perform a command • The program cannot perform the same command more than once • Such programs are extremely limited! • Control structures allow a program to base its behavior on the values of variables
Recap: Boolean • Boolean is one of the eight primitive types • Booleans are used to make yes or no decisions • All control structures use Booleans • There are exactly two Boolean values, true (“yes”) and false (“no”) • Boolean, true, and false are all lowercase • Boolean variables are declared like any other kind of variable: • Booleanhungry; • booleanpassingGrade; • booleantaskCompleted= false;
Numeric & Boolean Comparisons • The following comparisons each give a Boolean result: (25 > 24) && (12 == 13) //results tofalse (25 > 24) || (12 == 13) //results totrue
Conditionals (“if” statements) • An “if” statement is a flow control statement • It is also called a conditional, or a branch • We’ll see several “flavors” • An “if” all by itself • An “if” with an “else” part • An “if” with an “else if” part
“if” statement if (condition){ statement(s) } If the condition is true, then the statement(s) (i.e. instructions) will be executed. Otherwise, it/they won’t.
The infamous “dangling else” • An else is paired with the last else-less if, regardless of spacing, unless { } dictate otherwise.
A “Loop” • A simple but powerful mechanism for “making lots of things happen!” • Performs a statement (or block) over & over • Usually set up to repeat an action until some condition is satisfied, e.g. • Run an application until user hits “quit” button • Read characters until end of file reached • Deal card hands until game over
Syntax of the while statement • condition is a true/false (boolean) expression • If condition is initially false, the statement is never executed • If condition is true, statement is executed and condition is re-evaluated • The statement should eventually make the loop stop while (condition){ statement(s) }
A while Loop to Print Numbers // Print the numbers 1 thru 10 int x = 1; while (x <= 10){ System.out.println(x); x = x + 1; }
AnInfinite Loop // Faulty attempt to print 1 thru 10 int x = 1; while (x <= 10){ System.out.println(x); }
More Infinite Loops // Some infinte loops are intentional while (true){ statement(s) } // Others are not int x = 5; while (x < 10){ statement(s) which don’t change x }
Pseudocode and Loops Pseudocode is an informal, english-like, code-like way Of sketching out what you want your code to do. initialize game while( the game isn’t over){ process player input update game state determine if game should end } if game should be saved save game quit
Compute Square of first 10 numbers //In Square.java int number = 1; int squareOfNumber = 0; while (number <= 10) { squareOfNumber = number * number; System.out.println(number + " " + squareOfNumber); number = number + 1; }
For Loop for (init; end-test; re-init){ statement } • Executes loop body as long as end-test evaluates to TRUE • Initialization and re-initialization code included in loop statement • Note: Test is evaluated before executing loop body
While vs. For Note: For loops are used generally for bounded iteration
Indentation • if(x<10){___x=x+1;} else{___x=x-1;} • while(x>0){___System.out.println(x);___x=x-1;} • Recommended indentation is from 2 to 4 spaces, but must be consistent throughout the program • Most important style rule: If you are modifying or adding to an existing program, keep to the original style (whatever it may be)