Fundamentals of (Java) Programming 
Khirulnizam Abd Rahman 
0129034614 (WhatsApp/SMS) 
Khirulnizam@gmail.com 
KERUL.net
About Khirulnizam 
Lecturer of Computer Science, Faculty of Information Science and 
Technology, Selangor International Islamic University College 
(KUIS) – since 2000. 
Codes in blog.kerul.net 
Programming background: C, Java, PHP. 
Apps in Google Play 
M-Mathurat – 200K ( bit.ly/m-mathurat ) 
Peribahasa Dictionary – 20K ( bit.ly/pbahasa) 
mDictionary – open-sourced ( bit.ly/m-dictionary ) 
Hijrah Rasul – bit.ly/hijrah-rasul 
SmartSolat – bit.ly/smartsolat 
Apps in Windows Store 
Hijrah Rasul – bit.ly/hijrah-en 
Peribahasa Dictionary 
2 http://blog.kerul.net 11/28/14
Course Synopsis 
This course is the continuation of the previous course (Algorithm 
and Problem Solving). It introduces complex flow control, 
method, array, class design, file and file I/O. 
Objectives: At the end of this course, students should be able 
to; 
write and apply complex control structure. 
create and invoke methods in programs. 
declare, create and apply arrays and classes. 
retrieve from and write data into another file. 
Java Programming: From Problem Analysis to 
3 Program Design, 3e
Assessment 
Java Programming: From Problem Analysis to 
4 Program Design, 3e
Main Text 
Liang Y. Daniel. Introduction to Java Programming, Eight 
Edition, 2011, Pearson 
 F. Joyce. Java Programming, 6th Edition, 2011, Course 
