SlideShare a Scribd company logo
1 of 55
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 28/11/2014
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 
messageBox.show 
("You did not 
pass"); 
40 
false 
inner if 
false 
testScore >= 
70 ? 
messageBox.show 
("You did pass"); 
true 
studentAge < 
10 ? 
true 
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
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.
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(“”); 
INNER 
} 
OUTER

More Related Content

What's hot (20)

3.1 higher derivatives
3.1 higher derivatives3.1 higher derivatives
3.1 higher derivatives
 
Types of loops in c language
Types of loops in c languageTypes of loops in c language
Types of loops in c language
 
lattice
 lattice lattice
lattice
 
Axioms of Probability
Axioms of Probability Axioms of Probability
Axioms of Probability
 
Chapter 4 part1-Probability Model
Chapter 4 part1-Probability ModelChapter 4 part1-Probability Model
Chapter 4 part1-Probability Model
 
Lecture 14 ideology of pakistan
Lecture 14 ideology of pakistanLecture 14 ideology of pakistan
Lecture 14 ideology of pakistan
 
Operators and expressions in c language
Operators and expressions in c languageOperators and expressions in c language
Operators and expressions in c language
 
Geometric Distribution
Geometric DistributionGeometric Distribution
Geometric Distribution
 
Input Output Management In C Programming
Input Output Management In C ProgrammingInput Output Management In C Programming
Input Output Management In C Programming
 
Functions in discrete mathematics
Functions in discrete mathematicsFunctions in discrete mathematics
Functions in discrete mathematics
 
Matrices & Determinants
Matrices & DeterminantsMatrices & Determinants
Matrices & Determinants
 
Lesson 2 percentiles
Lesson 2   percentilesLesson 2   percentiles
Lesson 2 percentiles
 
Shortest path algorithms
Shortest path algorithmsShortest path algorithms
Shortest path algorithms
 
Principle of mathematical induction
Principle of mathematical inductionPrinciple of mathematical induction
Principle of mathematical induction
 
Java program structure
Java program structureJava program structure
Java program structure
 
Introduction to differentiation
Introduction to differentiationIntroduction to differentiation
Introduction to differentiation
 
Limits and continuity
Limits and continuityLimits and continuity
Limits and continuity
 
Trees (slides)
Trees (slides)Trees (slides)
Trees (slides)
 
Inverse functions
Inverse functionsInverse functions
Inverse functions
 
Basic concepts of statistics
Basic concepts of statistics Basic concepts of statistics
Basic concepts of statistics
 

Similar to Chapter 1 nested control structures

Selection Control Structures
Selection Control StructuresSelection Control Structures
Selection Control StructuresPRN USM
 
Visula C# Programming Lecture 3
Visula C# Programming Lecture 3Visula C# Programming Lecture 3
Visula C# Programming Lecture 3Abou Bakr Ashraf
 
The Three Basic Selection Structures in C++ Programming Concepts
The Three Basic Selection Structures in C++ Programming ConceptsThe Three Basic Selection Structures in C++ Programming Concepts
The Three Basic Selection Structures in C++ Programming ConceptsTech
 
Cs1123 5 selection_if
Cs1123 5 selection_ifCs1123 5 selection_if
Cs1123 5 selection_ifTAlha MAlik
 
Java căn bản - Chapter5
Java căn bản - Chapter5Java căn bản - Chapter5
Java căn bản - Chapter5Vince Vo
 
control statements of clangauge (ii unit)
control statements of clangauge (ii unit)control statements of clangauge (ii unit)
control statements of clangauge (ii unit)Prashant Sharma
 
Pi j1.3 operators
Pi j1.3 operatorsPi j1.3 operators
Pi j1.3 operatorsmcollison
 
cpphtp4_PPT_02.ppt
cpphtp4_PPT_02.pptcpphtp4_PPT_02.ppt
cpphtp4_PPT_02.pptSuleman Khan
 
JPC#8 Introduction to Java Programming
JPC#8 Introduction to Java ProgrammingJPC#8 Introduction to Java Programming
JPC#8 Introduction to Java ProgrammingPathomchon Sriwilairit
 
Chapter 4.4
Chapter 4.4Chapter 4.4
Chapter 4.4sotlsoc
 
Control Structures.pptx
Control Structures.pptxControl Structures.pptx
Control Structures.pptxssuserfb3c3e
 
