LECTURE 5 Control Structures Part 2

Similar documents
Loops! Loops! Loops! Lecture 5 COP 3014 Fall September 25, 2017

Introduction. C provides two styles of flow control:

C++ Programming Lecture 7 Control Structure I (Repetition) Part I

C++ Programming: From Problem Analysis to Program Design, Third Edition

Islamic University of Gaza Computer Engineering Dept. C++ Programming. For Industrial And Electrical Engineering By Instructor: Ruba A.

REPETITION CONTROL STRUCTURE LOGO

*Starting Out with C++: From Control Structures through Objects, 7/E* by *Tony Gaddis* COMPUTER PROGRAMMING LECTURE 05 LOOPS IMRAN IHSAN

C++ Programming: From Problem Analysis to Program Design, Fourth Edition. Chapter 5: Control Structures II (Repetition)

Chapter 5: Control Structures II (Repetition)

5.1. Chapter 5: The Increment and Decrement Operators. The Increment and Decrement Operators. Looping. ++ is the increment operator.

Why Is Repetition Needed?

Lecture Programming in C++ PART 1. By Assistant Professor Dr. Ali Kattan

Chapter 5: Control Structures II (Repetition) Objectives (cont d.) Objectives. while Looping (Repetition) Structure. Why Is Repetition Needed?

Theory of control structures

Chapter 2: Functions and Control Structures

Loops and Files. Chapter 04 MIT 12043, Fundamentals of Programming By: S. Sabraz Nawaz

Programming in C++ PART 2

Lecture Transcript While and Do While Statements in C++

Lecture 5 Tao Wang 1

Week 2. Relational Operators. Block or compound statement. if/else. Branching & Looping. Gaddis: Chapters 4 & 5. CS 5301 Spring 2018.

Chapter 5: Loops and Files

Chapter 5: Prefix vs. Postfix 8/19/2018. The Increment and Decrement Operators. Increment and Decrement Operators in Program 5-1

Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Slide 5-1

Repe$$on CSC 121 Spring 2017 Howard Rosenthal

In this chapter you will learn:

BIL101E: Introduction to Computers and Information systems Lecture 8

Computer Programming

Computer Programming

Chapter 3. More Flow of Control. Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

Programming for Engineers Iteration

Sequence structure. The computer executes java statements one after the other in the order in which they are written. Total = total +grade;

CHAPTER 2.2 CONTROL STRUCTURES (ITERATION) Dr. Shady Yehia Elmashad

Computational Expression

CS 302: INTRODUCTION TO PROGRAMMING. Lectures 7&8

Programming Basics and Practice GEDB029 Decision Making, Branching and Looping. Prof. Dr. Mannan Saeed Muhammad bit.ly/gedb029

Repe$$on CSC 121 Fall 2015 Howard Rosenthal

Control Structures. Lecture 4 COP 3014 Fall September 18, 2017

5.1. Chapter 5: The Increment and Decrement Operators. The Increment and Decrement Operators. The Increment and Decrement Operators

Computer Programming I - Unit 5 Lecture page 1 of 14

Repetition CSC 121 Fall 2014 Howard Rosenthal

Computer Programming: C++

C++ Programming: From Problem Analysis to Program Design, Third Edition

SFU CMPT Topic: Control Statements

Lecture 7 Tao Wang 1

Problem Solving through Programming In C Prof. Anupam Basu Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur

There are algorithms, however, that need to execute statements in some other kind of ordering depending on certain conditions.

Introduction to C++ Lecture Set 2. Introduction to C++ Week 2 Dr Alex Martin 2013 Slide 1

Activity 6: Loops. Content Learning Objectives. Process Skill Goals

2.11 Assignment Operators. Assignment expression abbreviations c = c + 3; can be abbreviated as c += 3; using the addition assignment operator

Computer Programming. Basic Control Flow - Loops. Adapted from C++ for Everyone and Big C++ by Cay Horstmann, John Wiley & Sons

204111: Computer and Programming

Example. CS 201 Selection Structures (2) and Repetition. Nested if Statements with More Than One Variable

