Lecture 11: Logical Functions & Selection Structures CMPSC 200 Programming for Engineers with MATLAB

Size: px
Start display at page:

Download "Lecture 11: Logical Functions & Selection Structures CMPSC 200 Programming for Engineers with MATLAB"

Transcription

1 Lecture 11: Logical Functions & Selection Structures CMPSC 2 Programming for Engineers with MATLAB Brad Sottile Fall 214

2 Slide 2 of 3 Midterm 1 Details You must bring your PSU student ID card Scantron must be in #2 pencil 5 Questions/1 points 3 m/c questions (1 point each) 1 true/false questions (1 point each) 5 short answer questions (2 points each) 5 programming questions (1 points each) You ll have 2 hours (hopefully won t need all of it) You may bring one (1) 8.5 x 11 sheet of notes, equations, syntax, etc. You may write on both the front and back. We won t collect it. Will send an about room assignments once I ve confirmed the number of conflict exams. Only material through last week (i.e. up through and including Chapter 7) will be on the exam. Knowledge learned from labs, project 1 and in-class practice/review exercises is all fair game.

3 Slide 3 of 3 Advice of the Day Being smart isn t good enough anymore Look around you everyone in this room was a good or excellent student in HS or they wouldn t be here What sets good scientists and engineers apart from the rest then? Teamwork Communication skills Knowing when to lead, and when to follow Specialization (becoming an expert at topic X ) Knowing when and how to ask for help Others?

4 Slide 4 of 3 Categorizing Code Sections of computer code can be classified into three categories Sequences lines of code are executed one after another (i.e. what we ve been doing) Selection Structures executes some piece of code if some known condition is true, otherwise executes some sort of alternative code (can be many branches). Repetition Structures (loops) causes a group of statements to be executed multiple times (either a fixed number, or until some stated condition is met). [We ll talk about this one next week.]

5 Slide 5 of 3 Graphical View of Classification Sequence Straight through Selection Repetition As many branches as Fixed or Variable needed; may Number of loops re-converge to sequence

6 Slide 6 of 3 Relational Operators One can perform comparisons between the relationships between scalars or vectors) using the relational operators show in the table below. Beware: means equal to/assignment means comparison for equality Remember: is false, 1 is true (binary logic!) Relational Operator Interpretation < less than < Less than or equal to > greater than > greater than or equal to equal to ~ not equal to Source: Table 8.1 in Moore, H., MATLAB for Engineers, 4th ed., p. 272

7 Slide 7 of 3 Examples of Relational Operators (1 of 2) Input: Output: x 1; y 2; a x < y b x > y c x y d x ~ y a 1 b c d 1 Remember: is false 1 is true

8 Slide 8 of 3 Examples of Relational Operators (2 of 2) Input: x y a b c d Output: [1 2 3]; [2 1 3]; x < y x > y x y x ~ y a b c d Remember: is false 1 is true 1

9 Slide 9 of 3 Logical Operators One can augment performing comparisons using and, not, and or Beware: is the pipe (underneath backspace) Remember: is false, 1 is true (binary logic!) Logical Operator Interpretation & and ~ not or xor exclusive or && short cut and (used with scalars) short cut or (used with scalars) Source: Table 8.2 in Moore, H., MATLAB for Engineers, 4 th ed., p. 273

10 Slide 1 of 3 Examples of Logical Operators (1 of 2) Input: x 1; y 2; z 1; a b c d z > x & z < y z > x z < y ~x xor(x,y) Output: a b c d 1 Remember: is false 1 is true

11 Slide 11 of 3 Examples of Logical Operators (2 of 2) Input: Output: x [1 2 3]; y [2 1 3]; z [1 2 ]; a b c d a b c d z > x & z < y z > x z < y ~z xor(x,y) 1 Remember: is false 1 is true 1 1

12 Slide 12 of 3 Think-Pair-Share What will be the result of these lines of code? Think about these, then find a partner/small group and discuss. We ll come together and discuss. x [1 4 5]; y [1 1 3]; z [ 2 1]; a z < x & z > y b x y c ~z d y z

13 Slide 13 of 3 Pseudocode Verbal description of code Often is language independent Intermediate step between everyday language and a programming language Example: Pseudocode: Request character string input from user Print the string to the screen MATLAB code: str input('enter string: ', 's'); disp(str)

14 Slide 14 of 3 Flowcharts A flowchart is exactly what it sounds like a graphical representation of how code flows or progresses. Symbol Description Indicates the beginning or end of a section of code Indicates input or output processes Indicates a decision point Indicates calculations Source: Table 8.3 in Moore, H., MATLAB for Engineers, 4th Ed., p. 275.

15 Slide 15 of 3 Flowchart Example Start This is the same problem that we created psuedocode for Request character string from user Output character string to the user End

16 Slide 16 of 3 find The command find searches a matrix, finding what elements meet the search criteria The command returns the index/indices of the valid results Compare this technique to if statements and switches later in the lecture Versions of the command: index index index [row, [row, find(x) find(x,k) (first k elements) find(x,k,'last') (last k elements) col] find(x, ) col, vector] find(x, )