Technology 
Tool: JDK & Eclipse Java IDE 
Java Programming: From Problem Analysis to 
5 Program Design, 3e
Control Structure I
Control Structures 
A computer can process a program in three(3) ways : 
Sequence (line by line) 
Selection or choice (branch) 
Repetition
Sequence Structure 
Start at the beginning and follows the statement in order. 
start 
statement1 
statement2 
… 
Statement-n 
End
Selection Structure 
Statement executions is depending on one or more condition 
start 
statement1 
statement3 Fcondition T 
statement2 
Statement-n 
End
Repetition Structure 
Same statement is repeated in a number of times depending 
on one or more condition. 
start 
statement1 
statement2 
condition 
Statement-n 
End 
T 
F
Conditional Expression Consider the following statement 
If (score is greater than or equal to 90) 
grade is A 
If (temperature is greater than 50) 
display “Its Hot” 
Conditional 
expression 
Grade is A only if score 
>=90 
Display Its Hot only if the 
temperature > 50
Logical Expression 
Write the logical expression for the following 
1. yourAge is greater than 50. 
2. The value of myAge is not 0. 
3. y is between 20 and 100 
4. height is between 1.5 and 2.0.
Logical Expression 
Use Logical & comparison operator to construct the 
logical expression 
1. yourAge > 50 
2. myAge != 0 
3. y > 20 && y <100 
4. height > 1.5 && height < 2.0.
Logical Expression 
Evaluate the following expression. Given x is 5 and y is 
200. 
1. x != 12 
2. y < 100 
3. x == 5 
4. y == x*40 
5. x >=5 && x <=5 
6. y == 200 || y ==100 
7. x == 10 || x != 5
Logical Expression 
Evaluate the following expression. Given x is 5 and y is 200. 
1. x != 12 
2. y < 100 
3. x == 5 
4. y == x*40 
5. x >=5 && x <=5 
6. y == 200 || y ==100 
7. x == 10 || x != 5
Selection Structure 
There are 2 types of Selection Structure 
If statement 
Switch statement
Selection Structure – If Statement 
There are 3 types of if statement 
One-way selection : if 
Two-way selection : if - else 
Multiple-way selection : if – else if - else
If Statement : One-Way IF 
The Syntax 
If (condition) 
statement; 
if (condition) 
{ 
statement1; 
statement2; 
} 
Only one 
statement 
More than one 
statement
If Statement : One-Way If 
If (condition) 
statement1; 
statement2; 
T F 
If (mark > 50) 
F 
System.out.println(“GOOD!!”); 
System.out.println(“THANK YOU”); 
Output : 
THANK YOU 
Mark = 34
If Statement : One-Way If 
If (condition) 
statement1; 
statement2; 
T F 
If (mark > 50) 
Mark = 60 
T 
System.out.println(“GOOD!!”); 
System.out.println(“THANK YOU”); 
Output : 
GOOD!! 
THANK YOU
If Statement : One-Way If 
If (mark > 50){ 
Mark = 45 
F 
System.out.println(“GOOD!!”); 
System.out.println(“GRAGE = A!!”); 
} 
System.out.println(“THANK YOU”); 
Output : 
THANK YOU
If Statement : One-Way If 
If (mark > 50){ 
Mark = 60 
T 
System.out.println(“GOOD!!”); 
System.out.println(“GRAGE = A!!”); 
} 
System.out.println(“THANK YOU”); 
Output : 
GOOD!! 
GRADE = A 
THANK YOU
If Statement : Two-Way IF 
The Syntax 
if (condition) 
statement1; 
else 
statement2; 
statement3; 
Only one statement 
for each
If Statement : Two-Way IF 
The Syntax 
if (score > 50) 
F Mark = 34 
System.out.println(“GOOD!!”); 
else 
System.out.println(“BAD!!”); 
System.out.println(“THANK YOU”); 
Output : 
BAD!! 
THANK YOU
If Statement : Two-Way IF 
The Syntax 
if (score > 50) 
T Mark = 60 
System.out.println(“GOOD!!”); 
else 
System.out.println(“BAD!!”); 
System.out.println(“THANK YOU”); 
Output : 
GOOD!! 
THANK YOU
If Statement : Two-Way IF 
The Syntax 
if (condition) 
{ 
statement1; 
statement2; 
} 
else 
{ 
Statement3; 
Statement4; 
} 
Statement5; 
More than one 
statement
If Statement : Two-Way IF 
The Syntax 
if (score > 50){ 
T Mark = 60 
System.out.println(“GOOD!!”); 
System.out.println(“GRADE = A!!”);} 
else 
System.out.println(“BAD!!”); 
System.out.println(“THANK YOU”); 
Output : 
GOOD!! 
GRADE = A 
THANK YOU
If Statement : Two-Way IF 
The Syntax 
if (score > 50){ 
F Mark = 40 
System.out.println(“GOOD!!”); 
System.out.println(“GRADE = A!!”);} 
else 
System.out.println(“BAD!!”); 
System.out.println(“THANK YOU”); 
Output : 
BAD!! 
THANK YOU
If Statement : Multiple-Way IF 
The Syntax 
if (condition) 
statement1; 
else if (condition){ 
statement2; 
statement3;} 
else if (condition) 
statement4; 
else if (condition) 
statement5; 
else { 
statement6; 
statement7;} 
Use braces if there 
are more than one 
statement in a group
If Statement : Multiple-Way IF 
The Syntax 
if (mark > 70) 
grade = “A”; 
else if (mark > 60 && mark <= 70){ 
grade = “B”; 
mark = mark + 3;} 
else if (mark > 50 && mark <=60) 
grade = “C”; 
else if (mark > 35 && mark <=50) 
grade = “D”; 
else { 
grade = “F” 
message = “FAIL!!!”} 
Don’t use 
60 < mark <=70 x
Output : 
Grade = F 
If Statement : Multiple-Way IF 
if (mark > 70) 
grade = “A”; 
F Mark = 34? 
F 
else if (mark > 60 && mark <= 70){ 
grade = “B”; 
mark = mark + 3;} 
F 
else if (mark > 50 && mark <=60) 
grade = “C”; 
else if (mark > 35 && mark <=50) 
grade = “D”; 
else { 
grade = “F” 
message = “FAIL!!!”} 
T 
System.out.println(“Grade = “ + grade);
If Statement : Multiple-Way IF 
if (mark > 70) 
grade = “A”; 
F Mark = 65? 
T 
else if (mark > 60 && mark <= 70){ 
grade = “B”; 
mark = mark + 3;} 
else if (mark > 50 && mark <=60) 
grade = “C”; 
else if (mark > 35 && mark <=50) 
grade = “D”; 
else { 
grade = “F” 
message = “FAIL!!!”} 
Output : 
Grade = B 
System.out.println(“Grade = “ + grade);
Selection Structure : Switch 
switch(expression) { //start switch 
case value1: 
statement1; 
break; 
case value2: 
statement2; 
statement3; 
break; 
case value3: 
statement4; 
break; 
… 
default: 
statement-n; 
} // end switch 
use colon 
not semicolon
Selection Structure : Switch 
switch(month) { //start switch 
case 1: 
Name = “January”; 
break; 
case 2: 
name = “February”; 
break; 
case 3: 
name = “March”; 
break; 
… 
default: 
name = “ Not available”; 
} // end switch 
System,out.println(“Month = “ + name); 
Month = 2 
F 
T
C1 - COMPLEX FLOW CONTROL 
FUNDAMENTALS OF PROGRAMMING 
DTCP 2023
NESTED IF STATEMENT 
SYNTAX 
if (Boolean_Expression_1) 
if (Boolean_Expression_2) 
Statement_1) 
else 
Statement_2
Nested Statements 
Subtly different forms 
First Form 
if (a > b) 
{ 
if (c > d) 
e = f 
} 
else 
g = h; 
Second Form 
if (a > b) 
if (c > d) 
e = f 
else 
g = h; 
// oops
What is the output? Any difference??? 
if ( x < y) 
if (x < z) 
System.out.println("Hello"); 
else 
System.out.println("Good bye"); 
if ( x < y){ 
if (x < z) 
System.out.println("Hello"); 
}else 
Good bye 
System.out.println("Good bye"); 
Nested if statement 
No output given
The Nested-if Statement 
The then and else block of an if statement can contain any valid 
statements, including other if statements. An if statement 
containing another if statement is called a nested-if statement. 
39 
if (testScore >= 70) { 
if (studentAge < 10) { 
System.out.println("You did a great job"); 
} else { 
System.out.println("You did pass"); //test score >= 
70 
} //and age >= 10 
} else { //test score < 70 
System.out.println("You did not pass"); 
}
Control Flow of Nested-if Statement 
false inner if 
messageBox.show 
("You did not 
pass"); 
40 
messageBox.show 
("You did not 
pass"); 
false 
testScore >= 70 
? 
testScore >= 70 
? 
messageBox.show 
("You did pass"); 
messageBox.show 
("You did pass"); 
true 
studentAge < 10 
? 
studentAge < 10 
? 
true 
messageBox.show 
("You did a great 
job"); 
messageBox.show 
("You did a great 
job");
Nested if-else Statements 
An if-else statement can contain any sort of statement 
within it. 
In particular, it can contain another if-else statement. 
An if-else may be nested within the "if" part. 
An if-else may be nested within the "else" part. 
An if-else may be nested within both parts.
Nested Statements 
Syntax 
if (Boolean_Expression_1) 
if (Boolean_Expression_2) 
Statement_1) 
else 
Statement_2) 
else 
if (Boolean_Expression_3) 
Statement_3) 
else 
Statement_4);
Nested Statements 
Each else is paired with the nearest unmatched if. 
If used properly, indentation communicates which if goes 
with which else. 
Braces can be used like parentheses to group statements.
TRACE THE OUTPUT 
public class test{ 
public static void main(String[] args){ 
int a=4; 
for (int i=1; i<a;i++ ){ 
for (int j=1; j<=i;j++ ){ 
System.out.print("*"); 
} 
System.out.println(""); 
} 
} 
* ** 
***
EXERCISE 
Construct a simple program that apply nested if else statement 
follow the rules given. 
Score Grade 
90 <= score A 
80 <= score < 90 B 
70 <= score < 80 C 
60 <= score < 70 D 
Score < 60 F 
Example: 
If student score is 99 then display the grade which is A to student.
46 
Nested if Statements 
The statement executed as a result of an if statement or 
else clause could be another if statement 
These are called nested if statements 
See MinOfThree.java (page 227) 
An else clause is matched to the last unmatched if (no 
matter what the indentation implies) 
Braces can be used to specify the if statement to which an 
else clause belongs
Nested Control Structures 
for loops can be found within other for loops 
47
Example 1 
for (int i = 1; i <= 5; i++) 
{ 
for (int j = 1; j <= i; j++) 
System.out.print(" *"); 
System.out.println(); 
} 
48 
Output: 
* 
** 
*** 
**** 
*****
Example 2 
What will be the value of after each of the following nested 
loops is executed? 
for (int i = 1; i < 4; i++){ 
for (int j = 1; j < 4-i; j++){ 
System.out.print(" *"); 
} System.out.println(); 
} 
49 
Output: 
** 
*
Example 3 
What will be the value of after each of the following nested 
loops is executed? 
int sum = 0; 
for (int i = 0; i<=2; i++) 
{ for (int j = 0; j<=2; j++) 
{ sum = sum + i; 
} 
}System.out.println(sum); 
50 
Output: 
9
Example 4 
What does the following program segment print? 
for (int f = 0; f < 3; ++f){ 
for (int g = 0; g < 2; ++g){ 
System.out.print(f); 
System.out.print(g); 
} 
} 
51 
Output: 
000110112021
Nested Loops 
Suppose you wanted to print the following table: 
for (int row = 1; row <= 4; row++) { // For each of 4 rows 
for (int col = 1; col <= 9; col++) // For each of 9 columns 
System.out.print(col * row + "t"); // Print 36 numbers 
System.out.println(); // Start a new row 
} // for row 
1 2 3 4 5 6 7 8 9 
2 4 6 8 10 12 14 16 18 
3 6 9 12 15 18 21 24 27 
4 8 12 16 20 24 28 32 36 
• You could use a nested for loop. The outer loop 
prints the four rows and in each row, the inner loop 
prints the 9 columns.
Nested Loops (cont.) 
The table shows the relationship between the row and 
column variables needed to print the following triangular 
pattern: 
# # # # # 
# # # # 
# # # 
# # 
# 
• You could use the following nested for loop. 
for (int row = 1; row <= 5; row++) { // For each row 
for (int col = 1; col <= 6 - row; col++) // Print the row 
System.out.print('#'); 
System.out.println(); // And a new row 
} // for row 
Row Column Bound 
(6 – Row) 
Number of 
Symbols 
1 6-1 5 
2 6-2 4 
3 6-3 3 
4 6-4 2 
5 6-5 1
The Nested-for Statement Nesting a for statement inside another for statement is commonly 
used technique in programming. 
Let’s generate the following table using nested-for statement. 
54
55 
Generating the Table 
int price; 
for (int width = 11; width <=20, width++){ 
for (int length = 5, length <=25, length+=5){ 
price = width * length * 19; //$19 per sq. ft. 
System.out.print (“ “ + price); 
} 
//finished one row; move on to next row 
System.out.println(“”); 
RENNI 
} 
RETUO

Chapter 1 Nested Control Structures