A Look Back at Arithmetic Operators: the Increment and Decrement

Chapter 5: Control Structures

Control Structures. Control Structures Conditional Statements COMPUTER PROGRAMMING. Electrical-Electronics Engineering Dept.

Chapter 4 C Program Control

CS110D: PROGRAMMING LANGUAGE I

Activity 6: Loops. Content Learning Objectives. Process Skill Goals

Unit 7. 'while' Loops

The for Loop, Accumulator Variables, Seninel Values, and The Random Class. CS0007: Introduction to Computer Programming

Lecture 7: General Loops (Chapter 7)

Accelerating Information Technology Innovation

ECE 122. Engineering Problem Solving with Java

Object-oriented programming. and data-structures CS/ENGRD 2110 SUMMER 2018

For Loop. Variations on Format & Specific Examples

Second Term ( ) Department of Computer Science Foundation Year Program Umm Al Qura University, Makkah

LECTURE 04 MAKING DECISIONS

Chapter 4: Making Decisions

C++ PROGRAMMING SKILLS Part 2 Programming Structures

Chapter 5 Control Statements: Part 2 Section 5.2 Essentials of Counter-Controlled Repetition

Chapter 4: Making Decisions

Looping. Arizona State University 1

Statements execute in sequence, one after the other, such as the following solution for a quadratic equation:

Introduction to Programming

What is Iteration? CMPT-101. Recursion. Understanding Recursion. The Function Header and Documentation. Recursively Adding Numbers

Control Structures of C++ Programming (2)

Module 4: Decision-making and forming loops

University of Technology. Laser & Optoelectronics Engineering Department. C++ Lab.

Repetition Structures II

Add Subtract Multiply Divide

Structured Program Development

CPE 112 Spring 2015 Exam II (100 pts) March 4, Definition Matching (8 Points)

Repetition and Loop Statements Chapter 5

Increment and the While. Class 15

All copyrights reserved - KV NAD, Aluva. Dinesh Kumar Ram PGT(CS) KV NAD Aluva

Programming Lecture 4

INTRODUCTION TO COMPUTER SCIENCE - LAB

C++ Programming Lecture 1 Software Engineering Group

CSc Introduc/on to Compu/ng. Lecture 8 Edgardo Molina Fall 2011 City College of New York

8. Control statements

Repetition Structures

Condition-Controlled Loop. Condition-Controlled Loop. If Statement. Various Forms. Conditional-Controlled Loop. Loop Caution.

Q1 Q2 Q3 Q4 Q5 Total 1 * 7 1 * 5 20 * * Final marks Marks First Question

CSC128 FUNDAMENTALS OF COMPUTER PROBLEM SOLVING Chapter 4: Repetition Control Structure

Discussion 1H Notes (Week 3, April 14) TA: Brian Choi Section Webpage:

Chapter 2 - Control Structures

Lecture 10: for, do, and switch

Chapter 2 Control in Programming. lecture 2 1

2/5/2018. Learn Four More Kinds of C Statements. ECE 220: Computer Systems & Programming. C s if Statement Enables Conditional Execution

Control structures in C. Going beyond sequential

Transcription:

LECTURE 5 Control Structures Part 2

REPETITION STATEMENTS Repetition statements are called loops, and are used to repeat the same code multiple times in succession. The number of repetitions is based on criteria defined in the loop structure, usually a true/false expression. The three loop structures in C++ are: while loops do-while loops for loops Three types of loops are not actually needed, but having the different forms is convenient.

WHILE AND DO-WHILE LOOPS Format of while loop: while (expression) statement Format of do/while loop: do statement while (expression);

WHILE AND DO-WHILE LOOPS The expression in these formats is handled the same as in the if/else statements discussed previously (0 means false, anything else means true). The statement portion is also as in if/else. It can be a single statement or a compound statement (a block { } ).

WHILE AND DO-WHILE LOOPS We could also write the formats as follows: // while loop format while (expression) { statement1; statement2; //... statementn; } // do-while loop format do { statement1; statement2; //... statementn; } while (expression);