17 Slide 17 of 3 find examples (1 of 2) Code: A [ ]; B find(a>3) C find(a4) D find(a~2) Output: B C 4 6 D

18 Slide 18 of 3 find examples (2 of 2) Code: E [1 5; 2 6]; [F_row, F_col] find(e>1) [G_row, G_col, G_vec] find(e<6) Output: (NOTE: automatically prints as columns printed as rows only to fit output onto the slide) F_row F_col G_row G_col G_vec 1 1 1

19 Slide 19 of 3 Selection Structures: if The simplest classical selection structure is the if statement Takes the following form: if comparison do something end If the comparison evaluates to be true, then the do something statements are executed. If the comparison evaluates to be false, then the do something statements are ignored.

20 Slide 2 of 3 Selection Structures: if/elseif/else Can also use elseif and else as choices Takes the following form: if comparison do something elseif comparison do something else else do something different end You can have an else without an elseif, and an elseif without an else. However, both else and elseif are dependent on having an if If the first statement (the if statement) doesn t evaluate to true, it checks the elseif statement(s) If nothing is true by the time one gets to else, the else commands are executed Can mix and match these as much as you need, and not everyone needs to be present

21 Slide 21 of 3 if example Code: x 4; if x 4 disp('x 4') end if/else example Code: Checks WHOLE matrix beware! y [1 2]; if y 1 disp('works.') else disp('ut oh.') end Output: Output: x 4 Ut oh.

22 Slide 22 of 3 if/elseif/else Example Code: x 2; if x 1 disp('then elseif x > 1 disp('then elseif x < 1 disp('then else disp('then end Output: Then x > 1 x 1') x > 1') x < 1') I''m confused')

23 Slide 23 of 3 Another if/elseif/else Example Code: y []; if y 1 disp('then y 1') elseif y > 1 disp('then y > 1') elseif y < 1 disp('then y < 1') else disp('then I''m confused') end Output: Then I m confused

24 Slide 24 of 3 Switches Switches have a similar purpose to if statements Anything you can do with a switch can be done using if/elseif/else Why bother? Often personal preference, though you ll often see switches when checking strings Takes the form: Important: In MATLAB, once a true case has been found MATLAB will NOT check the other cases make sure you plan according. switch var case option executes if var is equal to option otherwise Not required to be present executes if var doesn t match a case end

25 switch and otherwise example Code Slide 25 of 3 location 'lion shrine'; switch location case 'lion shrine' disp('i''m at the lion shrine') otherwise disp('i''m lost') end Output I'm at the lion shrine

26 Slide 26 of 3 Think-Pair-Share What will be the result of these lines of code? Think about these, then find a partner/small group and discuss. We ll come together and discuss. x 1; y 3; switch x case if y > 2 disp('x else disp('x end case 1 if y > 2 disp('x else disp('x end otherwise disp('beats end, y > 2'), y < 2') 1, y > 2') 1, y < 2') me')

27 Slide 27 of 3 Creating menus in MATLAB Instead of requesting input from the Command Window, you can have MATLAB collect input from a menu box. Syntax: var menu('title','option 1', 'option 2', '...')

28 Slide 28 of 3 Menu Example Code: city menu('what campus?', 'UP', 'BD', 'AA'); switch city case 1 disp('university Park') case 2 disp('erie') case 3 disp('altoona') otherwise disp('not one of the 3 biggest campuses') end

29 Slide 29 of 3 Menu Example Cont d Popup: Output: (assuming that you clicked BD) Erie

30 Slide 3 of 3 Questions? No quiz this week Wednesday s Class Interactive Lecture in Computer Labs Midterm No 1 Thursday night class on Friday Exam Release

BIL101E: Introduction to Computers and Information systems Lecture 8

BIL101E: Introduction to Computers and Information systems Lecture 8 BIL101E: Introduction to Computers and Information systems Lecture 8 8.1 Algorithms 8.2 Pseudocode 8.3 Control Structures 8.4 Decision Making: Equality and Relational Operators 8.5 The if Selection Structure

More information

7 Control Structures, Logical Statements

7 Control Structures, Logical Statements 7 Control Structures, Logical Statements 7.1 Logical Statements 1. Logical (true or false) statements comparing scalars or matrices can be evaluated in MATLAB. Two matrices of the same size may be compared,

More information

CS 221 Lecture. Tuesday, 4 October There are 10 kinds of people in this world: those who know how to count in binary, and those who don t.

CS 221 Lecture. Tuesday, 4 October There are 10 kinds of people in this world: those who know how to count in binary, and those who don t. CS 221 Lecture Tuesday, 4 October 2011 There are 10 kinds of people in this world: those who know how to count in binary, and those who don t. Today s Agenda 1. Announcements 2. You Can Define New Functions

More information

RELATIONAL AND LOGICAL OPERATORS

RELATIONAL AND LOGICAL OPERATORS Contents RELATIONAL AND LOGICAL OPERATORS... Relational Operators... Logical Operators... Using Relational and Logical Operators with Scalars... 2 Using Relational Operators with Numerical Arrays... 5

More information

The name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet.

