SlideShare a Scribd company logo
1
Abraham H.
Fundamentals of Programming I
Control Statements
2
Outline
 Introduction
 Conditional structure
 If and else
 The Selective Structure: Switch
 Iteration structures (loops)
 The while loop
 The do-while loop
 The for loop
 Jump statements
 The break statement
 The continue statement
3
Introduction
 C++ provides different forms of statements for different
purposes
 Declaration statements
 Assignment-like statements. etc
 The order in which statements are executed is called flow
control
 Branching statements
 specify alternate paths of execution, depending on the
outcome of a logical condition
 Loop statements
 specify computations, which need to be repeated until a
certain logical condition is satisfied.
4
Branching Mechanisms
 if-else statements
 Choice of two alternate statements based on condition
expression
 Example:
if (hrs > 40)
grossPay = rate*40 + 1.5*rate*(hrs-40);
else
grossPay = rate*hrs;
 if-else Statement syntax:
if (<boolean_expression>)
<yes_statement>
else
<no_statement>
 Note each alternative is only ONE statement!
 To have multiple statements execute in either branch  use
compound statement {}
5
Compound/Block Statement
 Only "get" one statement per branch
 Must use compound statement{}for multiples
 Also called a "block" statement
 Each block should have block statement
 Even if just one statement
 Enhances readability
if (myScore > yourScore)
{
cout << "I win!n";
Sum= Sum + 100;
}
else
{
cout << "I wish these were golf scores.n";
Sum= 0;
}
6
The Optional else
 else clause is optional
 If, in the false branch (else), you want "nothing" to
happen, leave it out
 Example:
if (sales >= minimum)
salary = salary + bonus;
cout << "Salary = %" << salary;
 Note: nothing to do for false condition, so there is no else
clause!
 Execution continues with cout statement
7
Nested Statements
 if-else statements contain smaller statements
 Compound or simple statements (we’ve seen)
 Can also contain any statement at all, including another if-
else stmt!
 Example:
if (speed > 55)
if (speed > 80)
cout << "You’re really speeding!";
else
cout << "You’re speeding.";
 Note proper indenting!
8
Multiway if-else: Display
 Not new, just different indenting
 Avoids "excessive" indenting
 Syntax:
9
Multiway if-else Example: Display
10
The switch Statement
 A new statement for controlling multiple branches
 Uses controlling expression which returns bool data type (T or
F)
 Syntax:
11
The switch Statement : Example
12
The switch: multiple case labels
 Execution "falls thru" until break
 switch provides a "point of entry"
 Example:
case "A":
case "a":
cout << "Excellent: you got an "A"!n";
break;
case "B":
case "b":
cout << "Good: you got a "B"!n";
break;
 Note: multiple labels provide same "entry"
13
switch Pitfalls/Tip
 Forgetting the break;
 No compiler error
 Execution simply "falls thru" other cases until break;
 Biggest use: MENUs
 Provides clearer "big-picture" view
 Shows menu structure effectively
 Each branch is one menu choice
14
switch and If-Else
switch example if-else equivalent
switch(x)
{
case 1:
cout<<"x is 1";
break;
case 2:
cout<<"x is 2";
break;
default:
cout<<"value of x unknown";
}
if(x == 1)
{
cout<<"x is 1";
}
else if(x == 2)
{
cout<<"x is 2";
}
else
{
cout<<"value of x unknown";
}
15
Iteration Structures (Loops)
 3 Types of loops in C++
 while
 Most flexible
 No "restrictions"
 do -while
 Least flexible
 Always executes loop body at least once
 for
 Natural "counting" loop
16
while Loops Syntax
// custom countdown using while
#include<iostream.h>
void main()
{
int n;
cout<<"Enter the starting number:";
cin>>n;
while(n>0)
{
cout<<n<<", ";
--n;
}
cout<<"FIRE!n";
}
Output:
Enter the starting number: 8
8, 7, 6, 5, 4, 3, 2, 1, FIRE!
17
do-while Loop Syntax
//number echoer
#include <iostream.h>
void main()
{
long n;
do{
cout<<"Enter number (0 to end): ";
cin>>n;
cout<<"You entered: " << n << "n";
}while(n != 0);
}
Output:
Enter number (0 to end): 12345
You entered: 12345
Enter number (0 to end): 160277
You entered: 160277
Enter number (0 to end): 0
You entered: 0
18
While vs. do-while
 Very similar, but…
 One important difference
 Issue is "WHEN" boolean expression is checked
 while: checks BEFORE body is executed
 do-while: checked AFTER body is executed
 After this difference, they’re essentially identical!
 while is more common, due to it’s ultimate "flexibility"