CONTROLSTRUCTURES.ppt
CONTROLSTRUCTURES.pptCONTROLSTRUCTURES.ppt
CONTROLSTRUCTURES.pptSanjjaayyy
 

Similar to Chapter 1 nested control structures (20)

Chapter 1 Nested Control Structures
Chapter 1 Nested Control StructuresChapter 1 Nested Control Structures
Chapter 1 Nested Control Structures
 
Selection Control Structures
Selection Control StructuresSelection Control Structures
Selection Control Structures
 
Visula C# Programming Lecture 3
Visula C# Programming Lecture 3Visula C# Programming Lecture 3
Visula C# Programming Lecture 3
 
The Three Basic Selection Structures in C++ Programming Concepts
The Three Basic Selection Structures in C++ Programming ConceptsThe Three Basic Selection Structures in C++ Programming Concepts
The Three Basic Selection Structures in C++ Programming Concepts
 
Python for Beginners(v2)
Python for Beginners(v2)Python for Beginners(v2)
Python for Beginners(v2)
 
ICP - Lecture 7 and 8
ICP - Lecture 7 and 8ICP - Lecture 7 and 8
ICP - Lecture 7 and 8
 
Lecture 3
Lecture 3Lecture 3
Lecture 3
 
M C6java5
M C6java5M C6java5
M C6java5
 
Cs1123 5 selection_if
Cs1123 5 selection_ifCs1123 5 selection_if
Cs1123 5 selection_if
 
Control statments in c
Control statments in cControl statments in c
Control statments in c
 
Java căn bản - Chapter5
Java căn bản - Chapter5Java căn bản - Chapter5
Java căn bản - Chapter5
 
control statements of clangauge (ii unit)
control statements of clangauge (ii unit)control statements of clangauge (ii unit)
control statements of clangauge (ii unit)
 
Pi j1.3 operators
Pi j1.3 operatorsPi j1.3 operators
Pi j1.3 operators
 
cpphtp4_PPT_02.ppt
cpphtp4_PPT_02.pptcpphtp4_PPT_02.ppt
cpphtp4_PPT_02.ppt
 
cpphtp4_PPT_02.ppt
cpphtp4_PPT_02.pptcpphtp4_PPT_02.ppt
cpphtp4_PPT_02.ppt
 
JPC#8 Introduction to Java Programming
JPC#8 Introduction to Java ProgrammingJPC#8 Introduction to Java Programming
JPC#8 Introduction to Java Programming
 
Chapter 4.4
Chapter 4.4Chapter 4.4
Chapter 4.4
 
C Unit-2.ppt
C Unit-2.pptC Unit-2.ppt
C Unit-2.ppt
 
Control Structures.pptx
Control Structures.pptxControl Structures.pptx
Control Structures.pptx
 
CONTROLSTRUCTURES.ppt
CONTROLSTRUCTURES.pptCONTROLSTRUCTURES.ppt
CONTROLSTRUCTURES.ppt
 

More from Khirulnizam Abd Rahman

Mobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordovaMobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordovaKhirulnizam Abd Rahman
 
Android app development hybrid approach for beginners - Tools Installations ...
Android app development  hybrid approach for beginners - Tools Installations ...Android app development  hybrid approach for beginners - Tools Installations ...
Android app development hybrid approach for beginners - Tools Installations ...Khirulnizam Abd Rahman
 
Android app development Hybrid approach for beginners
Android app development  Hybrid approach for beginnersAndroid app development  Hybrid approach for beginners
Android app development Hybrid approach for beginnersKhirulnizam Abd Rahman
 
Tips menyediakan slaid pembentangan berkesan - tiada template
Tips menyediakan slaid pembentangan berkesan - tiada templateTips menyediakan slaid pembentangan berkesan - tiada template
Tips menyediakan slaid pembentangan berkesan - tiada templateKhirulnizam Abd Rahman
 
Topik 4 Teknologi Komputer: Hardware, Software dan Heartware
Topik 4 Teknologi Komputer: Hardware, Software dan HeartwareTopik 4 Teknologi Komputer: Hardware, Software dan Heartware
Topik 4 Teknologi Komputer: Hardware, Software dan HeartwareKhirulnizam Abd Rahman
 
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072Khirulnizam Abd Rahman
 
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan InsanPanduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan InsanKhirulnizam Abd Rahman
 
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...Khirulnizam Abd Rahman
 
