SlideShare a Scribd company logo
Looping in C++ Nita Arora (KHMS)
The Increment and Decrement Operators Introduction to Loops: The  while  Loop Using the  while  loop for Input Validation Counters The  do-while  loop The  for  loop Keeping a Running Total 5-
Sentinels Nested Loops Breaking Out of a Loop The  continue  Statement Creating Good Test Data 5-
++  adds one to a variable val++;   is the same as  val   = val + 1; --  subtracts one from a variable val--;   is the same as   val = val – 1; can be used in prefix mode (before) or  postfix mode (after) a variable 5-
++val  and  --val  increment or decrement the variable,  then  return the new value of the variable.  It is this returned  new value  of the variable that is used in any other operations within the same statement  5-
int x = 1, y = 1; x = ++y;  // y is incremented to 2 // Then 2 is assigned to x cout << x  << &quot;  &quot; << y; // Displays 2  2 x = --y;  // y is decremented to 1 // Then 1 is assigned to x cout << x << &quot;  &quot; << y; // Displays 1 1  5-
val++  and  val--  return the old value of the variable,  then  increment or decrement the variable It is this returned  old   value  of the variable that is used in any other operations within the same statement  5-
int x = 1, y = 1; x = y++;  // y++ returns a 1 first // The 1 is assigned to x // then y is incremented to 2 cout << x  << &quot;  &quot; << y; // Displays 1  2 x = y--;  // y-- returns a 2 // The 2 is assigned to x // then y is decremented to 1 cout << x << &quot;  &quot; << y; // Displays 2 1 5-
Can be used in arithmetic expressions result = num1++ + --num2; Must  be applied to something that has a location in memory. Cannot have  result   =   (num1   +   num2)++; // Illegal Can be used in relational expressions  if (++num > limit)‏ prefix- and postfix-operations will cause different comparisons  5-
5- Loop : part of program that may execute more than once (i.e., it repeats)‏ while  loop format: while ( condition )‏ {  statement(s) ; } The  {}  can be omitted if there is only one statement in the body of the loop No  ;   here
while ( condition )‏ {   statement(s) ; } condition  is evaluated if it is true, the  statement(s)  are executed, and then  condition  is evaluated again if it is false, the loop is exited 5-
5- true statement(s)‏ false condition
int val = 5; while (val >= 0)‏ {  cout << val << &quot;  &quot;; val--; } produces output: 5  4  3  2  1  0 5-
while  is a  pretest loop  ( condition  is evaluated  before  the loop executes)  ( Entry Control Loop ) If the condition is initially false, the statement(s) in the body of the loop are  never  executed If the condition is initially true, the statement(s) in the body continue to be executed until the condition becomes false 5-
The loop must contain code to allow  condition  to eventually become  false   so the loop can be exited Otherwise, you have an  infinite loop  (i.e., a loop that does not stop)‏ Example infinite loop: x = 5; while (x > 0)  // infinite loop because cout << x;  // x is always  > 0 5-
Loops are an appropriate structure for validating user input data Prompt and read in the data. Use a  while  loop to test if data is valid. Enter the loop only if data is  not  valid. Inside the loop, prompt the user to re-enter the data.  The loop will not be exited until valid data has been entered. 5-
cout << &quot;Enter a number (1-100) and&quot; << &quot; I will guess it. &quot;; cin  >> number; while (number < 1 || number > 100)‏ {  cout << &quot;Number must be between 1 and 100.&quot; << &quot; Re-enter your number. &quot;; cin  >> number; } // Code to use the valid number goes here. 5-
Counter : variable that is incremented or decremented each time a loop repeats Can be used to control execution of the loop ( loop control variable )‏ Must be  initialized  before entering loop May be  incremented/decremented  either inside the loop or in the loop test 5-
Program can be written so that  user input  determines loop repetition Can be used when program processes a list of items, and user knows the number of items User is prompted before loop.  Their input is used to control the number of repetitions 5-
int num, limit; cout << &quot;Table of squares\n&quot;; cout << &quot;How high to go? &quot;; cin  >> limit; cout << &quot;\n\nnumber square\n&quot;; num = 1;  // loop control variable while (num <= limit)‏ {  cout << setw(5) << num << setw(6)‏   << num*num << endl; num++; } 5-
do-while : a  post test loop  ( condition  is evaluated  after  the loop executes)‏ Format: do {  1 or more statements;   } while ( condition ); 5- Notice the required  ;
5- statement(s)‏ condition false true
Loop always executes  at least  once Execution continues as long as  condition  is  true ;  The loop is exited when  condition  becomes  false Useful in menu-driven programs to bring user  back  to menu to make another choice 5-
5- Pretest loop that executes zero or more times Useful for counter-controlled loop Format: for(  initialization ;  test ;  update  )‏ {  1 or more statements; }   No  ;  goes here Required  ;
for( initialization ;  test ;  update )‏ {  // {} may be omitted statement(s) ;  // if loop body contains }  // only 1 statement Perform   initialization Evaluate   test  expression :  (a) If  true ,  execute   statement(s)‏ (b) If  false ,  terminate  loop execution Execute  update , then re-evaluate  test  expression 5-
5- true statement(s)‏ false test initialization code update code
int sum = 0, num; for (num = 1; num <= 10; num++)‏ sum += num; cout << &quot;Sum of numbers 1 – 10 is &quot; << sum << endl; 5-
If  test  is false  the first time it is evaluated, the body of the loop will  not  be executed The  update  expression can  increment  or  decrement  by any amount Variables used in the initialization section should  not  be modified in the body of the loop 5-
Can define variables in initialization code Their scope is the  for  loop Initialization code, test, or update code can contain more than one statement Separate statements with commas Example: for (int sum = 0, num = 1; num <= 10; num++)‏ sum += num; 5-
Can omit  initialization  if already done int sum = 0, num = 1; for (; num <= 10; num++)‏   sum += num; Can omit  update  if done in loop for (sum = 0, num = 1; num <= 10;)‏   sum += num++; Can omit  test  – may cause an infinite loop    for (sum = 0, num = 1; ; num++)‏   sum += num; 5-
running total : accumulated sum of numbers from each repetition of loop accumulator : variable that holds running total int sum = 0, num = 1; // sum is the while (num <= 10)  // accumulator {   sum += num;   num++; } cout << &quot;Sum of numbers 1 – 10 is &quot; << sum << endl; 5-
Sentinel : value in a list of values that indicates end of data Special value that cannot be confused with a valid value,  e.g. ,  -999  for a test score Used to terminate input when user may not know how many values will be entered 5-
int total = 0; cout << &quot;Enter points earned &quot; << &quot;(or -1 to quit): &quot;; cin  >> points; while (points != -1) // -1 is sentinel { total += points;  cout << &quot;Enter points earned: &quot;; cin  >> points; } 5-
while : pretest loop (loop body may not be executed at all)‏ do-while : post test loop (loop body will always be executed at least once)‏ for : pretest loop (loop body may not be executed at all); has initialization and update code; is useful with counters or if precise number of repetitions is known 5-
A  nested loop  is a loop inside the body of another loop Example: for (row   =   1; row   <=   3; row++)‏ {  for (col   =   1; col   <=   3; col++)‏ {  cout << row * col << endl; } } 5- inner loop outer loop
Inner loop  goes through all its repetitions for each repetition of outer loop Inner loop  repetitions complete sooner than outer loop Total number  of repetitions for inner loop is product of number of repetitions of the two loops.  In previous example, inner loop repeats 9 times 5-
Can use  break  to terminate execution of a loop Use sparingly  if at all – makes code harder to understand When  used in an inner loop ,  terminates that loop only  and goes back to outer loop 5-
Can use  continue  to go to end of loop and prepare for next repetition while  and  do-while  loops go to test and repeat the loop if test condition is true for  loop goes to update step, then tests, and repeats loop if test condition is true Use sparingly – like  break , can make Program logic hard to follow 5-
When  testing a program, the quality of the test data is more important than the quantity.  Test  data should show how different parts of the program execute Test  data should evaluate how program handles: normal  data data that is at the  limits  of the valid range invalid  data 5-
Write a Program which takes a single integer &quot;height&quot; and displays a &quot;pyramid&quot; of this height made up of of &quot;*&quot; characters on the screen. The program, should be able to reproduce the following example output: This program prints a 'pyramid' shape of a specified height on the screen. how high would you like the pyramid?:  37   Pick another height (must be between 1 and 30):5    **    ****  ******  ********  ********** Question 1
Question 2 &quot;For&quot; loops can always be re-written as &quot;while&quot; loops, and vice-versa. Are the following two programs equivalent, and what is their output? Explain your answer, and run the programs to check. Program (a): #include <iostream.h> int main() { int count = 1;  for (; count <= 5 ; count++)  {  int count = 1;  cout << count << &quot;\n&quot;;  }  return 0;  }  Program (b): #include <iostream>  int main()  {  int count = 1;  while (count <= 5)  {  int count = 1;  cout << count << &quot;\n&quot;;  count++;  } return 0; }

More Related Content

PPT
Looping statements in Java
PPTX
Loops c++
PPT
Looping in c++
PPT
Looping in c++
PPTX
Comp ppt (1)
PPTX
Presentation on nesting of loops
DOCX
Looping statements
PPTX
C++ loop
Looping statements in Java
Loops c++
Looping in c++
Looping in c++
Comp ppt (1)
Presentation on nesting of loops
Looping statements
C++ loop

What's hot (20)

DOCX
Java loops
PPTX
Loops in C Programming Language
PPT
Iteration
PPT
Java Programming: Loops
PDF
Control statements
PPTX
Types of loops in c language
PDF
Loops in C Programming | for Loop | do-while Loop | while Loop | Nested Loop
PPTX
Do...while loop structure
PPTX
While , For , Do-While Loop
PPTX
Looping statement
PPTX
Loop c++
PPSX
C lecture 4 nested loops and jumping statements slideshare
PPTX
The Loops
PPTX
Looping Statement And Flow Chart
PPTX
Loops in c language
PPTX
Loops in c programming
PPTX
Loops in C
Java loops
Loops in C Programming Language
Iteration
Java Programming: Loops
Control statements
Types of loops in c language
Loops in C Programming | for Loop | do-while Loop | while Loop | Nested Loop
Do...while loop structure
While , For , Do-While Loop
Looping statement
Loop c++
C lecture 4 nested loops and jumping statements slideshare
The Loops
Looping Statement And Flow Chart
Loops in c language
Loops in c programming
Loops in C
Ad

Viewers also liked (20)

PPT
Fundamentals of programming finals.ajang
PPTX
Looping and Switchcase BDCR
PPTX
Looping statements in C
PPT
Looping in C
PPTX
Looping and switch cases
PPT
PPTX
Programming maintenance - Programming methodology
PDF
Programming methodology lecture01
PPT
A message of stephen covey
PDF
Programming methodology lecture26
PPT
Fundamentals of programming finals.ajang
Looping and Switchcase BDCR
Looping statements in C
Looping in C
Looping and switch cases
Programming maintenance - Programming methodology
Programming methodology lecture01
A message of stephen covey
Programming methodology lecture26
Ad

Similar to Looping (20)

PPT
Chapter 5 Looping
PPT
M C6java6
PPTX
SwitchandlomahsjhASSJjajdjsdjdjjjop.pptx
PDF
[ITP - Lecture 11] Loops in C/C++
PDF
Chapter 12 Computer Science ( ICS 12).pdf
PPTX
Loops in c
PPT
Java căn bản - Chapter6
PDF
Chapter_05HGUYUYGUYGUTFTIVVGUTFGIHGHYIYUIGY
DOCX
9 11 25 14 44 6 41 15 57 9 39 16 41 2 58 8 43 12 4.docx
PPTX
Iterative control structures, looping, types of loops, loop working
PPT
03b loops
PPT
Lecture 2
PDF
Loop and while Loop
PPT
Ch3 repetition
DOC
Slide07 repetitions
PDF
Workbook_2_Problem_Solving_and_programming.pdf
PPTX
07 flow control
PPT
for loops in C++ and their functions and applicability
DOCX
loops and iteration.docx
Chapter 5 Looping
M C6java6
SwitchandlomahsjhASSJjajdjsdjdjjjop.pptx
[ITP - Lecture 11] Loops in C/C++
Chapter 12 Computer Science ( ICS 12).pdf
Loops in c
Java căn bản - Chapter6
Chapter_05HGUYUYGUYGUTFTIVVGUTFGIHGHYIYUIGY
9 11 25 14 44 6 41 15 57 9 39 16 41 2 58 8 43 12 4.docx
Iterative control structures, looping, types of loops, loop working
03b loops
Lecture 2
Loop and while Loop
Ch3 repetition
Slide07 repetitions
Workbook_2_Problem_Solving_and_programming.pdf
07 flow control
for loops in C++ and their functions and applicability
loops and iteration.docx

Recently uploaded (20)

PDF
A comparative study of natural language inference in Swahili using monolingua...
PDF
Hindi spoken digit analysis for native and non-native speakers
PDF
Building Integrated photovoltaic BIPV_UPV.pdf
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Accuracy of neural networks in brain wave diagnosis of schizophrenia
PDF
Web App vs Mobile App What Should You Build First.pdf
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
DP Operators-handbook-extract for the Mautical Institute
PPTX
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
PPTX
A Presentation on Artificial Intelligence
PDF
Hybrid model detection and classification of lung cancer
PDF
A comparative analysis of optical character recognition models for extracting...
PDF
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
PPTX
1. Introduction to Computer Programming.pptx
PDF
Enhancing emotion recognition model for a student engagement use case through...
PPTX
A Presentation on Touch Screen Technology
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
August Patch Tuesday
PDF
Mushroom cultivation and it's methods.pdf
PDF
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf
A comparative study of natural language inference in Swahili using monolingua...
Hindi spoken digit analysis for native and non-native speakers
Building Integrated photovoltaic BIPV_UPV.pdf
Digital-Transformation-Roadmap-for-Companies.pptx
Accuracy of neural networks in brain wave diagnosis of schizophrenia
Web App vs Mobile App What Should You Build First.pdf
MIND Revenue Release Quarter 2 2025 Press Release
DP Operators-handbook-extract for the Mautical Institute
TechTalks-8-2019-Service-Management-ITIL-Refresh-ITIL-4-Framework-Supports-Ou...
A Presentation on Artificial Intelligence
Hybrid model detection and classification of lung cancer
A comparative analysis of optical character recognition models for extracting...
ENT215_Completing-a-large-scale-migration-and-modernization-with-AWS.pdf
1. Introduction to Computer Programming.pptx
Enhancing emotion recognition model for a student engagement use case through...
A Presentation on Touch Screen Technology
Encapsulation_ Review paper, used for researhc scholars
August Patch Tuesday
Mushroom cultivation and it's methods.pdf
Microsoft Solutions Partner Drive Digital Transformation with D365.pdf

Looping

  • 1. Looping in C++ Nita Arora (KHMS)
  • 2. The Increment and Decrement Operators Introduction to Loops: The while Loop Using the while loop for Input Validation Counters The do-while loop The for loop Keeping a Running Total 5-
  • 3. Sentinels Nested Loops Breaking Out of a Loop The continue Statement Creating Good Test Data 5-
  • 4. ++ adds one to a variable val++; is the same as val = val + 1; -- subtracts one from a variable val--; is the same as val = val – 1; can be used in prefix mode (before) or postfix mode (after) a variable 5-
  • 5. ++val and --val increment or decrement the variable, then return the new value of the variable. It is this returned new value of the variable that is used in any other operations within the same statement 5-
  • 6. int x = 1, y = 1; x = ++y; // y is incremented to 2 // Then 2 is assigned to x cout << x << &quot; &quot; << y; // Displays 2 2 x = --y; // y is decremented to 1 // Then 1 is assigned to x cout << x << &quot; &quot; << y; // Displays 1 1 5-
  • 7. val++ and val-- return the old value of the variable, then increment or decrement the variable It is this returned old value of the variable that is used in any other operations within the same statement 5-
  • 8. int x = 1, y = 1; x = y++; // y++ returns a 1 first // The 1 is assigned to x // then y is incremented to 2 cout << x << &quot; &quot; << y; // Displays 1 2 x = y--; // y-- returns a 2 // The 2 is assigned to x // then y is decremented to 1 cout << x << &quot; &quot; << y; // Displays 2 1 5-
  • 9. Can be used in arithmetic expressions result = num1++ + --num2; Must be applied to something that has a location in memory. Cannot have result = (num1 + num2)++; // Illegal Can be used in relational expressions if (++num > limit)‏ prefix- and postfix-operations will cause different comparisons 5-
  • 10. 5- Loop : part of program that may execute more than once (i.e., it repeats)‏ while loop format: while ( condition )‏ { statement(s) ; } The {} can be omitted if there is only one statement in the body of the loop No ; here
  • 11. while ( condition )‏ { statement(s) ; } condition is evaluated if it is true, the statement(s) are executed, and then condition is evaluated again if it is false, the loop is exited 5-
  • 12. 5- true statement(s)‏ false condition
  • 13. int val = 5; while (val >= 0)‏ { cout << val << &quot; &quot;; val--; } produces output: 5 4 3 2 1 0 5-
  • 14. while is a pretest loop ( condition is evaluated before the loop executes) ( Entry Control Loop ) If the condition is initially false, the statement(s) in the body of the loop are never executed If the condition is initially true, the statement(s) in the body continue to be executed until the condition becomes false 5-
  • 15. The loop must contain code to allow condition to eventually become false so the loop can be exited Otherwise, you have an infinite loop (i.e., a loop that does not stop)‏ Example infinite loop: x = 5; while (x > 0) // infinite loop because cout << x; // x is always > 0 5-
  • 16. Loops are an appropriate structure for validating user input data Prompt and read in the data. Use a while loop to test if data is valid. Enter the loop only if data is not valid. Inside the loop, prompt the user to re-enter the data. The loop will not be exited until valid data has been entered. 5-
  • 17. cout << &quot;Enter a number (1-100) and&quot; << &quot; I will guess it. &quot;; cin >> number; while (number < 1 || number > 100)‏ { cout << &quot;Number must be between 1 and 100.&quot; << &quot; Re-enter your number. &quot;; cin >> number; } // Code to use the valid number goes here. 5-
  • 18. Counter : variable that is incremented or decremented each time a loop repeats Can be used to control execution of the loop ( loop control variable )‏ Must be initialized before entering loop May be incremented/decremented either inside the loop or in the loop test 5-
  • 19. Program can be written so that user input determines loop repetition Can be used when program processes a list of items, and user knows the number of items User is prompted before loop. Their input is used to control the number of repetitions 5-
  • 20. int num, limit; cout << &quot;Table of squares\n&quot;; cout << &quot;How high to go? &quot;; cin >> limit; cout << &quot;\n\nnumber square\n&quot;; num = 1; // loop control variable while (num <= limit)‏ { cout << setw(5) << num << setw(6)‏ << num*num << endl; num++; } 5-
  • 21. do-while : a post test loop ( condition is evaluated after the loop executes)‏ Format: do { 1 or more statements; } while ( condition ); 5- Notice the required ;
  • 23. Loop always executes at least once Execution continues as long as condition is true ; The loop is exited when condition becomes false Useful in menu-driven programs to bring user back to menu to make another choice 5-
  • 24. 5- Pretest loop that executes zero or more times Useful for counter-controlled loop Format: for( initialization ; test ; update )‏ { 1 or more statements; } No ; goes here Required ;
  • 25. for( initialization ; test ; update )‏ { // {} may be omitted statement(s) ; // if loop body contains } // only 1 statement Perform initialization Evaluate test expression : (a) If true , execute statement(s)‏ (b) If false , terminate loop execution Execute update , then re-evaluate test expression 5-
  • 26. 5- true statement(s)‏ false test initialization code update code
  • 27. int sum = 0, num; for (num = 1; num <= 10; num++)‏ sum += num; cout << &quot;Sum of numbers 1 – 10 is &quot; << sum << endl; 5-
  • 28. If test is false the first time it is evaluated, the body of the loop will not be executed The update expression can increment or decrement by any amount Variables used in the initialization section should not be modified in the body of the loop 5-
  • 29. Can define variables in initialization code Their scope is the for loop Initialization code, test, or update code can contain more than one statement Separate statements with commas Example: for (int sum = 0, num = 1; num <= 10; num++)‏ sum += num; 5-
  • 30. Can omit initialization if already done int sum = 0, num = 1; for (; num <= 10; num++)‏ sum += num; Can omit update if done in loop for (sum = 0, num = 1; num <= 10;)‏ sum += num++; Can omit test – may cause an infinite loop for (sum = 0, num = 1; ; num++)‏ sum += num; 5-
  • 31. running total : accumulated sum of numbers from each repetition of loop accumulator : variable that holds running total int sum = 0, num = 1; // sum is the while (num <= 10) // accumulator { sum += num; num++; } cout << &quot;Sum of numbers 1 – 10 is &quot; << sum << endl; 5-
  • 32. Sentinel : value in a list of values that indicates end of data Special value that cannot be confused with a valid value, e.g. , -999 for a test score Used to terminate input when user may not know how many values will be entered 5-
  • 33. int total = 0; cout << &quot;Enter points earned &quot; << &quot;(or -1 to quit): &quot;; cin >> points; while (points != -1) // -1 is sentinel { total += points; cout << &quot;Enter points earned: &quot;; cin >> points; } 5-
  • 34. while : pretest loop (loop body may not be executed at all)‏ do-while : post test loop (loop body will always be executed at least once)‏ for : pretest loop (loop body may not be executed at all); has initialization and update code; is useful with counters or if precise number of repetitions is known 5-
  • 35. A nested loop is a loop inside the body of another loop Example: for (row = 1; row <= 3; row++)‏ { for (col = 1; col <= 3; col++)‏ { cout << row * col << endl; } } 5- inner loop outer loop
  • 36. Inner loop goes through all its repetitions for each repetition of outer loop Inner loop repetitions complete sooner than outer loop Total number of repetitions for inner loop is product of number of repetitions of the two loops. In previous example, inner loop repeats 9 times 5-
  • 37. Can use break to terminate execution of a loop Use sparingly if at all – makes code harder to understand When used in an inner loop , terminates that loop only and goes back to outer loop 5-
  • 38. Can use continue to go to end of loop and prepare for next repetition while and do-while loops go to test and repeat the loop if test condition is true for loop goes to update step, then tests, and repeats loop if test condition is true Use sparingly – like break , can make Program logic hard to follow 5-
  • 39. When testing a program, the quality of the test data is more important than the quantity. Test data should show how different parts of the program execute Test data should evaluate how program handles: normal data data that is at the limits of the valid range invalid data 5-
  • 40. Write a Program which takes a single integer &quot;height&quot; and displays a &quot;pyramid&quot; of this height made up of of &quot;*&quot; characters on the screen. The program, should be able to reproduce the following example output: This program prints a 'pyramid' shape of a specified height on the screen. how high would you like the pyramid?: 37 Pick another height (must be between 1 and 30):5 ** **** ****** ******** ********** Question 1
  • 41. Question 2 &quot;For&quot; loops can always be re-written as &quot;while&quot; loops, and vice-versa. Are the following two programs equivalent, and what is their output? Explain your answer, and run the programs to check. Program (a): #include <iostream.h> int main() { int count = 1; for (; count <= 5 ; count++) { int count = 1; cout << count << &quot;\n&quot;; } return 0; } Program (b): #include <iostream> int main() { int count = 1; while (count <= 5) { int count = 1; cout << count << &quot;\n&quot;; count++; } return 0; }