19
for Loop Syntax
for (Init_Action; Bool_Exp; Update_Action)
Body_Statement
 Like if-else, Body_Statement can be a block statement
 Much more typical
// countdown using a for loop
#include <iostream.h>
void main ()
{
for(int n=10; n>0; n--)
{
cout<< n << ", ";
}
cout<< "FIRE!n";
}
Output:
10, 9, 8, 7, 6, 5, 4, 3, 2, 1, FIRE!
20
Converting Between For and While Loops
for (int i = 1; i < 1024; i *= 2){
cout << i << endl;
}
int i = 1;
while (i < 1024) {
cout << i << endl;
i *= 2;
}
21
Loop Pitfalls: Misplaced ;
 Watch the misplaced ; (semicolon)
 Example:
while (response != 0) ;
{
cout << "Enter val: ";
cin >> response;
}
 Notice the ";" after the while condition!
 Result here: INFINITE LOOP!
22
Loop Pitfalls: Infinite Loops
 Loop condition must evaluate to false at some iteration through
loop
 If not  infinite loop.
 Example:
while (1)
{
cout << "Hello ";
}
 A perfectly legal C++ loop  always infinite!
 Infinite loops can be desirable
 e.g., "Embedded Systems"
23
JUMP Statements -The break and continue Statements
 Flow of Control
 Recall how loops provide "graceful" and clear flow of
control in and out
 In RARE instances, can alter natural flow
 break;
 Forces loop to exit immediately.
 continue;
 Skips rest of loop body
 These statements violate natural flow
 Only used when absolutely necessary!
24
JUMP Statements -The break and continue Statements
 Break loop Example
// break loop example
#include<iostream.h>
void main()
{
int n;
for(n=10; n>0; n--)
{
cout<<n<<", ";
if(n==3)
{
cout<<"countdown aborted!";
break;
}
}
}
Output:
10, 9, 8, 7, 6, 5, 4, 3, countdown aborted!
25
JUMP Statements -The break and continue Statements
 Continue loop Example
// continue loop example
#include<iostream.h>
void main ()
{
for(int n=10; n>0; n--)
{
if(n==5)
continue;
cout<<n<<", ";
}
cout<<"FIRE!n";
}
Output:
10, 9, 8, 7, 6, 4, 3, 2, 1, FIRE!
26
Nested Loops
 Recall: ANY valid C++ statements can be
inside body of loop
 This includes additional loop statements!
 Called "nested loops"
 Requires careful indenting:
for (outer=0; outer<5; outer++)
for (inner=7; inner>2; inner--)
cout << outer << inner;
 Notice no { } since each body is one statement
 Good style dictates we use { } anyway
27
Thank You

More Related Content

Similar to 5.pptx fundamental programing one branch (20)

PPTX
C Programming Control Structures(if,if-else)
poonambhagat36
 
PPT
C++ programming
viancagerone
 
DOC
Control structures
Isha Aggarwal
 
PPTX
Introduction& Overview-to-C++_programming.pptx
divyadhanwani67
 
PPTX
Introduction to C++ programming language
divyadhanwani67
 
PPTX
Loops c++
Shivani Singh
 
PPTX
Switch case and looping
aprilyyy
 
PPT
Loops_and_FunctionsWeek4_0.ppt
KamranAli649587
 
PPTX
Condition Stmt n Looping stmt.pptx
Likhil181
 
PDF
Chapter 3 Computer Programmingodp-1_250331_041044.pdf
surafiraol103
 
DOCX
Programming Fundamentals lecture 8
REHAN IJAZ
 
PPTX
Oop object oriented programing topics
(•̮̮̃•̃) Prince Do Not Work
 
DOCX
Janakiram web
MARELLA CHINABABU
 
PPTX
Iterative control structures, looping, types of loops, loop working
Neeru Mittal
 
PDF
OIT 116 LOOPS AND CONDITION STATEMENTS.pdf
Carlos701746
 