The name of our class will be Yo. Type that in where it says Class Name. Don t hit the OK button yet. Mr G s Java Jive #2: Yo! Our First Program With this handout you ll write your first program, which we ll call Yo. Programs, Classes, and Objects, Oh My! People regularly refer to Java as a language that

More information

Branches, Conditional Statements

Branches, Conditional Statements Branches, Conditional Statements Branches, Conditional Statements A conditional statement lets you execute lines of code if some condition is met. There are 3 general forms in MATLAB: if if/else if/elseif/else

More information

Selection Statements

Selection Statements Selection Statements by Ahmet Sacan selection statements, branching statements, condition, relational expression, Boolean expression, logical expression, relational operators, logical operators, truth

More information

Relational & Logical Operators, Selection Statements

Relational & Logical Operators, Selection Statements Relational & Logical Operators, Selection Statements by Ahmet Sacan selection statements, branching statements, condition, relational expression, Boolean expression, logical expression, relational operators,

More information

Dr. Iyad Jafar. Adapted from the publisher slides

Dr. Iyad Jafar. Adapted from the publisher slides Computer Applications Lab Lab 5 Programming in Matlab Chapter 4 Sections 1,2,3,4 Dr. Iyad Jafar Adapted from the publisher slides Outline Program design and development Relational operators and logical

More information

CSC258: Computer Organization. Memory Systems

CSC258: Computer Organization. Memory Systems CSC258: Computer Organization Memory Systems 1 Summer Independent Studies I m looking for a few students who will be working on campus this summer. In addition to the paid positions posted earlier, I have

More information

Lecture 1. Course Overview, Python Basics

Lecture 1. Course Overview, Python Basics Lecture 1 Course Overview, Python Basics We Are Very Full! Lectures are at fire-code capacity. We cannot add sections or seats to lectures You may have to wait until someone drops No auditors are allowed

More information

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

Control Structures. Lecture 4 COP 3014 Fall September 18, 2017 Control Structures Lecture 4 COP 3014 Fall 2017 September 18, 2017 Control Flow Control flow refers to the specification of the order in which the individual statements, instructions or function calls

More information

Text Input and Conditionals

Text Input and Conditionals Text Input and Conditionals Text Input Many programs allow the user to enter information, like a username and password. Python makes taking input from the user seamless with a single line of code: input()

More information

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209 CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System

More information

Econ 172A - Slides from Lecture 8

Econ 172A - Slides from Lecture 8 1 Econ 172A - Slides from Lecture 8 Joel Sobel October 23, 2012 2 Announcements Important: Midterm seating assignments. Posted tonight. Corrected Answers to Quiz 1 posted. Quiz 2 on Thursday at end of

More information

CS Final Exam Review Suggestions

CS Final Exam Review Suggestions CS 325 - Final Exam Review Suggestions p. 1 last modified: 2017-12-06 CS 325 - Final Exam Review Suggestions Based on suggestions from Prof. Deb Pires from UCLA: Because of the research-supported learning

More information

More Complicated Recursion CMPSC 122

More Complicated Recursion CMPSC 122 More Complicated Recursion CMPSC 122 Now that we've gotten a taste of recursion, we'll look at several more examples of recursion that are special in their own way. I. Example with More Involved Arithmetic

More information

Formal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5

Formal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5 Formal Methods of Software Design, Eric Hehner, segment 1 page 1 out of 5 [talking head] Formal Methods of Software Engineering means the use of mathematics as an aid to writing programs. Before we can

More information

CS 199 Computer Programming. Spring 2018 Lecture 5 Control Statements

CS 199 Computer Programming. Spring 2018 Lecture 5 Control Statements CS 199 Computer Programming Spring 2018 Lecture 5 Control Statements Control Structures 3 control structures Sequence structure Programs executed sequentially by default Branch structure Unconditional

More information

CS Introduction to Programming Fall 2016

CS Introduction to Programming Fall 2016 CS 1113-300 Introduction to Programming Fall 2016 Exam 3 Review - Part 2 (Python) Friday, December 2 nd, 2016 Ahmed Ibrahim 1 / 26 Course Evaluation Please take a few minutes to submit your course evaluation

More information

CSCI 1100L: Topics in Computing Lab Lab 1: Introduction to the Lab! Part I

CSCI 1100L: Topics in Computing Lab Lab 1: Introduction to the Lab! Part I CSCI 1100L: Topics in Computing Lab Lab 1: Introduction to the Lab! Part I Welcome to your CSCI-1100 Lab! In the fine tradition of the CSCI-1100 course, we ll start off the lab with the classic bad joke

More information

C/C++ Programming for Engineers: Matlab Branches and Loops

C/C++ Programming for Engineers: Matlab Branches and Loops C/C++ Programming for Engineers: Matlab Branches and Loops John T. Bell Department of Computer Science University of Illinois, Chicago Review What is the difference between a script and a function in Matlab?

More information

6 Further... Programming