WHILE AND DO-WHILE LOOPS The expression is a test condition that is evaluated to decide whether the loop should repeat or not. True means run the loop body again. False means quit. The while and do/while loops both follow the same basic flowchart -- the only exception is that: In a while loop, the expression is tested first. In a do/while loop, the loop "body" is executed first.

WHILE AND DO-WHILE LOOPS This example loop adds up all of the numbers between 1 and 50. // while loop example // loop body runs 50 times, condition checked 51 times int i = 1, sum = 0; while (i <= 50) { sum += i; // means: sum = sum + i; i++; // means: i = i + 1; } cout << "Sum of numbers from 1 through 50 is " << sum;

WHILE AND DO-WHILE LOOPS This example loop adds up all of the numbers between 1 and 50. // do/while loop example // loop body runs 50 times, condition checked 50 times int i = 1, sum = 0; do { sum += i; // means: sum = sum + i; i++; // means: i = i + 1; } while (i <= 50); cout << "Sum of numbers from 1 through 50 is " << sum;

WHILE AND DO-WHILE LOOPS A simple while-loop example (controlled by counting) Same example, but the while-loop counts backwards Another simple while-loop example, this one not controlled by counting Similar example, but with a do/while loop (and slightly different control condition).

THE FOR LOOP The for loop is most convenient with counting loops -- i.e. loops that are based on a counting variable, usually a known number of iterations. Format of for loop: for (initialcondition; testexpression; iterativestatement) statement

THE FOR LOOP Remember that the statement can be a single statement or a compound statement (block), so an alternate way to write the format might be: for (initialcondition; testexpression; iterativestatement) { statement1; statement2; } //... statementn;

THE FOR LOOP The initialcondition runs once, at the start of the loop. The testexpression is checked. If it's false, quit. If it's true, then: Run the loop body. Run the iterativestatement. Go back to the testexpression step and repeat. for (initialcondition; testexpression; iterativestatement) statement

THE FOR LOOP Recall this while loop example, which adds the numbers from 1 to 50: int i = 1, sum = 0; while (i <= 50) { sum += i; i++; } cout << "Sum of numbers from 1 through 50 is " << sum; Here's a for loop that does the same job: int i, sum = 0; for (i = 1; i <= 50; i++) { sum += i; } cout << "Sum of numbers from 1 through 50 is " << sum;

THE FOR LOOP This loop prints out the word "Hello" 10 times: for (int i = 0; i < 10; i++) cout << "Hello\n"; So does this one: for (int i = 1; i <= 10; i++) cout << "Hello\n";

THE FOR LOOP A few common types of algorithms using for-loops: A counting algorithm. A summing algorithm -- Adding up something with a loop. A product algorithm -- Multiplying things with a loop. Examples using nested loops: Simple nested loop example. Prints out a rectangle. Prints out a triangle.

THE FOR LOOP It should be noted that if the control variable is declared inside the for header, it only has scope through the for loop's execution. Once the loop is finished, the variable is out of scope: for (int counter = 0; counter < 10; counter++) { // loop body } cout << counter; // Illegal. Counter out of scope. This can be avoided by declaring the control variable before the loop itself. int counter; // declaration of control variable for (counter = 0; counter < 10; counter++) { // loop body } cout << counter; // OK. Counter is in scope.

THE FOR LOOP For loops also do not have to count one-by-one, or even upward. Examples: for (i = 100; i > 0; i--) for (c = 3; c <= 30; c+=4) The first example gives a loop header that starts counting at 100 and decrements its control variable, counting down to 1 (and quitting when i reaches 0). The second example shows a loop that begins counting at 3 and counts by 4's (the second value of c will be 7, etc).

BREAK AND CONTINUE These statements can be used to alter the flow of control in loops, although they are not specifically needed. break: This causes immediate exit from any loop (as well as from switch blocks). An example of break. continue: When used in a loop, this statement causes the current loop iteration to end, but the loop then moves on to the next step. In a while or do-while loop, the rest of the loop body is skipped, and execution moves on to the test condition. In a for loop, the rest of the loop body is skipped, and execution moves on to the iterative statement. An example of continue.

NEXT LECTURE Functions Part 1