PDF
Loops and conditional statements
Saad Sheikh
 
PPTX
12-Lec - Repetition For Loop.pptx
AqeelAbbas94
 
PDF
Chapter 3 - Flow of Control Part II.pdf
KirubelWondwoson1
 
PPTX
Lecture 5
Mohammed Khan
 
PPTX
Loops IN COMPUTER SCIENCE STANDARD 11 BY KR
Krishna Raj
 
C Programming Control Structures(if,if-else)
poonambhagat36
 
C++ programming
viancagerone
 
Control structures
Isha Aggarwal
 
Introduction& Overview-to-C++_programming.pptx
divyadhanwani67
 
Introduction to C++ programming language
divyadhanwani67
 
Loops c++
Shivani Singh
 
Switch case and looping
aprilyyy
 
Loops_and_FunctionsWeek4_0.ppt
KamranAli649587
 
Condition Stmt n Looping stmt.pptx
Likhil181
 
Chapter 3 Computer Programmingodp-1_250331_041044.pdf
surafiraol103
 
Programming Fundamentals lecture 8
REHAN IJAZ
 
Oop object oriented programing topics
(•̮̮̃•̃) Prince Do Not Work
 
Janakiram web
MARELLA CHINABABU
 
Iterative control structures, looping, types of loops, loop working
Neeru Mittal
 
OIT 116 LOOPS AND CONDITION STATEMENTS.pdf
Carlos701746
 
Loops and conditional statements
Saad Sheikh
 
12-Lec - Repetition For Loop.pptx
AqeelAbbas94
 
Chapter 3 - Flow of Control Part II.pdf
KirubelWondwoson1
 
Lecture 5
Mohammed Khan
 
Loops IN COMPUTER SCIENCE STANDARD 11 BY KR
Krishna Raj
 

Recently uploaded (20)

PPTX
Knowledge Representation : Semantic Networks
Amity University, Patna
 
PPTX
Evaluation and thermal analysis of shell and tube heat exchanger as per requi...
shahveer210504
 
PPTX
DATA BASE MANAGEMENT AND RELATIONAL DATA
gomathisankariv2
 
PPTX
2025 CGI Congres - Surviving agile v05.pptx
Derk-Jan de Grood
 
PPTX
Damage of stability of a ship and how its change .pptx
ehamadulhaque
 
PPTX
fatigue in aircraft structures-221113192308-0ad6dc8c.pptx
aviatecofficial
 
PPTX
VITEEE 2026 Exam Details , Important Dates
SonaliSingh127098
 
PDF
Basic_Concepts_in_Clinical_Biochemistry_2018كيمياء_عملي.pdf
AdelLoin
 
PPTX
美国电子版毕业证南卡罗莱纳大学上州分校水印成绩单USC学费发票定做学位证书编号怎么查
Taqyea
 
PPTX
Worm gear strength and wear calculation as per standard VB Bhandari Databook.
shahveer210504
 
PDF
Water Industry Process Automation & Control Monthly July 2025
Water Industry Process Automation & Control
 
PPTX
Thermal runway and thermal stability.pptx
godow93766
 
PDF
Electrical Engineer operation Supervisor
ssaruntatapower143
 
PPT
Carmon_Remote Sensing GIS by Mahesh kumar
DhananjayM6
 
PPTX
Mechanical Design of shell and tube heat exchangers as per ASME Sec VIII Divi...
shahveer210504
 
PDF
Introduction to Productivity and Quality
মোঃ ফুরকান উদ্দিন জুয়েল
 
PPTX
Solar Thermal Energy System Seminar.pptx
Gpc Purapuza
 
DOCX
8th International Conference on Electrical Engineering (ELEN 2025)
elelijjournal653
 
PPTX
What is Shot Peening | Shot Peening is a Surface Treatment Process
Vibra Finish
 
PPTX
The Role of Information Technology in Environmental Protectio....pptx
nallamillisriram
 
Knowledge Representation : Semantic Networks
Amity University, Patna
 
Evaluation and thermal analysis of shell and tube heat exchanger as per requi...
shahveer210504
 
DATA BASE MANAGEMENT AND RELATIONAL DATA
gomathisankariv2
 