Npwu-mpu 3252 Teknologi Maklumat dalam Kehidupan Insan
Npwu-mpu 3252 Teknologi Maklumat dalam Kehidupan InsanNpwu-mpu 3252 Teknologi Maklumat dalam Kehidupan Insan
Npwu-mpu 3252 Teknologi Maklumat dalam Kehidupan InsanKhirulnizam Abd Rahman
 

More from Khirulnizam Abd Rahman (20)

Html5 + Bootstrap & Mobirise
Html5 + Bootstrap & MobiriseHtml5 + Bootstrap & Mobirise
Html5 + Bootstrap & Mobirise
 
Mobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordovaMobile Web App development multiplatform using phonegap-cordova
Mobile Web App development multiplatform using phonegap-cordova
 
Android app development hybrid approach for beginners - Tools Installations ...
Android app development  hybrid approach for beginners - Tools Installations ...Android app development  hybrid approach for beginners - Tools Installations ...
Android app development hybrid approach for beginners - Tools Installations ...
 
Chapter 6 Java IO File
Chapter 6 Java IO FileChapter 6 Java IO File
Chapter 6 Java IO File
 
Chapter 5 Class File
Chapter 5 Class FileChapter 5 Class File
Chapter 5 Class File
 
Chapter 4 - Classes in Java
Chapter 4 - Classes in JavaChapter 4 - Classes in Java
Chapter 4 - Classes in Java
 
Android app development Hybrid approach for beginners
Android app development  Hybrid approach for beginnersAndroid app development  Hybrid approach for beginners
Android app development Hybrid approach for beginners
 
Tips menyediakan slaid pembentangan berkesan - tiada template
Tips menyediakan slaid pembentangan berkesan - tiada templateTips menyediakan slaid pembentangan berkesan - tiada template
Tips menyediakan slaid pembentangan berkesan - tiada template
 
Chapter 3 Arrays in Java
Chapter 3 Arrays in JavaChapter 3 Arrays in Java
Chapter 3 Arrays in Java
 
Topik 4 Teknologi Komputer: Hardware, Software dan Heartware
Topik 4 Teknologi Komputer: Hardware, Software dan HeartwareTopik 4 Teknologi Komputer: Hardware, Software dan Heartware
Topik 4 Teknologi Komputer: Hardware, Software dan Heartware
 
Chapter 2 Java Methods
Chapter 2 Java MethodsChapter 2 Java Methods
Chapter 2 Java Methods
 
Topik 3 Masyarakat Malaysia dan ICT
Topik 3   Masyarakat Malaysia dan ICTTopik 3   Masyarakat Malaysia dan ICT
Topik 3 Masyarakat Malaysia dan ICT
 
Chapter 2 Method in Java OOP
Chapter 2   Method in Java OOPChapter 2   Method in Java OOP
Chapter 2 Method in Java OOP
 
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
Topik 2 Sejarah Perkembanggan Ilmu NBWU1072
 
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan InsanPanduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
Panduan tugasan Makmal Teknologi Maklumat dalam Kehidupan Insan
 
Topik 1 Islam dan Teknologi Maklumat
Topik 1 Islam dan Teknologi MaklumatTopik 1 Islam dan Teknologi Maklumat
Topik 1 Islam dan Teknologi Maklumat
 
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
Application of Ontology in Semantic Information Retrieval by Prof Shahrul Azm...
 
DTCP2023 Fundamentals of Programming
DTCP2023 Fundamentals of ProgrammingDTCP2023 Fundamentals of Programming
DTCP2023 Fundamentals of Programming
 
Npwu-mpu 3252 Teknologi Maklumat dalam Kehidupan Insan
Npwu-mpu 3252 Teknologi Maklumat dalam Kehidupan InsanNpwu-mpu 3252 Teknologi Maklumat dalam Kehidupan Insan
Npwu-mpu 3252 Teknologi Maklumat dalam Kehidupan Insan
 
Simple skeleton of a review paper
Simple skeleton of a review paperSimple skeleton of a review paper
Simple skeleton of a review paper
 

Recently uploaded

Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxMaryGraceBautista27
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parentsnavabharathschool99
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Celine George
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxnelietumpap1
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomnelietumpap1
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)lakshayb543
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Celine George
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...Nguyen Thanh Tu Collection
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYKayeClaireEstoconing
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersSabitha Banu
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxChelloAnnAsuncion2
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designMIPLM
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxiammrhaywood
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Celine George
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxCarlos105
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceSamikshaHamane
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...JhezDiaz1
 