6 Further... Programming 6 Further... Programming In this chapter we ll get some (more) practice building programs and crafting (often) bite-sized chunks of code that solve a specific, normally computational or numerical (rather

More information

INF 315E Introduction to Databases School of Information Fall 2015

INF 315E Introduction to Databases School of Information Fall 2015 INF 315E Introduction to Databases School of Information Fall 2015 Class Hours: Tuesday & Thursday10:30 am-12:00 pm Instructor: Eunyoung Moon Email: eymoon@utexas.edu Course Description Almost every website

More information

These are notes for the third lecture; if statements and loops.

These are notes for the third lecture; if statements and loops. These are notes for the third lecture; if statements and loops. 1 Yeah, this is going to be the second slide in a lot of lectures. 2 - Dominant language for desktop application development - Most modern

More information

MITOCW ocw f99-lec07_300k

MITOCW ocw f99-lec07_300k MITOCW ocw-18.06-f99-lec07_300k OK, here's linear algebra lecture seven. I've been talking about vector spaces and specially the null space of a matrix and the column space of a matrix. What's in those

More information

CS 100: Computability, Python Lists

CS 100: Computability, Python Lists CS 100: Computability, Python Lists Chris Kauffman Week 6 Logistics Homework 4 A few Python list exercises Due next Thursday Reading Pattern Ch 5: Algorithms And Heuristics Think Ch 11: Lists (link) Mini-Exam

More information

(I m not printing out these notes! Take your own.)

(I m not printing out these notes! Take your own.) PT1420 Week 2: Software Program Design I (I m not printing out these notes! Take your own.) Today we'll be discussing designing programs: Algorithms and errors Flowcharts and pseudocode Sequence structures

More information

Summary of the Lecture

Summary of the Lecture Summary of the Lecture 1 Introduction 2 MATLAB env., Variables, and format 3 4 5 MATLAB function, arrays and operations Algorithm and flowchart M-files: Script and Function Files 6 Structured Programming

More information

Microsoft. Student Edition. The Richard Stockton College of New Jersey. Computer Courseware

Microsoft. Student Edition. The Richard Stockton College of New Jersey. Computer Courseware Microsoft Establishing a Relationship in Access 2002 Student Edition The Richard Stockton College of New Jersey Computer Courseware CustomGuide.com granted to Computer and Telecommunication Services a

More information

Database Management System Prof. D. Janakiram Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No.

Database Management System Prof. D. Janakiram Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No. Database Management System Prof. D. Janakiram Department of Computer Science & Engineering Indian Institute of Technology, Madras Lecture No. # 20 Concurrency Control Part -1 Foundations for concurrency

More information

Lecture 1. Course Overview, Python Basics

Lecture 1. Course Overview, Python Basics Lecture 1 Course Overview, Python Basics We Are Very Full! Lectures and Labs are at fire-code capacity We cannot add sections or seats to lectures You may have to wait until someone drops No auditors are

More information

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

Problem Solving through Programming In C Prof. Anupam Basu Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Problem Solving through Programming In C Prof. Anupam Basu Department of Computer Science & Engineering Indian Institute of Technology, Kharagpur Lecture 15 Branching : IF ELSE Statement We are looking

More information

CS 221 Lecture. Tuesday, 13 September 2011

CS 221 Lecture. Tuesday, 13 September 2011 CS 221 Lecture Tuesday, 13 September 2011 Today s Agenda 1. Announcements 2. Boolean Expressions and logic 3. MATLAB Fundamentals 1. Announcements First in-class quiz: Tuesday 4 October Lab quiz: Thursday

More information

Filter and PivotTables in Excel

Filter and PivotTables in Excel Filter and PivotTables in Excel FILTERING With filters in Excel you can quickly collapse your spreadsheet to find records meeting specific criteria. A lot of reporters use filter to cut their data down

More information

CMSC 201 Spring 2017 Lab 05 Lists

CMSC 201 Spring 2017 Lab 05 Lists CMSC 201 Spring 2017 Lab 05 Lists Assignment: Lab 05 Lists Due Date: During discussion, February 27th through March 2nd Value: 10 points (8 points during lab, 2 points for Pre Lab quiz) This week s lab

More information

Admin. How's the project coming? After these slides, read chapter 13 in your book. Quizzes will return

Admin. How's the project coming? After these slides, read chapter 13 in your book. Quizzes will return Recursion CS 1 Admin How's the project coming? After these slides, read chapter 13 in your book Yes that is out of order, but we can read it stand alone Quizzes will return Tuesday Nov 29 th see calendar

More information

6 Stephanie Well. It s six, because there s six towers.

6 Stephanie Well. It s six, because there s six towers. Page: 1 of 10 1 R1 So when we divided by two all this stuff this is the row we ended up with. 2 Stephanie Um hm. 3 R1 Isn t that right? We had a row of six. Alright. Now before doing it see if you can

More information

Comp 151. Control structures.

Comp 151. Control structures. Comp 151 Control structures. admin quiz this week believe it or not only 2 weeks from exam. one a week each week after that. idle debugger Debugger: program that will let you look at the program as it

More information

Relational and Logical Operators. MATLAB Laboratory 10/07/10 Lecture. Chapter 7: Flow Control in Programs. Examples. Logical Operators.

Relational and Logical Operators. MATLAB Laboratory 10/07/10 Lecture. Chapter 7: Flow Control in Programs. Examples. Logical Operators. Relational and Logical Operators MATLAB Laboratory 10/07/10 Lecture Chapter 7: Flow Control in Programs Both operators take on form expression1 OPERATOR expression2 and evaluate to either TRUE (1) or FALSE

More information

CS 241 Data Organization. August 21, 2018

CS 241 Data Organization. August 21, 2018 CS 241 Data Organization August 21, 2018 Contact Info Instructor: Dr. Marie Vasek Contact: Private message me on the course Piazza page. Office: Room 2120 of Farris Web site: www.cs.unm.edu/~vasek/cs241/

More information

In this lesson, you ll learn how to:

In this lesson, you ll learn how to: LESSON 5: ADVANCED DRAWING TECHNIQUES OBJECTIVES In this lesson, you ll learn how to: apply gradient fills modify graphics by smoothing, straightening, and optimizing understand the difference between

More information

Structure Array 1 / 50

Structure Array 1 / 50 Structure Array A structure array is a data type that groups related data using data containers called fields. Each field can contain any type of data. Access data in a structure using dot notation of

More information

MATLAB Laboratory 10/07/10 Lecture. Chapter 7: Flow Control in Programs

MATLAB Laboratory 10/07/10 Lecture. Chapter 7: Flow Control in Programs MATLAB Laboratory 10/07/10 Lecture Chapter 7: Flow Control in Programs Lisa A. Oberbroeckling Loyola University Maryland loberbroeckling@loyola.edu L. Oberbroeckling (Loyola University) MATLAB 10/07/10

More information

Ch.5. Loops. (a.k.a. repetition or iteration)

Ch.5. Loops. (a.k.a. repetition or iteration) Ch.5 Loops (a.k.a. repetition or iteration) 5.1 The FOR loop End of for loop End of function 5.1 The FOR loop What is the answer for 100? QUIZ Modify the code to calculate the factorial of N: N! Modify

More information

Schedule. Matlab Exam. Documentation. Program Building Blocks. Dynamics Makeup Exam. Matlab Exam. Semester Summary and Wrap up.

Schedule. Matlab Exam. Documentation. Program Building Blocks. Dynamics Makeup Exam. Matlab Exam. Semester Summary and Wrap up. Schedule Dynamics Makeup Exam Thursday, May 1, 2:00 p.m., Estabrook 111 3 problems, covers modules 3 & 4 You may bring 1 sheet of notes Matlab Exam See next slide Semester Summary and Wrap up Wednesday,

More information

CSE 240 Introduction to Computer Architecture

CSE 240 Introduction to Computer Architecture What s All About?! Introduction to Computer Architecture The new CSE240: Not at 9am!!! New approach (bottom up) New textbook New instructor Well integrated into curriculum Cooler assignments (demo coming

More information

CS 4349 Lecture October 18th, 2017

CS 4349 Lecture October 18th, 2017 CS 4349 Lecture October 18th, 2017 Main topics for #lecture include #minimum_spanning_trees. Prelude Homework 6 due today. Homework 7 due Wednesday, October 25th. Homework 7 has one normal homework problem.

More information

CS1 Lecture 22 Mar. 6, 2019

CS1 Lecture 22 Mar. 6, 2019 CS1 Lecture 22 Mar. 6, 2019 HW 5 due Friday Questions? In discussion exams next week Last time Ch 12. Zip, lambda, etc Default/keyword function parameters Ch 19 conditional expresssions, list comprehensions

More information

CS150 - Sample Final

CS150 - Sample Final CS150 - Sample Final Name: Honor code: You may use the following material on this exam: The final exam cheat sheet which I have provided The matlab basics handout (without any additional notes) Up to two

More information

Organisation. Assessment

Organisation. Assessment Week 1 s s Getting Started 1 3 4 5 - - Lecturer Dr Lectures Tuesday 1-13 Fulton House Lecture room Tuesday 15-16 Fulton House Lecture room Thursday 11-1 Fulton House Lecture room Friday 10-11 Glyndwr C

More information

Control Structures in Java if-else and switch

Control Structures in Java if-else and switch Control Structures in Java if-else and switch Lecture 4 CGS 3416 Spring 2016 February 2, 2016 Control Flow Control flow refers to the specification of the order in which the individual statements, instructions

More information

(Provisional) Lecture 08: List recursion and recursive diagrams 10:00 AM, Sep 22, 2017

(Provisional) Lecture 08: List recursion and recursive diagrams 10:00 AM, Sep 22, 2017 Integrated Introduction to Computer Science Hughes (Provisional) Lecture 08: List recursion and recursive diagrams 10:00 AM, Sep 22, 2017 Contents 1 Announcements 1 2 Evaluation Correction 1 3 Lists 2

More information

CS 132 Exam #1 - Study Suggestions

CS 132 Exam #1 - Study Suggestions CS 132 - Exam #1 Study Suggestions p. 1 * last modified: 2-16-05 CS 132 Exam #1 - Study Suggestions * The test covers through HW #3, the Week 5 Lab Exercise Exercise, and material through the 2-14-05 lecture/2-16-05

More information

} Evaluate the following expressions: 1. int x = 5 / 2 + 2; 2. int x = / 2; 3. int x = 5 / ; 4. double x = 5 / 2.

} Evaluate the following expressions: 1. int x = 5 / 2 + 2; 2. int x = / 2; 3. int x = 5 / ; 4. double x = 5 / 2. Class #10: Understanding Primitives and Assignments Software Design I (CS 120): M. Allen, 19 Sep. 18 Java Arithmetic } Evaluate the following expressions: 1. int x = 5 / 2 + 2; 2. int x = 2 + 5 / 2; 3.