2025 CGI Congres - Surviving agile v05.pptx
Derk-Jan de Grood
 
Damage of stability of a ship and how its change .pptx
ehamadulhaque
 
fatigue in aircraft structures-221113192308-0ad6dc8c.pptx
aviatecofficial
 
VITEEE 2026 Exam Details , Important Dates
SonaliSingh127098
 
Basic_Concepts_in_Clinical_Biochemistry_2018كيمياء_عملي.pdf
AdelLoin
 
美国电子版毕业证南卡罗莱纳大学上州分校水印成绩单USC学费发票定做学位证书编号怎么查
Taqyea
 
Worm gear strength and wear calculation as per standard VB Bhandari Databook.
shahveer210504
 
Water Industry Process Automation & Control Monthly July 2025
Water Industry Process Automation & Control
 
Thermal runway and thermal stability.pptx
godow93766
 
Electrical Engineer operation Supervisor
ssaruntatapower143
 
Carmon_Remote Sensing GIS by Mahesh kumar
DhananjayM6
 
Mechanical Design of shell and tube heat exchangers as per ASME Sec VIII Divi...
shahveer210504
 
Introduction to Productivity and Quality
মোঃ ফুরকান উদ্দিন জুয়েল
 
Solar Thermal Energy System Seminar.pptx
Gpc Purapuza
 
8th International Conference on Electrical Engineering (ELEN 2025)
elelijjournal653
 
What is Shot Peening | Shot Peening is a Surface Treatment Process
Vibra Finish
 
The Role of Information Technology in Environmental Protectio....pptx
nallamillisriram
 
Ad