  • 1.
    Fundamentals of (Java)Programming Khirulnizam Abd Rahman 0129034614 (WhatsApp/SMS) Khirulnizam@gmail.com KERUL.net
  • 2.
    About Khirulnizam Lecturerof Computer Science, Faculty of Information Science and Technology, Selangor International Islamic University College (KUIS) – since 2000. Codes in blog.kerul.net Programming background: C, Java, PHP. Apps in Google Play M-Mathurat – 200K ( bit.ly/m-mathurat ) Peribahasa Dictionary – 20K ( bit.ly/pbahasa) mDictionary – open-sourced ( bit.ly/m-dictionary ) Hijrah Rasul – bit.ly/hijrah-rasul SmartSolat – bit.ly/smartsolat Apps in Windows Store Hijrah Rasul – bit.ly/hijrah-en Peribahasa Dictionary 2 http://blog.kerul.net 11/28/14
  • 3.
    Course Synopsis Thiscourse is the continuation of the previous course (Algorithm and Problem Solving). It introduces complex flow control, method, array, class design, file and file I/O. Objectives: At the end of this course, students should be able to; write and apply complex control structure. create and invoke methods in programs. declare, create and apply arrays and classes. retrieve from and write data into another file. Java Programming: From Problem Analysis to 3 Program Design, 3e
  • 4.
    Assessment Java Programming:From Problem Analysis to 4 Program Design, 3e
  • 5.
    Main Text LiangY. Daniel. Introduction to Java Programming, Eight Edition, 2011, Pearson  F. Joyce. Java Programming, 6th Edition, 2011, Course Technology Tool: JDK & Eclipse Java IDE Java Programming: From Problem Analysis to 5 Program Design, 3e
  • 6.
  • 7.
    Control Structures Acomputer can process a program in three(3) ways : Sequence (line by line) Selection or choice (branch) Repetition
  • 8.
    Sequence Structure Startat the beginning and follows the statement in order. start statement1 statement2 … Statement-n End
  • 9.
    Selection Structure Statementexecutions is depending on one or more condition start statement1 statement3 Fcondition T statement2 Statement-n End
  • 10.
    Repetition Structure Samestatement is repeated in a number of times depending on one or more condition. start statement1 statement2 condition Statement-n End T F
  • 11.
    Conditional Expression Considerthe following statement If (score is greater than or equal to 90) grade is A If (temperature is greater than 50) display “Its Hot” Conditional expression Grade is A only if score >=90 Display Its Hot only if the temperature > 50
  • 12.
    Logical Expression Writethe logical expression for the following 1. yourAge is greater than 50. 2. The value of myAge is not 0. 3. y is between 20 and 100 4. height is between 1.5 and 2.0.
  • 13.
    Logical Expression UseLogical & comparison operator to construct the logical expression 1. yourAge > 50 2. myAge != 0 3. y > 20 && y <100 4. height > 1.5 && height < 2.0.
  • 14.
    Logical Expression Evaluatethe following expression. Given x is 5 and y is 200. 1. x != 12 2. y < 100 3. x == 5 4. y == x*40 5. x >=5 && x <=5 6. y == 200 || y ==100 7. x == 10 || x != 5
  • 15.
    Logical Expression Evaluatethe following expression. Given x is 5 and y is 200. 1. x != 12 2. y < 100 3. x == 5 4. y == x*40 5. x >=5 && x <=5 6. y == 200 || y ==100 7. x == 10 || x != 5
  • 16.
    Selection Structure Thereare 2 types of Selection Structure If statement Switch statement
  • 17.
    Selection Structure –If Statement There are 3 types of if statement One-way selection : if Two-way selection : if - else Multiple-way selection : if – else if - else
  • 18.
    If Statement :One-Way IF The Syntax If (condition) statement; if (condition) { statement1; statement2; } Only one statement More than one statement
  • 19.
    If Statement :One-Way If If (condition) statement1; statement2; T F If (mark > 50) F System.out.println(“GOOD!!”); System.out.println(“THANK YOU”); Output : THANK YOU Mark = 34
  • 20.
    If Statement :One-Way If If (condition) statement1; statement2; T F If (mark > 50) Mark = 60 T System.out.println(“GOOD!!”); System.out.println(“THANK YOU”); Output : GOOD!! THANK YOU
  • 21.
    If Statement :One-Way If If (mark > 50){ Mark = 45 F System.out.println(“GOOD!!”); System.out.println(“GRAGE = A!!”); } System.out.println(“THANK YOU”); Output : THANK YOU
  • 22.
    If Statement :One-Way If If (mark > 50){ Mark = 60 T System.out.println(“GOOD!!”); System.out.println(“GRAGE = A!!”); } System.out.println(“THANK YOU”); Output : GOOD!! GRADE = A THANK YOU
  • 23.
    If Statement :Two-Way IF The Syntax if (condition) statement1; else statement2; statement3; Only one statement for each
  • 24.
    If Statement :Two-Way IF The Syntax if (score > 50) F Mark = 34 System.out.println(“GOOD!!”); else System.out.println(“BAD!!”); System.out.println(“THANK YOU”); Output : BAD!! THANK YOU
  • 25.
    If Statement :Two-Way IF The Syntax if (score > 50) T Mark = 60 System.out.println(“GOOD!!”); else System.out.println(“BAD!!”); System.out.println(“THANK YOU”); Output : GOOD!! THANK YOU
  • 26.
    If Statement :Two-Way IF The Syntax if (condition) { statement1; statement2; } else { Statement3; Statement4; } Statement5; More than one statement
  • 27.
    If Statement :Two-Way IF The Syntax if (score > 50){ T Mark = 60 System.out.println(“GOOD!!”); System.out.println(“GRADE = A!!”);} else System.out.println(“BAD!!”); System.out.println(“THANK YOU”); Output : GOOD!! GRADE = A THANK YOU
  • 28.
    If Statement :Two-Way IF The Syntax if (score > 50){ F Mark = 40 System.out.println(“GOOD!!”); System.out.println(“GRADE = A!!”);} else System.out.println(“BAD!!”); System.out.println(“THANK YOU”); Output : BAD!! THANK YOU
  • 29.
    If Statement :Multiple-Way IF The Syntax if (condition) statement1; else if (condition){ statement2; statement3;} else if (condition) statement4; else if (condition) statement5; else { statement6; statement7;} Use braces if there are more than one statement in a group
  • 30.
    If Statement :Multiple-Way IF The Syntax if (mark > 70) grade = “A”; else if (mark > 60 && mark <= 70){ grade = “B”; mark = mark + 3;} else if (mark > 50 && mark <=60) grade = “C”; else if (mark > 35 && mark <=50) grade = “D”; else { grade = “F” message = “FAIL!!!”} Don’t use 60 < mark <=70 x
  • 31.
    Output : Grade= F If Statement : Multiple-Way IF if (mark > 70) grade = “A”; F Mark = 34? F else if (mark > 60 && mark <= 70){ grade = “B”; mark = mark + 3;} F else if (mark > 50 && mark <=60) grade = “C”; else if (mark > 35 && mark <=50) grade = “D”; else { grade = “F” message = “FAIL!!!”} T System.out.println(“Grade = “ + grade);
  • 32.
    If Statement :Multiple-Way IF if (mark > 70) grade = “A”; F Mark = 65? T else if (mark > 60 && mark <= 70){ grade = “B”; mark = mark + 3;} else if (mark > 50 && mark <=60) grade = “C”; else if (mark > 35 && mark <=50) grade = “D”; else { grade = “F” message = “FAIL!!!”} Output : Grade = B System.out.println(“Grade = “ + grade);
  • 33.
    Selection Structure :Switch switch(expression) { //start switch case value1: statement1; break; case value2: statement2; statement3; break; case value3: statement4; break; … default: statement-n; } // end switch use colon not semicolon
  • 34.
    Selection Structure :Switch switch(month) { //start switch case 1: Name = “January”; break; case 2: name = “February”; break; case 3: name = “March”; break; … default: name = “ Not available”; } // end switch System,out.println(“Month = “ + name); Month = 2 F T
  • 35.
    C1 - COMPLEXFLOW CONTROL FUNDAMENTALS OF PROGRAMMING DTCP 2023
  • 36.
    NESTED IF STATEMENT SYNTAX if (Boolean_Expression_1) if (Boolean_Expression_2) Statement_1) else Statement_2
  • 37.
    Nested Statements Subtlydifferent forms First Form if (a > b) { if (c > d) e = f } else g = h; Second Form if (a > b) if (c > d) e = f else g = h; // oops
  • 38.
    What is theoutput? Any difference??? if ( x < y) if (x < z) System.out.println("Hello"); else System.out.println("Good bye"); if ( x < y){ if (x < z) System.out.println("Hello"); }else Good bye System.out.println("Good bye"); Nested if statement No output given
  • 39.
    The Nested-if Statement The then and else block of an if statement can contain any valid statements, including other if statements. An if statement containing another if statement is called a nested-if statement. 39 if (testScore >= 70) { if (studentAge < 10) { System.out.println("You did a great job"); } else { System.out.println("You did pass"); //test score >= 70 } //and age >= 10 } else { //test score < 70 System.out.println("You did not pass"); }
  • 40.
    Control Flow ofNested-if Statement false inner if messageBox.show ("You did not pass"); 40 messageBox.show ("You did not pass"); false testScore >= 70 ? testScore >= 70 ? messageBox.show ("You did pass"); messageBox.show ("You did pass"); true studentAge < 10 ? studentAge < 10 ? true messageBox.show ("You did a great job"); messageBox.show ("You did a great job");
  • 41.
    Nested if-else Statements An if-else statement can contain any sort of statement within it. In particular, it can contain another if-else statement. An if-else may be nested within the "if" part. An if-else may be nested within the "else" part. An if-else may be nested within both parts.
  • 42.
    Nested Statements Syntax if (Boolean_Expression_1) if (Boolean_Expression_2) Statement_1) else Statement_2) else if (Boolean_Expression_3) Statement_3) else Statement_4);
  • 43.
    Nested Statements Eachelse is paired with the nearest unmatched if. If used properly, indentation communicates which if goes with which else. Braces can be used like parentheses to group statements.
  • 44.
    TRACE THE OUTPUT public class test{ public static void main(String[] args){ int a=4; for (int i=1; i<a;i++ ){ for (int j=1; j<=i;j++ ){ System.out.print("*"); } System.out.println(""); } } * ** ***
  • 45.
    EXERCISE Construct asimple program that apply nested if else statement follow the rules given. Score Grade 90 <= score A 80 <= score < 90 B 70 <= score < 80 C 60 <= score < 70 D Score < 60 F Example: If student score is 99 then display the grade which is A to student.
  • 46.
    46 Nested ifStatements The statement executed as a result of an if statement or else clause could be another if statement These are called nested if statements See MinOfThree.java (page 227) An else clause is matched to the last unmatched if (no matter what the indentation implies) Braces can be used to specify the if statement to which an else clause belongs
  • 47.
    Nested Control Structures for loops can be found within other for loops 47
  • 48.
    Example 1 for(int i = 1; i <= 5; i++) { for (int j = 1; j <= i; j++) System.out.print(" *"); System.out.println(); } 48 Output: * ** *** **** *****
  • 49.
    Example 2 Whatwill be the value of after each of the following nested loops is executed? for (int i = 1; i < 4; i++){ for (int j = 1; j < 4-i; j++){ System.out.print(" *"); } System.out.println(); } 49 Output: ** *
  • 50.
    Example 3 Whatwill be the value of after each of the following nested loops is executed? int sum = 0; for (int i = 0; i<=2; i++) { for (int j = 0; j<=2; j++) { sum = sum + i; } }System.out.println(sum); 50 Output: 9
  • 51.
    Example 4 Whatdoes the following program segment print? for (int f = 0; f < 3; ++f){ for (int g = 0; g < 2; ++g){ System.out.print(f); System.out.print(g); } } 51 Output: 000110112021
  • 52.
    Nested Loops Supposeyou wanted to print the following table: for (int row = 1; row <= 4; row++) { // For each of 4 rows for (int col = 1; col <= 9; col++) // For each of 9 columns System.out.print(col * row + "t"); // Print 36 numbers System.out.println(); // Start a new row } // for row 1 2 3 4 5 6 7 8 9 2 4 6 8 10 12 14 16 18 3 6 9 12 15 18 21 24 27 4 8 12 16 20 24 28 32 36 • You could use a nested for loop. The outer loop prints the four rows and in each row, the inner loop prints the 9 columns.
  • 53.
    Nested Loops (cont.) The table shows the relationship between the row and column variables needed to print the following triangular pattern: # # # # # # # # # # # # # # # • You could use the following nested for loop. for (int row = 1; row <= 5; row++) { // For each row for (int col = 1; col <= 6 - row; col++) // Print the row System.out.print('#'); System.out.println(); // And a new row } // for row Row Column Bound (6 – Row) Number of Symbols 1 6-1 5 2 6-2 4 3 6-3 3 4 6-4 2 5 6-5 1
  • 54.
    The Nested-for StatementNesting a for statement inside another for statement is commonly used technique in programming. Let’s generate the following table using nested-for statement. 54
  • 55.
    55 Generating theTable int price; for (int width = 11; width <=20, width++){ for (int length = 5, length <=25, length+=5){ price = width * length * 19; //$19 per sq. ft. System.out.print (“ “ + price); } //finished one row; move on to next row System.out.println(“”); RENNI } RETUO

Editor's Notes

  • #40 It is possible to write if tests in different ways to achieve the same result. For example, the above code can also be expressed as if (testScore &amp;gt;= 70 &amp;&amp; studentAge &amp;lt; 10) { messageBox.show(&amp;quot;You did a great job&amp;quot;); } else { //either testScore &amp;lt; 70 OR studentAge &amp;gt;= 10 if (testScore &amp;gt;= 70) { messageBox.show(&amp;quot;You did pass&amp;quot;); } else { messageBox.show(&amp;quot;You did not pass&amp;quot;); } }
  • #41 This diagram shows the control flow of the example nested-if statement.
  • #55 Just an if statement can be nested inside another if statement, we often nest for loops. For example, using a nest-for loop is the most appropriate way to generate a table such as the illustration.
  • #56 Here&amp;apos;s how the table can be produced by a nested-for loop. For each value of width, length will range from 5 to 25 with an increment of 5. Here’s how the values for width and length change over the course of execution. widthlength 11 5 10 15 20 25 12 5 10 15 20 25 13 5 10 and so on…