More information

CS187 - Science Gateway Seminar for CS and Math

CS187 - Science Gateway Seminar for CS and Math CS187 - Science Gateway Seminar for CS and Math Fall 2013 Class 6 Sep. 19, 2013 Programming and Programming Languages Why, How and What? A programming language is a formal language (vs. natural language)

More information

CS 221 Lecture. Tuesday, 11 October 2011

CS 221 Lecture. Tuesday, 11 October 2011 CS 221 Lecture Tuesday, 11 October 2011 "Computers in the future may weigh no more than 1.5 tons." - Popular Mechanics, forecasting the relentless march of science, 1949. Today s Topics 1. Announcements

More information

Loop structures and booleans

Loop structures and booleans Loop structures and booleans Michael Mandel Lecture 7 Methods in Computational Linguistics I The City University of New York, Graduate Center https://github.com/ling78100/lectureexamples/blob/master/lecture07final.ipynb

More information

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209

CSC209. Software Tools and Systems Programming. https://mcs.utm.utoronto.ca/~209 CSC209 Software Tools and Systems Programming https://mcs.utm.utoronto.ca/~209 What is this Course About? Software Tools Using them Building them Systems Programming Quirks of C The file system System

More information

(More) Fun with Pointers and Linked Lists! CS 16: Solving Problems with Computers I Lecture #17