5.pptx fundamental programing one branch

  • 1. 1 Abraham H. Fundamentals of Programming I Control Statements
  • 2. 2 Outline  Introduction  Conditional structure  If and else  The Selective Structure: Switch  Iteration structures (loops)  The while loop  The do-while loop  The for loop  Jump statements  The break statement  The continue statement
  • 3. 3 Introduction  C++ provides different forms of statements for different purposes  Declaration statements  Assignment-like statements. etc  The order in which statements are executed is called flow control  Branching statements  specify alternate paths of execution, depending on the outcome of a logical condition  Loop statements  specify computations, which need to be repeated until a certain logical condition is satisfied.
  • 4. 4 Branching Mechanisms  if-else statements  Choice of two alternate statements based on condition expression  Example: if (hrs > 40) grossPay = rate*40 + 1.5*rate*(hrs-40); else grossPay = rate*hrs;  if-else Statement syntax: if (<boolean_expression>) <yes_statement> else <no_statement>  Note each alternative is only ONE statement!  To have multiple statements execute in either branch  use compound statement {}
  • 5. 5 Compound/Block Statement  Only "get" one statement per branch  Must use compound statement{}for multiples  Also called a "block" statement  Each block should have block statement  Even if just one statement  Enhances readability if (myScore > yourScore) { cout << "I win!n"; Sum= Sum + 100; } else { cout << "I wish these were golf scores.n"; Sum= 0; }
  • 6. 6 The Optional else  else clause is optional  If, in the false branch (else), you want "nothing" to happen, leave it out  Example: if (sales >= minimum) salary = salary + bonus; cout << "Salary = %" << salary;  Note: nothing to do for false condition, so there is no else clause!  Execution continues with cout statement
  • 7. 7 Nested Statements  if-else statements contain smaller statements  Compound or simple statements (we’ve seen)  Can also contain any statement at all, including another if- else stmt!  Example: if (speed > 55) if (speed > 80) cout << "You’re really speeding!"; else cout << "You’re speeding.";  Note proper indenting!
  • 8. 8 Multiway if-else: Display  Not new, just different indenting  Avoids "excessive" indenting  Syntax:
  • 10. 10 The switch Statement  A new statement for controlling multiple branches  Uses controlling expression which returns bool data type (T or F)  Syntax:
  • 12. 12 The switch: multiple case labels  Execution "falls thru" until break  switch provides a "point of entry"  Example: case "A": case "a": cout << "Excellent: you got an "A"!n"; break; case "B": case "b": cout << "Good: you got a "B"!n"; break;  Note: multiple labels provide same "entry"
  • 13. 13 switch Pitfalls/Tip  Forgetting the break;  No compiler error  Execution simply "falls thru" other cases until break;  Biggest use: MENUs  Provides clearer "big-picture" view  Shows menu structure effectively  Each branch is one menu choice
  • 14. 14 switch and If-Else switch example if-else equivalent switch(x) { case 1: cout<<"x is 1"; break; case 2: cout<<"x is 2"; break; default: cout<<"value of x unknown"; } if(x == 1) { cout<<"x is 1"; } else if(x == 2) { cout<<"x is 2"; } else { cout<<"value of x unknown"; }
  • 15. 15 Iteration Structures (Loops)  3 Types of loops in C++  while  Most flexible  No "restrictions"  do -while  Least flexible  Always executes loop body at least once  for  Natural "counting" loop
  • 16. 16 while Loops Syntax // custom countdown using while #include<iostream.h> void main() { int n; cout<<"Enter the starting number:"; cin>>n; while(n>0) { cout<<n<<", "; --n; } cout<<"FIRE!n"; } Output: Enter the starting number: 8 8, 7, 6, 5, 4, 3, 2, 1, FIRE!
  • 17. 17 do-while Loop Syntax //number echoer #include <iostream.h> void main() { long n; do{ cout<<"Enter number (0 to end): "; cin>>n; cout<<"You entered: " << n << "n"; }while(n != 0); } Output: Enter number (0 to end): 12345 You entered: 12345 Enter number (0 to end): 160277 You entered: 160277 Enter number (0 to end): 0 You entered: 0
  • 18. 18 While vs. do-while  Very similar, but…  One important difference  Issue is "WHEN" boolean expression is checked  while: checks BEFORE body is executed  do-while: checked AFTER body is executed  After this difference, they’re essentially identical!  while is more common, due to it’s ultimate "flexibility"
  • 19. 19 for Loop Syntax for (Init_Action; Bool_Exp; Update_Action) Body_Statement  Like if-else, Body_Statement can be a block statement  Much more typical // countdown using a for loop #include <iostream.h> void main () { for(int n=10; n>0; n--) { cout<< n << ", "; } cout<< "FIRE!n"; } Output: 10, 9, 8, 7, 6, 5, 4, 3, 2, 1, FIRE!
  • 20. 20 Converting Between For and While Loops for (int i = 1; i < 1024; i *= 2){ cout << i << endl; } int i = 1; while (i < 1024) { cout << i << endl; i *= 2; }
  • 21. 21 Loop Pitfalls: Misplaced ;  Watch the misplaced ; (semicolon)  Example: while (response != 0) ; { cout << "Enter val: "; cin >> response; }  Notice the ";" after the while condition!  Result here: INFINITE LOOP!
  • 22. 22 Loop Pitfalls: Infinite Loops  Loop condition must evaluate to false at some iteration through loop  If not  infinite loop.  Example: while (1) { cout << "Hello "; }  A perfectly legal C++ loop  always infinite!  Infinite loops can be desirable  e.g., "Embedded Systems"
  • 23. 23 JUMP Statements -The break and continue Statements  Flow of Control  Recall how loops provide "graceful" and clear flow of control in and out  In RARE instances, can alter natural flow  break;  Forces loop to exit immediately.  continue;  Skips rest of loop body  These statements violate natural flow  Only used when absolutely necessary!
  • 24. 24 JUMP Statements -The break and continue Statements  Break loop Example // break loop example #include<iostream.h> void main() { int n; for(n=10; n>0; n--) { cout<<n<<", "; if(n==3) { cout<<"countdown aborted!"; break; } } } Output: 10, 9, 8, 7, 6, 5, 4, 3, countdown aborted!
  • 25. 25 JUMP Statements -The break and continue Statements  Continue loop Example // continue loop example #include<iostream.h> void main () { for(int n=10; n>0; n--) { if(n==5) continue; cout<<n<<", "; } cout<<"FIRE!n"; } Output: 10, 9, 8, 7, 6, 4, 3, 2, 1, FIRE!
  • 26. 26 Nested Loops  Recall: ANY valid C++ statements can be inside body of loop  This includes additional loop statements!  Called "nested loops"  Requires careful indenting: for (outer=0; outer<5; outer++) for (inner=7; inner>2; inner--) cout << outer << inner;  Notice no { } since each body is one statement  Good style dictates we use { } anyway