Recently uploaded (20)

FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptxFINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
FINALS_OF_LEFT_ON_C'N_EL_DORADO_2024.pptx
 
Science 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptxScience 7 Quarter 4 Module 2: Natural Resources.pptx
Science 7 Quarter 4 Module 2: Natural Resources.pptx
 
Choosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for ParentsChoosing the Right CBSE School A Comprehensive Guide for Parents
Choosing the Right CBSE School A Comprehensive Guide for Parents
 
Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17Difference Between Search & Browse Methods in Odoo 17
Difference Between Search & Browse Methods in Odoo 17
 
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
Model Call Girl in Tilak Nagar Delhi reach out to us at 🔝9953056974🔝
 
Q4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptxQ4 English4 Week3 PPT Melcnmg-based.pptx
Q4 English4 Week3 PPT Melcnmg-based.pptx
 
ENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choomENGLISH6-Q4-W3.pptxqurter our high choom
ENGLISH6-Q4-W3.pptxqurter our high choom
 
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
Visit to a blind student's school🧑‍🦯🧑‍🦯(community medicine)
 
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptxLEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
LEFT_ON_C'N_ PRELIMS_EL_DORADO_2024.pptx
 
Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17Field Attribute Index Feature in Odoo 17
Field Attribute Index Feature in Odoo 17
 
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
HỌC TỐT TIẾNG ANH 11 THEO CHƯƠNG TRÌNH GLOBAL SUCCESS ĐÁP ÁN CHI TIẾT - CẢ NĂ...
 
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITYISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
ISYU TUNGKOL SA SEKSWLADIDA (ISSUE ABOUT SEXUALITY
 
DATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginnersDATA STRUCTURE AND ALGORITHM for beginners
DATA STRUCTURE AND ALGORITHM for beginners
 
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptxGrade 9 Q4-MELC1-Active and Passive Voice.pptx
Grade 9 Q4-MELC1-Active and Passive Voice.pptx
 
Keynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-designKeynote by Prof. Wurzer at Nordex about IP-design
Keynote by Prof. Wurzer at Nordex about IP-design
 
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptxECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
ECONOMIC CONTEXT - PAPER 1 Q3: NEWSPAPERS.pptx
 
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
Incoming and Outgoing Shipments in 3 STEPS Using Odoo 17
 
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptxBarangay Council for the Protection of Children (BCPC) Orientation.pptx
Barangay Council for the Protection of Children (BCPC) Orientation.pptx
 
Roles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in PharmacovigilanceRoles & Responsibilities in Pharmacovigilance
Roles & Responsibilities in Pharmacovigilance
 
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
ENGLISH 7_Q4_LESSON 2_ Employing a Variety of Strategies for Effective Interp...
 

Chapter 1 nested control structures

  • 1. Fundamentals of (Java) Programming Khirulnizam Abd Rahman 0129034614 (WhatsApp/SMS) Khirulnizam@gmail.com KERUL.net
  • 2. 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 28/11/2014
  • 3. 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
  • 4. Assessment Java Programming: From Problem Analysis to 4 Program Design, 3e
  • 5. 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
  • 7. Control Structures  A computer can process a program in three(3) ways :  Sequence (line by line)  Selection or choice (branch)  Repetition
  • 8. Sequence Structure  Start at the beginning and follows the statement in order. start statement1 statement2 … Statement-n End
  • 9. Selection Structure  Statement executions is depending on one or more condition start statement1 statement3 Fcondition T statement2 Statement-n End
  • 10. 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
  • 11. 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
  • 12. 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.
  • 13. 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.
  • 14. 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
  • 15. 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
  • 16. Selection Structure  There are 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 - COMPLEX FLOW 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  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
  • 38. 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
  • 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 of Nested-if Statement messageBox.show ("You did not pass"); 40 false inner if false testScore >= 70 ? messageBox.show ("You did pass"); true studentAge < 10 ? true 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  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.
  • 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 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. 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
  • 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  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: ** *
  • 50. 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
  • 51. 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
  • 52. 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.
  • 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. 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.
  • 55. 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(“”); INNER } OUTER

Editor's Notes

  1. ©The McGraw-Hill Companies, Inc.
  2. ©The McGraw-Hill Companies, Inc.
  3. ©The McGraw-Hill Companies, Inc.
  4. ©The McGraw-Hill Companies, Inc.