(More) Fun with Pointers and Linked Lists! CS 16: Solving Problems with Computers I Lecture #17 (More) Fun with Pointers and Linked Lists! CS 16: Solving Problems with Computers I Lecture #17 Ziad Matni Dept. of Computer Science, UCSB Administrative Homework situation: Labs: NO MORE HOMEWORK! J Lab10

More information

More Examples Using Functions and Command-Line Arguments in C++ CS 16: Solving Problems with Computers I Lecture #6

More Examples Using Functions and Command-Line Arguments in C++ CS 16: Solving Problems with Computers I Lecture #6 More Examples Using Functions and Command-Line Arguments in C++ CS 16: Solving Problems with Computers I Lecture #6 Ziad Matni Dept. of Computer Science, UCSB Administrative CHANGED T.A. OFFICE/OPEN LAB

More information

Boolean Logic & Branching Lab Conditional Tests

Boolean Logic & Branching Lab Conditional Tests I. Boolean (Logical) Operations Boolean Logic & Branching Lab Conditional Tests 1. Review of Binary logic Three basic logical operations are commonly used in binary logic: and, or, and not. Table 1 lists

More information

Chapter 1: Building Blocks of Programming

Chapter 1: Building Blocks of Programming Chapter 1: Building Blocks of Programming (Completion Time: 4 weeks) Topics: Pseudocode An introductions into express computational ideas in a language that can be translated to code. Used correctly, thinking

More information

CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch

CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch CSCI 1100L: Topics in Computing Lab Lab 11: Programming with Scratch Purpose: We will take a look at programming this week using a language called Scratch. Scratch is a programming language that was developed

More information

CREATE YOUR CONTENT STRATEGY & LAUNCH PLAN Amanda Genther Inc. & Irresistible Offerings

CREATE YOUR CONTENT STRATEGY & LAUNCH PLAN Amanda Genther Inc. & Irresistible Offerings CREATE YOUR CONTENT STRATEGY & LAUNCH PLAN WHAT WE RE GOING TO TALK ABOUT» How to create content that entices your prospects to buy» How to create a content marketing plan that can be put on autopilot

More information

Repetition Structures Chapter 9

Repetition Structures Chapter 9 Sum of the terms Repetition Structures Chapter 9 1 Value of the Alternating Harmonic Series 0.9 0.8 0.7 0.6 0.5 10 0 10 1 10 2 10 3 Number of terms Objectives After studying this chapter you should be

More information

CIS 101 Orientation Document Fall 2017

CIS 101 Orientation Document Fall 2017 CIS 101 Orientation Document Fall 2017 Fall 2017 ONLINE section 23989 To be successful in an online section you must be motivated, disciplined, and able to read and understand the material in the books

More information

Civil Engineering Computation

Civil Engineering Computation Civil Engineering Computation First Steps in VBA Homework Evaluation 2 1 Homework Evaluation 3 Based on this rubric, you may resubmit Homework 1 and Homework 2 (along with today s homework) by next Monday

More information

Chapter 1 Operations With Numbers

Chapter 1 Operations With Numbers Chapter 1 Operations With Numbers Part I Negative Numbers You may already know what negative numbers are, but even if you don t, then you have probably seen them several times over the past few days. If

