(4-3) Selection Structures II in C H&K Chapter 4. Instructor - Andrew S. O Fallon CptS 121 (February 2, 2018) Washington State University

Size: px
Start display at page:

Download "(4-3) Selection Structures II in C H&K Chapter 4. Instructor - Andrew S. O Fallon CptS 121 (February 2, 2018) Washington State University"

Transcription

1 (4-3) Selection Structures II in C H&K Chapter 4 Instructor - Andrew S. O Fallon CptS 121 (February 2, 2018) Washington State University

2 Nested if statements (1) Consider the following scenario: A high school baseball team awards merit points to players based on their offensive performance. A single (encoded 's') is worth 1 point, a double (encoded 'd') is worth 2 points, a triple (encoded 't') is worth 3 points, and a home run (encoded 'h') is worth 4 points. Any at-bat that leads to an out (encoded 'o') worth 0 points. Write a C statement that, given an at-bat character, properly awards points. 2

3 Nested if statements (2) We can write a nested if statement to handle this situation: char at_bat; int points; printf("enter the at-bat code (s,d,t,h,o): "); scanf(" %c",&at_bat); if (at_bat == 's') /* single */ { points = 1; else if (at_bat == 'd') /* double */ { points = 2; else if (at_bat == 't') /* triple */ { points = 3; else if (at_bat == 'h') /* home run */ { points = 4; else /* out */ { points = 0; 3

4 Nested if statements (3) Consider the following updated scenario: A high school baseball team awards merit points to players based on their offensive performance and the class standing ('f' = freshman, 'o' = sophomore, 'j' = junior, and 's' = senior). In particular, freshmen and sophomores earn an extra point for home runs, whereas juniors and seniors do not earn any points for singles. Write a C if-statement that, given an at-bat character and a class standing character, properly awards points. 4

5 Nested if statements (4) We can write an even more nested if statements to handle this situation: char at_bat, class_standing; int points; if (at_bat == 's') { /* single */ if (class_standing == 'f') (class_standing == 'o') { points = 1; else { points = 0; else if (at_bat == 'd') { /* double */ points = 2; else if (at_bat == 't') { /* triple */ points = 3; else if (at_bat == 'h') { /* home run */ if (class_standing == 'j') (class_standing == 's') { points = 4; else { points = 5; else { /* out */ points = 0; 5

6 You Try It (1) Consider the following scenario: In an effort to make their weather reports more user-friendly, the national weather service would like to translate relative humidity percentages (integers between 0 and 100) into descriptions, as follows: 20% or lower: "bone dry" 21% - 40%: "dry" 41% - 60%: "moderately dry" 61% - 80%: "moderately humid" 81% or higher: "humid" Write a nested if statement that, given the relative humidity (an int between 0 and 100), prints out the appropriate description. 6

7 You Try It (2) 7 Solution: int humidity; printf("please insert the humidty present >> "); scanf("%d",&humidity); if (humidity <= 20) { else if (humidity <= 40) { else if (humidity <= 60) { else if (humidity <= 80) { printf("bone dry.\n"); printf("dry.\n"); printf("moderately dry.\n"); printf("moderately humid.\n"); else { /* assume it's between 81 and 100 *`/ printf("humid.\n");

8 Nested if statements (3) Nested if statements vs. compound conditionals Consider the following scenario: The National Weather Service would like to identify hourly weather reports in which the relative humidity is low (below 20%, the temperature is pleasant (between 75 and 85), and the winds are calm (0 to 10 m.p.h.). Assuming that the variables humidity, temp, and wind_speed hold those values, write an if statement that prints out a message when the conditions are met. 8

9 Nested if statements (4) Nested if statements vs. compound conditionals (cont.) Alternative 1: Nested if if (humidity < 20) if (temp >= 75) if (temp <= 85) if (wind_speed <= 10) printf("perfect conditions!\n"); Alternative 2: Compound if conditional if ((humidity < 20) && (temp >= 75) && (temp <= 85) && (wind_speed <= 10)) printf("perfect conditions!\n"); 9

10 Nested if statements (5) Important to note that the C compiler always matches an else with the most recent incomplete if Example: if (humidity < 20) if (temp <= 32) printf("it's a cool, dry day.") if (wind < 10) printf("luckily, the winds are calm."); else printf("the humidity is low, it's above freezing."); else if (humidity < 60) if (temp <= 32) printf("it's cold, with moderate humidity."); else printf("it's above freezing, with moderate humidity."); 10 Do you see a problem here? How would you fix it?

11 Nested if statements (6) Guidelines for using nested if statements Use braces to enclose all if branches, even if they contain only one statement This will obviate the problem of mismatching if and else branches If possible, structure conditions so each alternative falls on false branch of previous condition (else if ) In conditionals, don't mistake = for == The C compiler won't be able to catch this error, and you're condition will always evaluate to the same Boolean result! 11

12 Nested if statements (7) Example: Nested if with return statements int get_points(char at_bat) { if (at_bat == 's') /* single */ return 1; /* assertion: at_bat!= 's' */ if (at_bat == 'd') /* double */ return 2; /* assertion: at_bat!= 's' && at_bat!= 'd' */ if (at_bat == 't') /* triple */ return 3; /* assertion: at_bat!= 's' && at_bat!= 'd' && at_bat!= 't' */ if (at_bat == 'h') /* home run */ return 4; /* assertion: at_bat!= 's' && at_bat!= 'd' && at_bat!= 't' && at_bat!= 'h' */ return 0; /* out */ 12

13 References J.R. Hanly & E.B. Koffman, Problem Solving and Program Design in C (8 th Ed.), Addison- Wesley, P.J. Deitel & H.M. Deitel, C How to Program (7 th Ed.), Pearson Education, Inc.,

14 Collaborators Chris Hundhausen 14

(9-1) Arrays IV Parallel and H&K Chapter 7. Instructor - Andrew S. O Fallon CptS 121 (March 5, 2018) Washington State University

(9-1) Arrays IV Parallel and H&K Chapter 7. Instructor - Andrew S. O Fallon CptS 121 (March 5, 2018) Washington State University (9-1) Arrays IV Parallel and H&K Chapter 7 Instructor - Andrew S. O Fallon CptS 121 (March 5, 2018) Washington State University Parallel Arrays (1) Often, we'd like to associate the values in one array

More information

(4-2) Selection Structures in C H&K Chapter 4. Instructor - Andrew S. O Fallon CptS 121 (September 12, 2018) Washington State University

(4-2) Selection Structures in C H&K Chapter 4. Instructor - Andrew S. O Fallon CptS 121 (September 12, 2018) Washington State University (4-2) Selection Structures in C H&K Chapter 4 Instructor - Andrew S. O Fallon CptS 121 (September 12, 2018) Washington State University Control Structures 2 Recall that algorithms are composed of three

More information

(6-1) Iteration in C H&K Chapter 5. Instructor - Andrew S. O Fallon CptS 121 (February 11, 2019) Washington State University

(6-1) Iteration in C H&K Chapter 5. Instructor - Andrew S. O Fallon CptS 121 (February 11, 2019) Washington State University (6-1) Iteration in C H&K Chapter 5 Instructor - Andrew S. O Fallon CptS 121 (February 11, 2019) Washington State University Iterative Constructs (1) 2 Recall that algorithms are composed of three different

More information

(8-1) Arrays I H&K Chapter 7. Instructor - Andrew S. O Fallon CptS 121 (October 8, 2018) Washington State University

(8-1) Arrays I H&K Chapter 7. Instructor - Andrew S. O Fallon CptS 121 (October 8, 2018) Washington State University (8-1) Arrays I H&K Chapter 7 Instructor - Andrew S. O Fallon CptS 121 (October 8, 2018) Washington State University What is an array? A sequence of items that are contiguously allocated in memory All items

More information

(7-2) Modular Programming II H&K Chapter 6. Instructor - Andrew S. O Fallon CptS 121 (February 22, 2019) Washington State University

(7-2) Modular Programming II H&K Chapter 6. Instructor - Andrew S. O Fallon CptS 121 (February 22, 2019) Washington State University (7-2) Modular Programming II H&K Chapter 6 Instructor - Andrew S. O Fallon CptS 121 (February 22, 2019) Washington State University Pitfalls of Pointers and Output Parameters Not assigning a pointer a

More information

(6-2) Efficiency of Algorithms D & D Chapter 20. Instructor - Andrew S. O Fallon CptS 122 (July 11, 2018) Washington State University

(6-2) Efficiency of Algorithms D & D Chapter 20. Instructor - Andrew S. O Fallon CptS 122 (July 11, 2018) Washington State University (6-2) Efficiency of Algorithms D & D Chapter 20 Instructor - Andrew S. O Fallon CptS 122 (July 11, 2018) Washington State University Analysis of Algorithms (1) 2 In general, we want to determine central

More information

(8-2) Arrays II H&K Chapter 7. Instructor - Andrew S. O Fallon CptS 121 (February 28, 2018) Washington State University

(8-2) Arrays II H&K Chapter 7. Instructor - Andrew S. O Fallon CptS 121 (February 28, 2018) Washington State University (8-2) Arrays II H&K Chapter 7 Instructor - Andrew S. O Fallon CptS 121 (February 28, 2018) Washington State University Array Searching (1) ots of motivating problems Find a name in the phone book Find

More information

(10-1) Structs H&K Chapter 10. Instructor - Andrew S. O Fallon CptS 121 (March 20, 2019) Washington State University

(10-1) Structs H&K Chapter 10. Instructor - Andrew S. O Fallon CptS 121 (March 20, 2019) Washington State University (10-1) Structs H&K Chapter 10 Instructor - Andrew S. O Fallon CptS 121 (March 20, 2019) Washington State University struct Type (1) C supports another kind of user-defined type: the struct structs are

More information

(7-1) Modular Programming H&K Chapter 6. Instructor - Andrew S. O Fallon CptS 121 (February 21, 2018) Washington State University

(7-1) Modular Programming H&K Chapter 6. Instructor - Andrew S. O Fallon CptS 121 (February 21, 2018) Washington State University (7-1) Modular Programming H&K Chapter 6 Instructor - Andrew S. O Fallon CptS 121 (February 21, 2018) Washington State University Functions with Output Parameters (1) In many situations, we would like to

More information

(9-2) Strings I H&K Chapter 8. Instructor - Andrew S. O Fallon CptS 121 (March 7, 2018) Washington State University

(9-2) Strings I H&K Chapter 8. Instructor - Andrew S. O Fallon CptS 121 (March 7, 2018) Washington State University (9-2) Strings I H&K Chapter 8 Instructor - Andrew S. O Fallon CptS 121 (March 7, 2018) Washington State University String Fundamentals A string is a sequence of characters terminated by the null character

More information

Data Types H&K Chapter 7. Instructor - Andrew S. O Fallon CptS 121 (October 17, 2018) Washington State University

Data Types H&K Chapter 7. Instructor - Andrew S. O Fallon CptS 121 (October 17, 2018) Washington State University Data Types H&K Chapter 7 Instructor - Andrew S. O Fallon CptS 121 (October 17, 2018) Washington State University Data Types We already know that: Data type = set of values + set of operations on those

More information

(13-2) Dynamic Data Structures I H&K Chapter 13. Instructor - Andrew S. O Fallon CptS 121 (November 17, 2017) Washington State University

(13-2) Dynamic Data Structures I H&K Chapter 13. Instructor - Andrew S. O Fallon CptS 121 (November 17, 2017) Washington State University (13-2) Dynamic Data Structures I H&K Chapter 13 Instructor - Andrew S. O Fallon CptS 121 (November 17, 2017) Washington State University Dynamic Data Structures (1) Structures that expand and contract

More information

(9-3) Strings II H&K Chapter 8. Instructor - Andrew S. O Fallon CptS 121 (October 19, 2018) Washington State University

(9-3) Strings II H&K Chapter 8. Instructor - Andrew S. O Fallon CptS 121 (October 19, 2018) Washington State University (9-3) Strings II H&K Chapter 8 Instructor - Andrew S. O Fallon CptS 121 (October 19, 2018) Washington State University String Manipulation in C (1) Standard operators applied to most numerical (including

More information

(7-2) Operator Overloading D & D Chapter 10. Instructor - Andrew S. O Fallon CptS 122 (February 23, 2018) Washington State University

(7-2) Operator Overloading D & D Chapter 10. Instructor - Andrew S. O Fallon CptS 122 (February 23, 2018) Washington State University (7-2) Operator Overloading D & D Chapter 10 Instructor - Andrew S. O Fallon CptS 122 (February 23, 2018) Washington State University Key Concepts Keyword operator Operator overloading 2 What is Operator

More information

(6-1) Basics of a Queue. Instructor - Andrew S. O Fallon CptS 122 (September 26, 2018) Washington State University

(6-1) Basics of a Queue. Instructor - Andrew S. O Fallon CptS 122 (September 26, 2018) Washington State University (6-1) Basics of a Queue Instructor - Andrew S. O Fallon CptS 122 (September 26, 2018) Washington State University What is a Queue? 2 A linear data structure with a finite sequence of nodes, where nodes

More information

(1-1) C Review: Pointers, Arrays, Strings, & Structs. Instructor - Andrew S. O Fallon CptS 122 (January 10, 2018) Washington State University

(1-1) C Review: Pointers, Arrays, Strings, & Structs. Instructor - Andrew S. O Fallon CptS 122 (January 10, 2018) Washington State University (1-1) C Review: Pointers, Arrays, Strings, & Structs Instructor - Andrew S. O Fallon CptS 122 (January 10, 2018) Washington State University Crash Review on Critical C Topics Pointers Arrays Strings Structs

More information

(7 2) Classes: A Deeper Look D & D Chapter 9. Instructor - Andrew S. O Fallon CptS 122 (February 22, 2019) Washington State University

(7 2) Classes: A Deeper Look D & D Chapter 9. Instructor - Andrew S. O Fallon CptS 122 (February 22, 2019) Washington State University (7 2) Classes: A Deeper Look D & D Chapter 9 Instructor - Andrew S. O Fallon CptS 122 (February 22, 2019) Washington State University Key Concepts Composition relationship const objects const member functions

More information

(12-1) OOP: Polymorphism in C++ D & D Chapter 12. Instructor - Andrew S. O Fallon CptS 122 (April 3, 2019) Washington State University

(12-1) OOP: Polymorphism in C++ D & D Chapter 12. Instructor - Andrew S. O Fallon CptS 122 (April 3, 2019) Washington State University (12-1) OOP: Polymorphism in C++ D & D Chapter 12 Instructor - Andrew S. O Fallon CptS 122 (April 3, 2019) Washington State University Key Concepts Polymorphism virtual functions Virtual function tables

More information

Selection Structures II

Selection Structures II Lecture 7 Selection Structures II Nested if and switch statements CptS 121 Summer 2016 Armen Abnousi If () if() Nested if statements An if- statement can be placed inside another if- statement. Every matches

More information

(2-1) Data Structures & The Basics of a Linked List I. Instructor - Andrew S. O Fallon CptS 122 (August 27, 2018) Washington State University

(2-1) Data Structures & The Basics of a Linked List I. Instructor - Andrew S. O Fallon CptS 122 (August 27, 2018) Washington State University (2-1) Data Structures & The Basics of a Linked List I Instructor - Andrew S. O Fallon CptS 122 (August 27, 2018) Washington State University How do we Select a Data Structure? (1) Select a data structure

More information

(2-1) Numeric Expressions in C H&K Chapter 2. Instructor - Andrew S. O Fallon CptS 121 (August 27, 2018) Washington State University

(2-1) Numeric Expressions in C H&K Chapter 2. Instructor - Andrew S. O Fallon CptS 121 (August 27, 2018) Washington State University (2-1) Numeric Expressions in C H&K Chapter 2 Instructor - Andrew S. O Fallon CptS 121 (August 27, 2018) Washington State University Arithmetic Expressions Most programming problems require arithmetic expressions

More information

Repetition Structures II

Repetition Structures II Lecture 9 Repetition Structures II For and do-while loops CptS 121 Summer 2016 Armen Abnousi Types of Control Structures Sequential All programs that we have written so far The statements inside a pair

More information

(8 1) Container Classes & Class Templates D & D Chapter 18. Instructor - Andrew S. O Fallon CptS 122 (October 8, 2018) Washington State University

(8 1) Container Classes & Class Templates D & D Chapter 18. Instructor - Andrew S. O Fallon CptS 122 (October 8, 2018) Washington State University (8 1) Container Classes & Class Templates D & D Chapter 18 Instructor - Andrew S. O Fallon CptS 122 (October 8, 2018) Washington State University Key Concepts Class and block scope Access and utility functions

More information

(3-1) Functions II H&K Chapter 3. Instructor - Andrew S. O Fallon CptS 121 (September 5, 2018) Washington State University

(3-1) Functions II H&K Chapter 3. Instructor - Andrew S. O Fallon CptS 121 (September 5, 2018) Washington State University (3-1) Functions II H&K Chapter 3 Instructor - Andrew S. O Fallon CptS 121 (September 5, 2018) Washington State University Overview of Functions (1) A block of code or unit that generally performs one task

More information

(2-2) Functions I H&K Chapter 3. Instructor - Andrew S. O Fallon CptS 121 (January 18, 2019) Washington State University

(2-2) Functions I H&K Chapter 3. Instructor - Andrew S. O Fallon CptS 121 (January 18, 2019) Washington State University (2-2) Functions I H&K Chapter 3 Instructor - Andrew S. O Fallon CptS 121 (January 18, 2019) Washington State University Problem Solving Example (1) Problem Statement: Write a program that computes your

More information

(3-2) Basics of a Stack. Instructor - Andrew S. O Fallon CptS 122 (January 26, 2018) Washington State University

(3-2) Basics of a Stack. Instructor - Andrew S. O Fallon CptS 122 (January 26, 2018) Washington State University (3-2) Basics of a Stack Instructor - Andrew S. O Fallon CptS 122 (January 26, 2018) Washington State University What is a Stack? A finite sequence of nodes, where only the top node may be accessed Insertions

More information

(1-2) Introduction to C Data Structures & Abstract Data Types. Instructor - Andrew S. O Fallon CptS 122 (June 6, 2018) Washington State University

(1-2) Introduction to C Data Structures & Abstract Data Types. Instructor - Andrew S. O Fallon CptS 122 (June 6, 2018) Washington State University (1-2) Introduction to C Data Structures & Abstract Data Types Instructor - Andrew S. O Fallon CptS 122 (June 6, 2018) Washington State University What is a Data Structure? A software construct describing

More information

(11-1) OOP: Inheritance in C++ D & D Chapter 11. Instructor - Andrew S. O Fallon CptS 122 (October 29, 2018) Washington State University

(11-1) OOP: Inheritance in C++ D & D Chapter 11. Instructor - Andrew S. O Fallon CptS 122 (October 29, 2018) Washington State University (11-1) OOP: Inheritance in C++ D & D Chapter 11 Instructor - Andrew S. O Fallon CptS 122 (October 29, 2018) Washington State University Key Concepts Base and derived classes Protected members Inheritance

More information

Selection Statements. Pseudocode

Selection Statements. Pseudocode Selection Statements Pseudocode Natural language mixed with programming code Ex: if the radius is negative the program display a message indicating wrong input; the program compute the area and display

More information

(3-3) File Processing with Functions. Instructor - Andrew S. O Fallon CptS 121 (January 26, 2018) Washington State University

(3-3) File Processing with Functions. Instructor - Andrew S. O Fallon CptS 121 (January 26, 2018) Washington State University (3-3) File Processing with Functions Instructor - Andrew S. O Fallon CptS 121 (January 26, 2018) Washington State University Why Files? Need to store data and information outside of a program Most real

More information

(5 2) Introduction to Classes in C++ Instructor - Andrew S. O Fallon CptS 122 (February 7, 2018) Washington State University

(5 2) Introduction to Classes in C++ Instructor - Andrew S. O Fallon CptS 122 (February 7, 2018) Washington State University (5 2) Introduction to Classes in C++ Instructor - Andrew S. O Fallon CptS 122 (February 7, 2018) Washington State University Key Concepts Function templates Defining classes with member functions The Rule

More information

LAB 4.1 Relational Operators and the if Statement

LAB 4.1 Relational Operators and the if Statement LAB 4.1 Relational Operators and the if Statement // This program tests whether or not an initialized value of num2 // is equal to a value of num1 input by the user. int main( ) int num1, // num1 is not

More information

Flow of Control. Flow of control The order in which statements are executed. Transfer of control

Flow of Control. Flow of control The order in which statements are executed. Transfer of control 1 Programming in C Flow of Control Flow of control The order in which statements are executed Transfer of control When the next statement executed is not the next one in sequence 2 Flow of Control Control

More information

V2 2/4/ Ch Programming in C. Flow of Control. Flow of Control. Flow of control The order in which statements are executed

V2 2/4/ Ch Programming in C. Flow of Control. Flow of Control. Flow of control The order in which statements are executed Programming in C 1 Flow of Control Flow of control The order in which statements are executed Transfer of control When the next statement executed is not the next one in sequence 2 Flow of Control Control

More information

Lesson #4. Logical Operators and Selection Statements. 4. Logical Operators and Selection Statements - Copyright Denis Hamelin - Ryerson University

Lesson #4. Logical Operators and Selection Statements. 4. Logical Operators and Selection Statements - Copyright Denis Hamelin - Ryerson University Lesson #4 Logical Operators and Selection Statements Control Structures Control structures combine individual instructions into a single logical unit with one entry point at the top and one exit point

More information

Objectives. Chapter 4: Control Structures I (Selection) Objectives (cont d.) Control Structures. Control Structures (cont d.) Relational Operators

Objectives. Chapter 4: Control Structures I (Selection) Objectives (cont d.) Control Structures. Control Structures (cont d.) Relational Operators Objectives Chapter 4: Control Structures I (Selection) In this chapter, you will: Learn about control structures Examine relational and logical operators Explore how to form and evaluate logical (Boolean)

More information

Chapter 4: Control Structures I (Selection) Objectives. Objectives (cont d.) Control Structures. Control Structures (cont d.

Chapter 4: Control Structures I (Selection) Objectives. Objectives (cont d.) Control Structures. Control Structures (cont d. Chapter 4: Control Structures I (Selection) In this chapter, you will: Objectives Learn about control structures Examine relational and logical operators Explore how to form and evaluate logical (Boolean)

More information

C/Java Syntax. January 13, Slides by Mark Hancock (adapted from notes by Craig Schock)

C/Java Syntax. January 13, Slides by Mark Hancock (adapted from notes by Craig Schock) C/Java Syntax 1 Lecture 02 Summary Keywords Variable Declarations Data Types Operators Statements if, switch, while, do-while, for Functions 2 By the end of this lecture, you will be able to identify the

More information

C/Java Syntax. Lecture 02 Summary. Keywords Variable Declarations Data Types Operators Statements. Functions. if, switch, while, do-while, for

C/Java Syntax. Lecture 02 Summary. Keywords Variable Declarations Data Types Operators Statements. Functions. if, switch, while, do-while, for C/Java Syntax 1 Lecture 02 Summary Keywords Variable Declarations Data Types Operators Statements if, switch, while, do-while, for Functions 2 1 By the end of this lecture, you will be able to identify

More information

Flow of Control: Programs can control the order in which their instructions are executed. Four types of flow:

Flow of Control: Programs can control the order in which their instructions are executed. Four types of flow: Flow of Control: Programs can control the order in which their instructions are executed. Four types of flow: 1. Sequential: Execute instructions in the order listed in the. 2. Method calls: Transfer flow

More information

BRANCHING if-else statements

BRANCHING if-else statements BRANCHING if-else statements Conditional Statements A conditional statement lets us choose which statement t t will be executed next Therefore they are sometimes called selection statements Conditional

More information

Lecture 02 Summary. C/Java Syntax 1/14/2009. Keywords Variable Declarations Data Types Operators Statements. Functions

Lecture 02 Summary. C/Java Syntax 1/14/2009. Keywords Variable Declarations Data Types Operators Statements. Functions Lecture 02 Summary C/Java Syntax Keywords Variable Declarations Data Types Operators Statements if, switch, while, do-while, for Functions 1 2 By the end of this lecture, you will be able to identify the

More information

(5-1) Object-Oriented Programming (OOP) and C++ Instructor - Andrew S. O Fallon CptS 122 (February 4, 2019) Washington State University

(5-1) Object-Oriented Programming (OOP) and C++ Instructor - Andrew S. O Fallon CptS 122 (February 4, 2019) Washington State University (5-1) Object-Oriented Programming (OOP) and C++ Instructor - Andrew S. O Fallon CptS 122 (February 4, 2019) Washington State University Key Concepts 2 Object-Oriented Design Object-Oriented Programming

More information

COMP 110 Introduction to Programming. What did we discuss?

COMP 110 Introduction to Programming. What did we discuss? COMP 110 Introduction to Programming Fall 2015 Time: TR 9:30 10:45 Room: AR 121 (Hanes Art Center) Jay Aikat FB 314, aikat@cs.unc.edu Previous Class What did we discuss? COMP 110 Fall 2015 2 1 Today Announcements

More information

Flow of Control Branching 2. Cheng, Wei COMP May 19, Title

Flow of Control Branching 2. Cheng, Wei COMP May 19, Title Flow of Control Branching 2 Cheng, Wei COMP110-001 May 19, 2014 Title Review of Previous Lecture If else Q1: Write a small program that Reads an integer from user Prints Even if the integer is even Otherwise,

More information

SCSP Programming Technique C

SCSP Programming Technique C Objectives n this chapter, you will learn: To use the arrray data structure to represent lists and tables of values. CHAPTER 1: To define an array, initialize an array and refer to individual elements

More information

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

C++ Programming: From Problem Analysis to Program Design, Third Edition C++ Programming: From Problem Analysis to Program Design, Third Edition Chapter 4: Control Structures I (Selection) Control Structures A computer can proceed: In sequence Selectively (branch) - making

More information

4.1. Chapter 4: Simple Program Scheme. Simple Program Scheme. Relational Operators. So far our programs follow a simple scheme

4.1. Chapter 4: Simple Program Scheme. Simple Program Scheme. Relational Operators. So far our programs follow a simple scheme Chapter 4: 4.1 Making Decisions Relational Operators Simple Program Scheme Simple Program Scheme So far our programs follow a simple scheme Gather input from the user Perform one or more calculations Display

More information

conditional statements

conditional statements L E S S O N S E T 4 Conditional Statements PU RPOSE PROCE DU RE 1. To work with relational operators 2. To work with conditional statements 3. To learn and use nested if statements 4. To learn and use

More information

COMP Flow of Control: Branching 2. Yi Hong May 19, 2015

COMP Flow of Control: Branching 2. Yi Hong May 19, 2015 COMP 110-001 Flow of Control: Branching 2 Yi Hong May 19, 2015 Review if else Q1: Write a program that Reads an integer from user Prints Even if the integer is even Otherwise, prints Odd Boolean expression

More information

COP 2000 Introduction to Computer Programming Mid-Term Exam Review

COP 2000 Introduction to Computer Programming Mid-Term Exam Review he exam format will be different from the online quizzes. It will be written on the test paper with questions similar to those shown on the following pages. he exam will be closed book, but students can

More information

ITT Technical Institute. ET2560T Introduction to C Programming Onsite and Online Course SYLLABUS

ITT Technical Institute. ET2560T Introduction to C Programming Onsite and Online Course SYLLABUS ITT Technical Institute ET2560T Introduction to C Programming Onsite and Online Course SYLLABUS Credit hours: 4.5 Contact/Instructional hours: 67 (41 Theory Hours, 26 Lab Hours Prerequisite(s and/or Corequisite(s:

More information

Computer Science & Engineering 150A Problem Solving Using Computers

Computer Science & Engineering 150A Problem Solving Using Computers Computer Science & Engineering 150A Problem Solving Using Computers Lecture 04 - Conditionals Stephen Scott (Adapted from Christopher M. Bourke) Fall 2009 1 / 1 cbourke@cse.unl.edu Control Structure Conditions

More information

Lecture 14. Arrays II. Selection Sort & Parallel Arrays. CptS 121 Summer 2016 Armen Abnousi

Lecture 14. Arrays II. Selection Sort & Parallel Arrays. CptS 121 Summer 2016 Armen Abnousi Lecture 14 Arrays II Selection Sort & Parallel Arrays CptS 121 Summer 2016 Armen Abnousi Sorting an array We have seen how to search in an array Often we want to sort our arrays for more efficient future

More information

Lesson 04. Control Structures I : Decision Making. MIT 31043, VISUAL PROGRAMMING By: S. Sabraz Nawaz

Lesson 04. Control Structures I : Decision Making. MIT 31043, VISUAL PROGRAMMING By: S. Sabraz Nawaz Lesson 04 Control Structures I : Decision Making MIT 31043, VISUAL PROGRAMMING Senior Lecturer in MIT Department of MIT Faculty of Management and Commerce South Eastern University of Sri Lanka Decision

More information

Week 1 Introduction to Computer and Algorithm (Part1) UniMAP Sem II 11/12 DKT121: Basic Computer Programming 1

Week 1 Introduction to Computer and Algorithm (Part1) UniMAP Sem II 11/12 DKT121: Basic Computer Programming 1 Week 1 Introduction to Computer and Algorithm (Part1) UniMAP Sem II 11/12 DKT121: Basic Computer Programming 1 General Information Contributes 3 units: 2 hours lectures 2 hours labs and tutorials Main

More information

COMP Introduction to Programming If-Else Statement, Switch Statement and Loops

COMP Introduction to Programming If-Else Statement, Switch Statement and Loops COMP 110-003 Introduction to Programming If-Else Statement, Switch Statement and Loops February 5, 2013 Haohan Li TR 11:00 12:15, SN 011 Spring 2013 Announcement Office hour is permanently changed Wednesday,

More information

In Java, data type boolean is used to represent Boolean data. Each boolean constant or variable can contain one of two values: true or false.

In Java, data type boolean is used to represent Boolean data. Each boolean constant or variable can contain one of two values: true or false. CS101, Mock Boolean Conditions, If-Then Boolean Expressions and Conditions The physical order of a program is the order in which the statements are listed. The logical order of a program is the order in

More information

Week 4 Selection Structures. UniMAP Sem II-11/12 DKT121 Basic Computer Programming 1

Week 4 Selection Structures. UniMAP Sem II-11/12 DKT121 Basic Computer Programming 1 Week 4 Selection Structures UniMAP Sem II-11/12 DKT121 Basic Computer Programming 1 Outline Recall selection control structure Types of selection One-way selection Two-way selection Multi-selection Compound

More information

Chapter 2, Part III Arithmetic Operators and Decision Making

Chapter 2, Part III Arithmetic Operators and Decision Making Chapter 2, Part III Arithmetic Operators and Decision Making C How to Program, 8/e, GE 2016 Pearson Education, Ltd. All rights reserved. 1 2016 Pearson Education, Ltd. All rights reserved. 2 2016 Pearson

More information

Flow Control. CSC215 Lecture

Flow Control. CSC215 Lecture Flow Control CSC215 Lecture Outline Blocks and compound statements Conditional statements if - statement if-else - statement switch - statement? : opertator Nested conditional statements Repetitive statements

More information

Control Flow, Functions and Basic Linkage

Control Flow, Functions and Basic Linkage Control Flow, Functions and Basic Linkage MATH 5061: Fundamentals of Computer Programming for Scientists and Engineers Dr. Richard Berger richard.berger@temple.edu Department of Mathematics Temple University

More information

C: How to Program. Week /Mar/05

C: How to Program. Week /Mar/05 1 C: How to Program Week 2 2007/Mar/05 Chapter 2 - Introduction to C Programming 2 Outline 2.1 Introduction 2.2 A Simple C Program: Printing a Line of Text 2.3 Another Simple C Program: Adding Two Integers

More information

Flow of Control. Selection. if statement. True and False in C False is represented by any zero value. switch

Flow of Control. Selection. if statement. True and False in C False is represented by any zero value. switch Flow of Control True and False in C Conditional Execution Iteration Nested Code(Nested-ifs, Nested-loops) Jumps 1 True and False in C False is represented by any zero value The int expression having the

More information

Chapter 4 - Notes Control Structures I (Selection)

Chapter 4 - Notes Control Structures I (Selection) Chapter 4 - Notes Control Structures I (Selection) I. Control Structures A. Three Ways to Process a Program 1. In Sequence: Starts at the beginning and follows the statements in order 2. Selectively (by

More information

C Language Part 2 Digital Computer Concept and Practice Copyright 2012 by Jaejin Lee

C Language Part 2 Digital Computer Concept and Practice Copyright 2012 by Jaejin Lee C Language Part 2 (Minor modifications by the instructor) 1 Scope Rules A variable declared inside a function is a local variable Each local variable in a function comes into existence when the function

More information

1. The programming language C is more than 30 years old. True or False? (Circle your choice.)

1. The programming language C is more than 30 years old. True or False? (Circle your choice.) Name: Section: Grade: Answer these questions while viewing the assigned videos. Not sure of an answer? Ask your instructor to explain at the beginning of the next class session. You can then fill in your

More information

Objectives. Chapter 4: Control Structures I (Selection) Objectives (cont d.) Control Structures

Objectives. Chapter 4: Control Structures I (Selection) Objectives (cont d.) Control Structures Objectives Chapter 4: Control Structures I (Selection) In this chapter, you will: Learn about control structures Examine relational and logical operators Explore how to form and evaluate logical (Boolean)

More information

Instructor: SIR MUHAMMAD NAVEED Created by: ARSLAN AHMED SHAAD ( ) MUHAMMAD BILAL ( ) ISIT:

Instructor: SIR MUHAMMAD NAVEED Created by: ARSLAN AHMED SHAAD ( ) MUHAMMAD BILAL ( ) ISIT: Instructor: SIR MUHAMMAD NAVEED Created by: ARSLAN AHMED SHAAD ( 1163135 ) MUHAMMAD BILAL (1163122 ) ISIT:www.techo786.wordpress.com CHAPTER: 3 NOTE: CONTROL STATEMENTS Question s Given below are Long

More information

Logic & program control part 3: Compound selection structures

Logic & program control part 3: Compound selection structures Logic & program control part 3: Compound selection structures Multi-way selection Many algorithms involve several possible pathways to a solution A simple if/else structure provides two alternate paths;

More information

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

Example. CS 201 Selection Structures (2) and Repetition. Nested if Statements with More Than One Variable CS 201 Selection Structures (2) and Repetition Debzani Deb Multiple-Alternative Decision Form of Nested if Nested if statements can become quite complex. If there are more than three alternatives and indentation

More information

Computer Science Grade 10 Sample -Term 2 Date: February 2018 Time: TBC Duration: 45 minutes

Computer Science Grade 10 Sample -Term 2 Date: February 2018 Time: TBC Duration: 45 minutes STUDENT SECTION Name Class Student MOE number (SIS) School name School MOE Number STUDENT SIGNATURE Computer Science Grade 10 Sample -Term 2 Date: February 2018 Time: TBC Duration: 45 minutes FOR ADMIN

More information

School of Computer Science CPS109 Course Notes 5 Alexander Ferworn Updated Fall 15

School of Computer Science CPS109 Course Notes 5 Alexander Ferworn Updated Fall 15 Table of Contents 1 INTRODUCTION... 1 2 IF... 1 2.1 BOOLEAN EXPRESSIONS... 3 2.2 BLOCKS... 3 2.3 IF-ELSE... 4 2.4 NESTING... 5 3 SWITCH (SOMETIMES KNOWN AS CASE )... 6 3.1 A BIT ABOUT BREAK... 7 4 CONDITIONAL

More information

AP Computer Science Homework Set 2 Class Design

AP Computer Science Homework Set 2 Class Design AP Computer Science Homework Set 2 Class Design P2A. Write a class Song that stores information about a song. Class Song should include: a) At least three instance variables that represent characteristics

More information

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

Lecture Programming in C++ PART 1. By Assistant Professor Dr. Ali Kattan Lecture 08-1 Programming in C++ PART 1 By Assistant Professor Dr. Ali Kattan 1 The Conditional Operator The conditional operator is similar to the if..else statement but has a shorter format. This is useful

More information

Decision Making in C

Decision Making in C Decision Making in C Decision making structures require that the programmer specify one or more conditions to be evaluated or tested by the program, along with a statement or statements to be executed

More information

CS-211 Fall 2017 Test 1 Version A Oct. 2, Name:

CS-211 Fall 2017 Test 1 Version A Oct. 2, Name: CS-211 Fall 2017 Test 1 Version A Oct. 2, 2017 True/False Questions... Name: 1. (10 points) For the following, Check T if the statement is true, the F if the statement is false. (a) T F : If I code a C

More information

CS313D: ADVANCED PROGRAMMING LANGUAGE

CS313D: ADVANCED PROGRAMMING LANGUAGE CS313D: ADVANCED PROGRAMMING LANGUAGE Computer Science Department Lecture 3: C# language basics Lecture Contents 2 C# basics Conditions Loops Methods Arrays Dr. Amal Khalifa, Spr 2015 3 Conditions and

More information

9/19/12. Why Study Discrete Math? What is discrete? Sets (Rosen, Chapter 2) can be described by discrete math TOPICS

9/19/12. Why Study Discrete Math? What is discrete? Sets (Rosen, Chapter 2) can be described by discrete math TOPICS What is discrete? Sets (Rosen, Chapter 2) TOPICS Discrete math Set Definition Set Operations Tuples Consisting of distinct or unconnected elements, not continuous (calculus) Helps us in Computer Science

More information

Fundamentals of Programming Session 4

Fundamentals of Programming Session 4 Fundamentals of Programming Session 4 Instructor: Reza Entezari-Maleki Email: entezari@ce.sharif.edu 1 Fall 2011 These slides are created using Deitel s slides, ( 1992-2010 by Pearson Education, Inc).

More information

CpSc 1011 Lab 4 Formatting and Flow Control Windchill Temps

CpSc 1011 Lab 4 Formatting and Flow Control Windchill Temps CpSc 1011 Lab 4 Formatting and Flow Control Windchill Temps Overview By the end of the lab, you will be able to: use fscanf() to accept inputs from the user and use fprint() for print statements to the

More information

CpSc 1111 Lab 4 Part a Flow Control, Branching, and Formatting

CpSc 1111 Lab 4 Part a Flow Control, Branching, and Formatting CpSc 1111 Lab 4 Part a Flow Control, Branching, and Formatting Your factors.c and multtable.c files are due by Wednesday, 11:59 pm, to be submitted on the SoC handin page at http://handin.cs.clemson.edu.

More information

A control structure refers to the way in which the Programmer specifies the order of executing the statements

A control structure refers to the way in which the Programmer specifies the order of executing the statements Control Structures A control structure refers to the way in which the Programmer specifies the order of executing the statements The following approaches can be chosen depending on the problem statement:

More information

1.4 Control Structures: Selection. Department of CSE

1.4 Control Structures: Selection. Department of CSE 1.4 Control Structures: Selection 1 Department of CSE Objectives To understand how decisions are made in a computer To understand the relational operators To understand the logical operators and,or and

More information

Lecture 6. Statements

Lecture 6. Statements Lecture 6 Statements 1 Statements This chapter introduces the various forms of C++ statements for composing programs You will learn about Expressions Composed instructions Decision instructions Loop instructions

More information

DECISION STRUCTURES: USING IF STATEMENTS IN JAVA

DECISION STRUCTURES: USING IF STATEMENTS IN JAVA DECISION STRUCTURES: USING IF STATEMENTS IN JAVA S o far all the programs we have created run straight through from start to finish, without making any decisions along the way. Many times, however, you

More information

LECTURE 04 MAKING DECISIONS

LECTURE 04 MAKING DECISIONS PowerPoint Slides adapted from *Starting Out with C++: From Control Structures through Objects, 7/E* by *Tony Gaddis* Copyright 2012 Pearson Education Inc. COMPUTER PROGRAMMING LECTURE 04 MAKING DECISIONS

More information

APCS Semester #1 Final Exam Practice Problems

APCS Semester #1 Final Exam Practice Problems Name: Date: Per: AP Computer Science, Mr. Ferraro APCS Semester #1 Final Exam Practice Problems The problems here are to get you thinking about topics we ve visited thus far in preparation for the semester

More information

Introduction to C Programming

Introduction to C Programming 1 2 Introduction to C Programming 2.6 Decision Making: Equality and Relational Operators 2 Executable statements Perform actions (calculations, input/output of data) Perform decisions - May want to print

More information

numerical calculations, decisions, mathematical functions, usability, I/O, defensive programming, functions.

numerical calculations, decisions, mathematical functions, usability, I/O, defensive programming, functions. pracnique Wind Chill Factor SYNOPSIS This pracnique describes writing a program to calculate the wind chill factor. The program is then refined by adding defensive programming, and modularized to use functions.

More information

Draft. Students Table. FName LName StudentID College Year. Justin Ennen Science Senior. Dan Bass Management Junior

Draft. Students Table. FName LName StudentID College Year. Justin Ennen Science Senior. Dan Bass Management Junior Chapter 6 Introduction to SQL 6.1 What is a SQL? When would I use it? SQL stands for Structured Query Language. It is a language used mainly for talking to database servers. It s main feature divisions

More information

CpSc 1111 Lab 5 Formatting and Flow Control

CpSc 1111 Lab 5 Formatting and Flow Control CpSc 1111 Lab 5 Formatting and Flow Control Overview By the end of the lab, you will be able to: use fscanf() to accept a character input from the user execute a basic block iteratively using loops to

More information

UIC. C Programming Primer. Bharathidasan University

UIC. C Programming Primer. Bharathidasan University C Programming Primer UIC C Programming Primer Bharathidasan University Contents Getting Started 02 Basic Concepts. 02 Variables, Data types and Constants...03 Control Statements and Loops 05 Expressions

More information

Introduction to Programming Using Java (98-388)

Introduction to Programming Using Java (98-388) Introduction to Programming Using Java (98-388) Understand Java fundamentals Describe the use of main in a Java application Signature of main, why it is static; how to consume an instance of your own class;

More information

CMIS 102 Hands-On Lab

CMIS 102 Hands-On Lab CMIS 10 Hands-On Lab Week 8 Overview This hands-on lab allows you to follow and experiment with the critical steps of developing a program including the program description, analysis, test plan, and implementation

More information

1. The Mac Environment in Sierra Hall 1242

1. The Mac Environment in Sierra Hall 1242 Wednesday, August 26, 2015 Lab Notes Topics for today The Mac Environment C (and Unix) Notes on C Part 1 Program 1 1. The Mac Environment in Sierra Hall 1242 a. Turning on the Mac If the Mac is in sleep

More information

Following is the general form of a typical decision making structure found in most of the programming languages:

Following is the general form of a typical decision making structure found in most of the programming languages: Decision Making Decision making structures have one or more conditions to be evaluated or tested by the program, along with a statement or statements that are to be executed if the condition is determined

More information

In Fig. 3.5 and Fig. 3.7, we include some completely blank lines in the pseudocode for readability. programs into their various phases.

In Fig. 3.5 and Fig. 3.7, we include some completely blank lines in the pseudocode for readability. programs into their various phases. Formulating Algorithms with Top-Down, Stepwise Refinement Case Study 2: Sentinel-Controlled Repetition In Fig. 3.5 and Fig. 3.7, we include some completely blank lines in the pseudocode for readability.

More information

Lecture 5. Functions II. Functions with Arguments. CptS 121 Summer 2016 Armen Abnousi

Lecture 5. Functions II. Functions with Arguments. CptS 121 Summer 2016 Armen Abnousi Lecture 5 Functions II Functions with Arguments CptS 121 Summer 2016 Armen Abnousi Remember Functions break problems into smaller pieces Easier to read, test and maintain Functions allow to avoid repetition

More information

8. Decision-Making Statements. Java. Summer 2008 Instructor: Dr. Masoud Yaghini

8. Decision-Making Statements. Java. Summer 2008 Instructor: Dr. Masoud Yaghini 8. Decision-Making Statements Java Summer 2008 Instructor: Dr. Masoud Yaghini Decision-Making Statements Outline Introduction The if-then Statement The if-then-else Statement The switch Statement References

More information