More information

what is an algorithm? analysis of algorithms classic algorithm example: search

what is an algorithm? analysis of algorithms classic algorithm example: search event-driven programming algorithms event-driven programming conditional execution robots and agents resources: cc3.12/cis1.0 computing: nature, power and limits robotics applications fall 2007 lecture

More information

1) As a logical statement, is 1 considered true or false in MATLAB? Explain your answer.

1) As a logical statement, is 1 considered true or false in MATLAB? Explain your answer. ENGR 1181 Midterm 2+ Review Note: This practice material does not contain actual test questions or represent the format of the final. The first 20 questions should be completed WITHOUT using MATLAB. This

More information

1. The Normal Distribution, continued

1. The Normal Distribution, continued Math 1125-Introductory Statistics Lecture 16 10/9/06 1. The Normal Distribution, continued Recall that the standard normal distribution is symmetric about z = 0, so the area to the right of zero is 0.5000.

More information

Information Science 1

Information Science 1 Information Science 1 Fundamental Programming Constructs (1) Week 11 College of Information Science and Engineering Ritsumeikan University Topics covered l Terms and concepts from Week 10 l Flow of control

More information

Exercises: Instructions and Advice

Exercises: Instructions and Advice Instructions Exercises: Instructions and Advice The exercises in this course are primarily practical programming tasks that are designed to help the student master the intellectual content of the subjects

More information

Physics 2660: Fundamentals of Scientific Computing. Lecture 5 Instructor: Prof. Chris Neu

Physics 2660: Fundamentals of Scientific Computing. Lecture 5 Instructor: Prof. Chris Neu Physics 2660: Fundamentals of Scientific Computing Lecture 5 Instructor: Prof. Chris Neu (chris.neu@virginia.edu) Reminder I am back! HW04 due Thursday 22 Feb electronically by noon HW grades are coming.

More information

CS 115 Lecture 8. Selection: the if statement. Neil Moore

CS 115 Lecture 8. Selection: the if statement. Neil Moore CS 115 Lecture 8 Selection: the if statement Neil Moore Department of Computer Science University of Kentucky Lexington, Kentucky 40506 neil@cs.uky.edu 24 September 2015 Selection Sometime we want to execute

More information

Lecture 10. Finding strongly connected components

Lecture 10. Finding strongly connected components Lecture 10 Finding strongly connected components Announcements HW4 due Friday Nothing assigned Friday because MIDTERM in class, Monday 10/30. Please show up. During class, 1:30-2:50 If your last name is

More information

Computer Systems C S Cynthia Lee Today s materials adapted from Kevin Webb at Swarthmore College

Computer Systems C S Cynthia Lee Today s materials adapted from Kevin Webb at Swarthmore College Computer Systems C S 0 7 Cynthia Lee Today s materials adapted from Kevin Webb at Swarthmore College 2 Today s Topics TODAY S LECTURE: Caching ANNOUNCEMENTS: Assign6 & Assign7 due Friday! 6 & 7 NO late

More information

Spelling-Punctuation-Grammar Subject How will you promote high standards within this module? Term Duration (approx.)

Spelling-Punctuation-Grammar Subject How will you promote high standards within this module? Term Duration (approx.) Term Cycle 1 6 lessons HTML Correct syntax needed for coding to work. Further coding units in Years 8 and 9 can be linked back to the experiences of using HTML. How to use HTML tags to create a range of

More information

: Dimension. Lecturer: Barwick. Wednesday 03 February 2016

: Dimension. Lecturer: Barwick. Wednesday 03 February 2016 18.06.01: Dimension Lecturer: Barwick Wednesday 03 February 2016 What is dimension? Line segments are 1-dimensional; here s one now: Planar regions are 2-dimensional; here s one: Finally, cubes are 3-dimensional:

More information

MANAGING ELECTRONIC COMMUNICATION TOOLS. Advantages of Electronic Communication. General Principles

MANAGING ELECTRONIC COMMUNICATION TOOLS. Advantages of Electronic Communication. General Principles MANAGING ELECTRONIC COMMUNICATION TOOLS Advantages of Electronic Communication Probably the greatest advantage of electronic communication is that it can increase interaction between faculty and students.

More information

Instructor: Craig Duckett. Lecture 03: Tuesday, April 3, 2018 SQL Sorting, Aggregates and Joining Tables

Instructor: Craig Duckett. Lecture 03: Tuesday, April 3, 2018 SQL Sorting, Aggregates and Joining Tables Instructor: Craig Duckett Lecture 03: Tuesday, April 3, 2018 SQL Sorting, Aggregates and Joining Tables 1 Assignment 1 is due LECTURE 5, Tuesday, April 10 th, 2018 in StudentTracker by MIDNIGHT MID-TERM

More information

CS 1110, LAB 1: PYTHON EXPRESSIONS.

CS 1110, LAB 1: PYTHON EXPRESSIONS. CS 1110, LAB 1: PYTHON EXPRESSIONS Name: Net-ID: There is an online version of these instructions at http://www.cs.cornell.edu/courses/cs1110/2012fa/labs/lab1 You may wish to use that version of the instructions.

More information

CPSC 121: Models of Computation. Module 5: Predicate Logic

CPSC 121: Models of Computation. Module 5: Predicate Logic CPSC 121: Models of Computation Module 5: Predicate Logic Module 5: Predicate Logic Midterm 1: Friday February 9 th, 17:00 to 18:15 A to C (by last name): room DMP 310 D to K: room MATH 100 L to P: room

More information

Information Technology Virtual EMS Help https://msum.bookitadmin.minnstate.edu/ For More Information Please contact Information Technology Services at support@mnstate.edu or 218.477.2603 if you have questions

More information

structure syntax different levels of abstraction

structure syntax different levels of abstraction This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this

Here is a list of lecture objectives. They are provided for you to reflect on what you are supposed to learn, rather than an introduction to this This and the next lectures are about Verilog HDL, which, together with another language VHDL, are the most popular hardware languages used in industry. Verilog is only a tool; this course is about digital

More information

CSE : Python Programming

CSE : Python Programming CSE 399-004: Python Programming Lecture 2: Data, Classes, and Modules January 22, 2007 http://www.seas.upenn.edu/~cse39904/ Administrative things Teaching assistant Brian Summa (bsumma @ seas.upenn.edu)

More information

Adding content to your Blackboard 9.1 class

Adding content to your Blackboard 9.1 class Adding content to your Blackboard 9.1 class There are quite a few options listed when you click the Build Content button in your class, but you ll probably only use a couple of them most of the time. Note

More information

Paul's Online Math Notes. Online Notes / Algebra (Notes) / Systems of Equations / Augmented Matricies

Paul's Online Math Notes. Online Notes / Algebra (Notes) / Systems of Equations / Augmented Matricies 1 of 8 5/17/2011 5:58 PM Paul's Online Math Notes Home Class Notes Extras/Reviews Cheat Sheets & Tables Downloads Algebra Home Preliminaries Chapters Solving Equations and Inequalities Graphing and Functions

More information

Comp 151. Control structures.

Comp 151. Control structures. Comp 151 Control structures. admin For these slides read chapter 7 Yes out of order. Simple Decisions So far, we ve viewed programs as sequences of instructions that are followed one after the other. While

More information

ENGG1811 Computing for Engineers Week 6 Iteration; Sequential Algorithms; Processing Cells

ENGG1811 Computing for Engineers Week 6 Iteration; Sequential Algorithms; Processing Cells ENGG1811 Computing for Engineers Week 6 Iteration; Sequential Algorithms; Processing Cells ENGG1811 UNSW, CRICOS Provider No: 00098G1 W6 slide 1 Why loops in programming? Let us hear from Mark Zuckerberg

More information

Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller

Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller Excel Basics Rice Digital Media Commons Guide Written for Microsoft Excel 2010 Windows Edition by Eric Miller Table of Contents Introduction!... 1 Part 1: Entering Data!... 2 1.a: Typing!... 2 1.b: Editing

More information

PREPARING FOR PRELIM 1

PREPARING FOR PRELIM 1 PREPARING FOR PRELIM 1 CS 1110: FALL 2012 This handout explains what you have to know for the first prelim. There will be a review session with detailed examples to help you study. To prepare for the prelim,

More information

Procedures: Algorithms and Abstraction

Procedures: Algorithms and Abstraction Procedures: Algorithms and Abstraction 5 5.1 Objectives After completing this module, a student should be able to: Read and understand simple NetLogo models. Make changes to NetLogo procedures and predict

More information

ECE251: Tuesday September 18

ECE251: Tuesday September 18 ECE251: Tuesday September 18 Subroutine Parameter Passing (Important) Allocating Memory in Subroutines (Important) Recursive Subroutines (Good to know) Debugging Hints Programming Hints Preview of I/O

More information

Midterm Exam #2 Review. CS 2308 :: Spring 2016 Molly O'Neil

Midterm Exam #2 Review. CS 2308 :: Spring 2016 Molly O'Neil Midterm Exam #2 Review CS 2308 :: Spring 2016 Molly O'Neil Midterm Exam #2 Wednesday, April 13 In class, pencil & paper exam Closed book, closed notes, no cell phones or calculators, clean desk 20% of

More information

Intermediate Excel 2013

Intermediate Excel 2013 Intermediate Excel 2013 Class Objective: Elmhurst Public Library is committed to offering enriching programs to help our patrons Explore, Learn, and Grow. Today, technology skills are more than a valuable

More information

ALICE: An introduction to progamming

ALICE: An introduction to progamming ALICE: An introduction to progamming What is Computer Science? Computer Science Do you know the difference between ICT and Computer Science? Any suggestions as to what jobs you could do if you were a Computer

More information

CSE111 Introduction to Computer Applications

CSE111 Introduction to Computer Applications CSE111 Introduction to Computer Applications Lecture 0 Organizational Issues Prepared By Asst. Prof. Dr. Samsun M. BAŞARICI Course Title Introduction to Computer Applications Course Type 1. Compulsory

More information