LAB: STRUCTURES, ARRAYS,

Size: px
Start display at page:

Download "LAB: STRUCTURES, ARRAYS,"

Transcription

1 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ MODULE 2 JEFFREY A. STONE and TRICIA K. CLARK COPYRIGHT VERSION 3.3

2 PALMS MODULE 2 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ 2 Introduction This lab will provide students with an introduction to the use of structures, arrays, and files in the C++ programming language. The focus of this lab is on how to solve complex problems using data structures. At the end of this module, students will Be able to solve simple problems using simple data structures Understand the use of the struct keyword in C++ Understand the use C++ data structures to solve analysis problems. For those exercises which ask you to write code, structure your storage drive in the following manner. There should be a palms folder, and within that folder there should be a LabStructs folder. All coding exercises (and related folders) for this lesson should be placed in the LabStructs folder. As always, be sure to properly document your code. Consult the C++ Coding Guidelines document for proper coding standards. Use good design principles and design the solution before attempting to write code. Let s begin! Example: Line of Best Fit A common procedure in data analysis is the computation of the line of best fit for a set of (x, y) coordinate data. Suppose you have a set of data on the amount of CO 2 emissions in the United States for the years Plotting this data on an (x, y) coordinate plan would give us the following: Emissions (kt) Emissions (kt)

3 PALMS MODULE 2 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ 3 Suppose we wanted to determine the line of best fit, i.e. the trend line that best fits the points on the graph (which is really a scatterplot). We could write a C++ program to assist us. This program would necessarily involve the following elements: Reading the data (years and emissions, in kilotons) from a text file; Storing the data into one or more arrays; Processing the arrays to compute the line of best fit coordinates Producing an output file with the coordinates for the line of best fit. We will begin this process by first writing some code to echo-print the emissions data from a text file using a new data type. Next, we will extend this code to perform the line of best fit calculations. Finally, we will be produce an output file of the line of best fit coordinates. Exercise 1: We could begin by creating a new C++ source file called LineOfBestFit.cpp. Make sure that you include the <fstream> library. Besides the normal program structure (a set of library includes, a main function) we would want to add the following new type definition to the area above the main function: struct CO2Record int year; the year for the data double emissions; the amount of emissions (kilotons) ; This new type CO2Record is a C++ struct ( structure ) definition. A C++ struct is a data structure, i.e. a set of distinct data elements grouped under one name. One-dimensional arrays are homogeneous data structures (all elements of the same type) whereas a struct is considered a heterogeneous data structure (all elements can be of different types). Once the new type declaration has been added, add some code to main to do the following: Create a CO2Record variable named data. Create an ifstream variable called ifs. Review the ifstream tutorial if necessary. Using the ifs variable, open a file named CO2.txt and check to see if the open worked. If it did not, inform the user. If the open worked, output a simple message to the user indicating that the file is now open. The CO2.txt will be provided by the instructor. Close the file associated with the ifs variable. Compile and run your program to verify it works as it should. Exercise 2: Add code to your LineOfBestFit.cpp file to read the CO2.txt file. You will want to read the file one token at a time. Since each line of the file contains two tokens one for the

4 PALMS MODULE 2 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ 4 year, one for the emissions in kilotons you can use the data variable created in Exercise 1 to store the two pieces of data. After reading a complete line of the file, echo-print the data to the screen like so: Press any key to continue... You will need a while loop to read the entirety of the file. Inside the while loop, make two reads (one for year, one for emissions) and print out the data. Remember that you can use the >> operator to read a token from a file. For example, to read the year, you could have this code: get the next year... ifs >> data.year; Exercise 3: Change the declaration of data to be an array of 50 elements, all of type CO2Record. Modify the file read performed in Exercise 2 to fill the contents of this array. Instead of echoprinting the file as you go, remove the cout statement from inside your while loop. Add a second loop to output the contents of the data array after the file has been completely read. The output should be exactly the same as in the previous exercise, but the code will be different. Once you have verified that the program successfully echo-prints the contents of the file, remove the for loop which outputs the contents of the array we will not need it again. Making the Calculations We will use the Least Square Method to determine an equation for our line of best fit. Read over the following link before moving on to the next exercise: Line of Best Fit (Least Square Method) Hotmath.com Exercise 4: Add the following function to your LineOfBestFit.cpp file; don t forget to add a function prototype!

5 PALMS MODULE 2 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ 5 / FUNCTION NAME: computesumofx PARAMETERS: CO2Record list[] -- the array of data int size -- number of elements in the array RETURN TYPE: double PURPOSE: Sums and returns the "year" values in the array. / double computesumofx( CO2Record list[], int size ) double sum = 0.0; stores the sum for (int i = 0; i < size; i++) add the year to the sum... sum += list[i].year; return sum; return the sum value Compile your program to check for any syntax errors. Exercise 5: Add the following function to your LineOfBestFit.cpp file; don t forget to add a function prototype! / FUNCTION NAME: computesumofy PARAMETERS: CO2Record list[] -- the array of data int size -- number of elements in the array RETURN TYPE: double PURPOSE: Sums and returns the "emissions" values in the array. / double computesumofy( CO2Record list[], int size ) double sum = 0.0; stores the sum for (int i = 0; i < size; i++) add the emissions to the sum... sum += list[i].emissions; return sum; return the sum value Compile your program to check for any syntax errors.

6 PALMS MODULE 2 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ 6 Exercise 6: Add the following functions to your LineOfBestFit.cpp file: double computesumofxsquared( CO2Record list[], int size ); calculates the sum of the squares of the year values found in list double computesumofxtimesy( CO2Record list[], int size ); calculates the sum of the ( year * emissions ) values found in list double computeslope( double sum_xy, double sum_x_squared, double sum_x, double sum_y, int size); calculates the slope using the given values. Hint: The computesumofxsquared and computesumofxtimesy functions are very similar to the functions created in Exercise 4 and Exercise 5 (and to each other). Compile your program to check for any syntax errors. Exercise 7: Add the following functions to your LineOfBestFit.cpp file: double computexmean( CO2Record list[], int size ); calculates the mean of the year values found in list double computeymean( CO2Record list[], int size ); calculates the mean of the emissions values found in list Hint: You can use the computesumofx and computesumofy functions to simplify the calculations. You don t even need for loops! Compile your program to check for any syntax errors. Exercise 8: Add the following function to your LineOfBestFit.cpp file; don t forget to add a function prototype! / FUNCTION NAME: computeyintercept PARAMETERS: double mean_x -- the mean X value double mean_y -- the mean Y value double slope -- the slope RETURN TYPE: double PURPOSE: Computes and returns the Y-intercept. / double computeyintercept( double mean_x, double mean_y, double slope ) return the y-intercept... return mean_y - ( slope * mean_x ); Compile your program to check for any syntax errors.

7 PALMS MODULE 2 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ 7 Exercise 9: Add the following code to your main function, just after the while loop which performs the file read. The purpose of this code is to test the functions you wrote in Exercises 4 through 8. Computing the relevant values... double sum_x = computesumofx( data, 50 ); sum of X values double sum_y = computesumofy( data, 50 ); sum of Y values double sum_x2 = computesumofxsquared( data, 50 ); sum of X^2 values double sum_xy = computesumofxtimesy( data, 50 ); sum of X*Y values double mean_x = computexmean( data, 50 ); mean X value double mean_y = computeymean( data, 50 ); mean Y value slope value... double m = computeslope( sum_xy, sum_x2, sum_x, sum_y, 50 ); y-intercept... double b = computeyintercept( mean_x, mean_y, m ); cout.precision(2); cout.setf(ios::fixed); two digits of precision always show the decimal point output the values... cout << "Sum of X: " << setw(20) << sum_x << endl << "Sum of Y: " << setw(20) << sum_y << endl << "Sum of X^2: " << setw(18) << sum_x2 << endl << "Sum of X*Y: " << setw(18) << sum_xy << endl << "Mean of X: " << setw(19) << mean_x << endl << "Mean of Y: " << setw(19) << mean_y << endl << "Slope: " << setw(23) << m << endl << "Y-Intercept: " << setw(17) << b << endl << endl; Once the code is typed in, compile and run your program to verify that the following output is produced. Sum of X: Sum of Y: Sum of X^2: Sum of X*Y: Mean of X: Mean of Y: Slope: Y-Intercept: Press any key to continue... If one or more of the numbers produced by your program do not match those listed above, go back to that function and check your logic. Correct any errors before moving on to the next exercise.

8 PALMS MODULE 2 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ 8 Exercise 10: We will next want to add in the code to compute the line of best fit coordinates. Add a new 50-element array of type CO2Record to your main function; name it new_data_points. Next add the following function to your file; don t forget to add a function prototype! / FUNCTION NAME: computelineofbestfit PARAMETERS: CO2Record list[] -- the array of data CO2Record new_list[] -- the array of "new" data int size -- number of elements in the array double slope -- the "m" value double yint -- the "b" value RETURN TYPE: void PURPOSE: Fills the "new_list" array with the "line of best fit" values. / void computelineofbestfit( CO2Record list[], CO2Record new_list[], int size, double slope, double yint ) Begin Loop through the array... set the "x" coordinate (year) of the "new" array element to be the "old" element s year. set the "y" coordinate (emissions) of the "new" array element using the formula y = mx + b. End loop You will need to complete the code for this function. Use the comments as a guide. Once your function is complete, add a line of code to the main function to call computelineofbestfit. The function call should occur just after the code you added in Exercise 9. Creating the New File Our final step is to create a new file on disk containing the original data AND the new emissions values for the line of best fit. Exercise 11: Picking up where you left off in the previous exercise, add some code to main to do the following: Create an ofstream variable named ofs. Review the ofstream tutorial if necessary Using the ofs variable, open a file named CO2_LOBF.TXT and check to see if the open worked. If it did not, inform the user. If the open worked, create a for loop which writes the following data to the file, three parts per line, 50 lines in all: o The year (from the data array) o The original emissions value (from the data array) o The new emissions value (from the new_data_points array) Close the file associated with the ofs variable.

9 PALMS MODULE 2 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ 9 Compile and run your program to verify it works as it should. Your CO2_LOBF.txt file should contain the data found on the next page. In the end, the points your program produced could be graphed like so: Emissions (kt) Emissions (kt) Trend

10 PALMS MODULE 2 LAB: STRUCTURES, ARRAYS, AND FILES IN C++ 10 CO2_LOBF.TXT Contents

LAB: WHILE LOOPS IN C++

LAB: WHILE LOOPS IN C++ LAB: WHILE LOOPS IN C++ MODULE 2 JEFFREY A. STONE and TRICIA K. CLARK COPYRIGHT 2014 VERSION 4.0 PALMS MODULE 2 LAB: WHILE LOOPS IN C++ 2 Introduction This lab will provide students with an introduction

More information

LAB: FOR LOOPS IN C++

LAB: FOR LOOPS IN C++ LAB: FOR LOOPS IN C++ MODULE 2 JEFFREY A. STONE and TRICIA K. CLARK COPYRIGHT 2014 VERSION 4.0 PALMS MODULE 2 LAB: FOR LOOPS IN C++ 2 Introduction This lab will provide students with an introduction to

More information

Lesson 19: The Graph of a Linear Equation in Two Variables is a Line

Lesson 19: The Graph of a Linear Equation in Two Variables is a Line Lesson 19: The Graph of a Linear Equation in Two Variables is a Line Classwork Exercises Theorem: The graph of a linear equation y = mx + b is a non-vertical line with slope m and passing through (0, b),

More information

File I/O. File Names and Types. I/O Streams. Stream Extraction and Insertion. A file name should reflect its contents

File I/O. File Names and Types. I/O Streams. Stream Extraction and Insertion. A file name should reflect its contents File I/O 1 File Names and Types A file name should reflect its contents Payroll.dat Students.txt Grades.txt A file s extension indicates the kind of data the file holds.dat,.txt general program input or

More information

Section 1.5. Finding Linear Equations

Section 1.5. Finding Linear Equations Section 1.5 Finding Linear Equations Using Slope and a Point to Find an Equation of a Line Example Find an equation of a line that has slope m = 3 and contains the point (2, 5). Solution Substitute m =

More information

LAB: INTRODUCTION TO FUNCTIONS IN C++

LAB: INTRODUCTION TO FUNCTIONS IN C++ LAB: INTRODUCTION TO FUNCTIONS IN C++ MODULE 2 JEFFREY A. STONE and TRICIA K. CLARK COPYRIGHT 2014 VERSION 4.0 PALMS MODULE 2 LAB: FUNCTIONS IN C++ 2 Introduction This lab will provide students with an

More information

College Prep Algebra II Summer Packet

College Prep Algebra II Summer Packet Name: College Prep Algebra II Summer Packet This packet is an optional review which is highly recommended before entering CP Algebra II. It provides practice for necessary Algebra I topics. Remember: When

More information

CISC220 Lab 2: Due Wed, Sep 26 at Midnight (110 pts)

CISC220 Lab 2: Due Wed, Sep 26 at Midnight (110 pts) CISC220 Lab 2: Due Wed, Sep 26 at Midnight (110 pts) For this lab you may work with a partner, or you may choose to work alone. If you choose to work with a partner, you are still responsible for the lab

More information

Section 7D Systems of Linear Equations

Section 7D Systems of Linear Equations Section 7D Systems of Linear Equations Companies often look at more than one equation of a line when analyzing how their business is doing. For example a company might look at a cost equation and a profit

More information

UEE1302(1066) F12: Introduction to Computers and Programming Function (II) - Parameter

UEE1302(1066) F12: Introduction to Computers and Programming Function (II) - Parameter UEE1302(1066) F12: Introduction to Computers and Programming Function (II) - Parameter What you will learn from Lab 7 In this laboratory, you will understand how to use typical function prototype with

More information

Four Types of Slope Positive Slope Negative Slope Zero Slope Undefined Slope Slope Dude will help us understand the 4 types of slope

Four Types of Slope Positive Slope Negative Slope Zero Slope Undefined Slope Slope Dude will help us understand the 4 types of slope Four Types of Slope Positive Slope Negative Slope Zero Slope Undefined Slope Slope Dude will help us understand the 4 types of slope https://www.youtube.com/watch?v=avs6c6_kvxm Direct Variation

More information

Introduction to Algorithms and Programming (COMP151)

Introduction to Algorithms and Programming (COMP151) Introduction to Algorithms and Programming (COMP151) A Student's Manual for Practice Exercises Dr. Mohamed Aissa m.issa@unizwa.edu.om 11i13 Summer 2014 Practice Exercises #1 Introduction Page 2 Practice

More information

3-1 Writing Linear Equations

3-1 Writing Linear Equations 3-1 Writing Linear Equations Suppose you have a job working on a monthly salary of $2,000 plus commission at a car lot. Your commission is 5%. What would be your pay for selling the following in monthly

More information

File Input / Output Streams in C++ CS 16: Solving Problems with Computers I Lecture #9

File Input / Output Streams in C++ CS 16: Solving Problems with Computers I Lecture #9 File Input / Output Streams in C++ CS 16: Solving Problems with Computers I Lecture #9 Ziad Matni Dept. of Computer Science, UCSB Midterm Exam grades out! Announcements If you want to see your exams, visit

More information

QUIZ Lesson 4. Exercise 4: Write an if statement that assigns the value of x to the variable y if x is in between 1 and 20, otherwise y is unchanged.

QUIZ Lesson 4. Exercise 4: Write an if statement that assigns the value of x to the variable y if x is in between 1 and 20, otherwise y is unchanged. QUIZ Lesson 4 Exercise 4: Write an if statement that assigns the value of x to the variable y if x is in between 1 and 20, otherwise y is unchanged. QUIZ Lesson 4 Exercise 4: Write an if statement that

More information

Lab 2.1: Fixing a C++ program

Lab 2.1: Fixing a C++ program CS 150 Lab 2 Introduction to Compiler Errors, Variables, Assignments and Output The purpose of today s lab session is to allow you to gain experience using primitive data types, constants, assignment statements

More information

Chapter 12. Streams and File I/O

Chapter 12. Streams and File I/O Chapter 12 Streams and File I/O Learning Objectives I/O Streams File I/O Character I/O Tools for Stream I/O File names as input Formatting output, flag settings Introduction Streams Special objects Deliver

More information

Lesson 19: The Graph of a Linear Equation in Two Variables Is a Line

Lesson 19: The Graph of a Linear Equation in Two Variables Is a Line The Graph of a Linear Equation in Two Variables Is a Line Classwork Exercises THEOREM: The graph of a linear equation yy = mmmm + bb is a non-vertical line with slope mm and passing through (0, bb), where

More information

Scientific Computing

Scientific Computing Scientific Computing Martin Lotz School of Mathematics The University of Manchester Lecture 1, September 22, 2014 Outline Course Overview Programming Basics The C++ Programming Language Outline Course

More information

= 3 + (5*4) + (1/2)*(4/2)^2.

= 3 + (5*4) + (1/2)*(4/2)^2. Physics 100 Lab 1: Use of a Spreadsheet to Analyze Data by Kenneth Hahn and Michael Goggin In this lab you will learn how to enter data into a spreadsheet and to manipulate the data in meaningful ways.

More information

Programming II with C++ (CSNB244) Lab 10. Topics: Files and Stream

Programming II with C++ (CSNB244) Lab 10. Topics: Files and Stream Topics: Files and Stream In this lab session, you will learn very basic and most common I/O operations required for C++ programming. The second part of this tutorial will teach you how to read and write

More information

Math-2. Lesson 3-1. Equations of Lines

Math-2. Lesson 3-1. Equations of Lines Math-2 Lesson 3-1 Equations of Lines How can an equation make a line? y = x + 1 x -4-3 -2-1 0 1 2 3 Fill in the rest of the table rule x + 1 f(x) -4 + 1-3 -3 + 1-2 -2 + 1-1 -1 + 1 0 0 + 1 1 1 + 1 2 2 +

More information

Outline of what we will cover

Outline of what we will cover Outline of what we will cover Objectives: these sections only! 1. Defining File Streams sec 5-1 2. Reading Data Files sec 5-2 3. Generating a Data File sec 5-3 4. Numerical Technique: Linear Modeling*

More information

File I/O CS 16: Solving Problems with Computers I Lecture #9

File I/O CS 16: Solving Problems with Computers I Lecture #9 File I/O CS 16: Solving Problems with Computers I Lecture #9 Ziad Matni Dept. of Computer Science, UCSB I/O Data Streams and File I/O Lecture Outline An introduction to Objects and Member Functions Handling

More information

Welcome Back. CSCI 262 Data Structures. Hello, Let s Review. Hello, Let s Review. How to Review 1/9/ Review. Here s a simple C++ program:

Welcome Back. CSCI 262 Data Structures. Hello, Let s Review. Hello, Let s Review. How to Review 1/9/ Review. Here s a simple C++ program: Welcome Back CSCI 262 Data Structures 2 - Review What you learned in CSCI 261 (or equivalent): Variables Types Arrays Expressions Conditionals Branches & Loops Functions Recursion Classes & Objects Streams

More information

CPE Summer 2015 Exam I (150 pts) June 18, 2015

CPE Summer 2015 Exam I (150 pts) June 18, 2015 Name Closed notes and book. If you have any questions ask them. Write clearly and make sure the case of a letter is clear (where applicable) since C++ is case sensitive. You can assume that there is one

More information

Come and join us at WebLyceum

Come and join us at WebLyceum Come and join us at WebLyceum For Past Papers, Quiz, Assignments, GDBs, Video Lectures etc Go to http://www.weblyceum.com and click Register In Case of any Problem Contact Administrators Rana Muhammad

More information

CS 103 Unit 11. Linked Lists. Mark Redekopp

CS 103 Unit 11. Linked Lists. Mark Redekopp 1 CS 103 Unit 11 Linked Lists Mark Redekopp 2 NULL Pointer Just like there was a null character in ASCII = '\0' whose ue was 0 There is a NULL pointer whose ue is 0 NULL is "keyword" you can use in C/C++

More information

CS 1044 Programming in C++ Test 1 Spring 2011 Form B Page 1 of 12 READ THIS NOW!

CS 1044 Programming in C++ Test 1 Spring 2011 Form B Page 1 of 12 READ THIS NOW! Spring 2011 Form B Page 1 of 12 READ THIS NOW! Failure to read and follow the instructions below may result in severe penalties. Failure to adhere to these directions will not constitute an excuse or defense.

More information

C++ Input/Output: Streams

C++ Input/Output: Streams C++ Input/Output: Streams Basic I/O 1 The basic data type for I/O in C++ is the stream. C++ incorporates a complex hierarchy of stream types. The most basic stream types are the standard input/output streams:

More information

Introduction To Computer Programming C++ Mr. Clausen Program C11A, C11B

Introduction To Computer Programming C++ Mr. Clausen Program C11A, C11B Introduction To Computer Programming C++ Mr. Clausen Program C11A, C11B Program 11A: Cone Heads with Functions 30 points Write a program that calculates the volume of a right circular cone using functions.

More information

CS 1044 Project 1 Fall 2011

CS 1044 Project 1 Fall 2011 Simple Arithmetic Calculations, Using Standard Functions One of the first things you will learn about C++ is how to perform numerical computations. In this project, you are given an incomplete program

More information

Lesson 20: Every Line is a Graph of a Linear Equation

Lesson 20: Every Line is a Graph of a Linear Equation Student Outcomes Students know that any non vertical line is the graph of a linear equation in the form of, where is a constant. Students write the equation that represents the graph of a line. Lesson

More information

What we will learn about this week:

What we will learn about this week: What we will learn about this week: Streams Basic file I/O Tools for Stream I/O Manipulators Character I/O Get and Put EOF function Pre-defined character functions Objects 1 I/O Streams as an Introduction

More information

Chapter 6. I/O Streams as an Introduction to Objects and Classes. Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley

Chapter 6. I/O Streams as an Introduction to Objects and Classes. Copyright 2007 Pearson Education, Inc. Publishing as Pearson Addison-Wesley Chapter 6 I/O Streams as an Introduction to Objects and Classes Overview 6.1 Streams and Basic File I/O 6.2 Tools for Stream I/O 6.3 Character I/O Slide 6-3 6.1 Streams and Basic File I/O I/O Streams I/O

More information

LAB: SWITCH STATEMENTS

LAB: SWITCH STATEMENTS LAB: SWITCH STATEMENTS IN C++ MODULE 2 JEFFREY A. STONE and TRICIA K. CLARK COPYRIGHT 2014 VERSION 4.0 PALMS MODULE 2 LAB: SWITCH STATEMENTS IN C++ 2 Introduction This lab will provide students with an

More information

Sample Final Exam. 1) (24 points) Show what is printed by the following segments of code (assume all appropriate header files, etc.

Sample Final Exam. 1) (24 points) Show what is printed by the following segments of code (assume all appropriate header files, etc. Name: Sample Final Exam 1) (24 points) Show what is printed by the following segments of code (assume all appropriate header files, etc. are included): a) int start = 10, end = 21; while (start < end &&

More information

HFCC Math Lab Intermediate Algebra 1 SLOPE INTERCEPT AND POINT-SLOPE FORMS OF THE LINE

HFCC Math Lab Intermediate Algebra 1 SLOPE INTERCEPT AND POINT-SLOPE FORMS OF THE LINE HFCC Math Lab Intermediate Algebra SLOPE INTERCEPT AND POINT-SLOPE FORMS OF THE LINE THE EQUATION OF A LINE Goal I. Use the slope-intercept form of the line to write the equation of a non-vertical line

More information

2.2 Graphs Of Functions. Copyright Cengage Learning. All rights reserved.

2.2 Graphs Of Functions. Copyright Cengage Learning. All rights reserved. 2.2 Graphs Of Functions Copyright Cengage Learning. All rights reserved. Objectives Graphing Functions by Plotting Points Graphing Functions with a Graphing Calculator Graphing Piecewise Defined Functions

More information

10-2 Circles. Warm Up Lesson Presentation Lesson Quiz. Holt Algebra2 2

10-2 Circles. Warm Up Lesson Presentation Lesson Quiz. Holt Algebra2 2 10-2 Circles Warm Up Lesson Presentation Lesson Quiz Holt Algebra2 2 Warm Up Find the slope of the line that connects each pair of points. 1. (5, 7) and ( 1, 6) 1 6 2. (3, 4) and ( 4, 3) 1 Warm Up Find

More information

Welcome Back. CSCI 262 Data Structures. Hello, Let s Review. Hello, Let s Review. How to Review 8/19/ Review. Here s a simple C++ program:

Welcome Back. CSCI 262 Data Structures. Hello, Let s Review. Hello, Let s Review. How to Review 8/19/ Review. Here s a simple C++ program: Welcome Back CSCI 262 Data Structures 2 - Review What you learned in CSCI 261 (or equivalent): Variables Types Arrays Expressions Conditionals Branches & Loops Functions Recursion Classes & Objects Streams

More information

SNAP Centre Workshop. Graphing Lines

SNAP Centre Workshop. Graphing Lines SNAP Centre Workshop Graphing Lines 45 Graphing a Line Using Test Values A simple way to linear equation involves finding test values, plotting the points on a coordinate plane, and connecting the points.

More information

3, 10,( 2, 4) Name. CP Algebra II Midterm Review Packet Unit 1: Linear Equations and Inequalities. Solve each equation. 3.

3, 10,( 2, 4) Name. CP Algebra II Midterm Review Packet Unit 1: Linear Equations and Inequalities. Solve each equation. 3. Name CP Algebra II Midterm Review Packet 018-019 Unit 1: Linear Equations and Inequalities Solve each equation. 1. x. x 4( x 5) 6x. 8x 5(x 1) 5 4. ( k ) k 4 5. x 4 x 6 6. V lhw for h 7. x y b for x z Find

More information

Functions! Objectives! 1E3! Topic 9! programming! n This topic should allow students to! n Read chapter 6 of the textbook now.!

Functions! Objectives! 1E3! Topic 9! programming! n This topic should allow students to! n Read chapter 6 of the textbook now.! Functions 1E3 Topic 9 9 Functions 1 Objectives n This topic should allow students to n Understand the importance of abstraction in programming n Recognise when a function would be useful. n Design appropriate

More information

Lab: Supplying Inputs to Programs

Lab: Supplying Inputs to Programs Steven Zeil May 25, 2013 Contents 1 Running the Program 2 2 Supplying Standard Input 4 3 Command Line Parameters 4 1 In this lab, we will look at some of the different ways that basic I/O information can

More information

Lab 2: Pointers. //declare a pointer variable ptr1 pointing to x. //change the value of x to 10 through ptr1

Lab 2: Pointers. //declare a pointer variable ptr1 pointing to x. //change the value of x to 10 through ptr1 Lab 2: Pointers 1. Goals Further understanding of pointer variables Passing parameters to functions by address (pointers) and by references Creating and using dynamic arrays Combing pointers, structures

More information

The C++ Language. Output. Input and Output. Another type supplied by C++ Very complex, made up of several simple types.

The C++ Language. Output. Input and Output. Another type supplied by C++ Very complex, made up of several simple types. The C++ Language Input and Output Output! Output is information generated by a program.! Frequently sent the screen or a file.! An output stream is used to send information. Another type supplied by C++

More information

Declaring a 2D Array

Declaring a 2D Array Lecture 13 Declaring a 2D Array Model: type name[row_size ][ column_size] Example: int grades[10][20]; string students[10][20]; 2D Array data structure Say we have the following array: int grades[4][8];

More information

CSci 1113 Midterm 1. Name: Student ID:

CSci 1113 Midterm 1. Name: Student ID: CSci 1113 Midterm 1 Name: Student ID: Instructions: Please pick and answer any 7 of the 9 problems for a total of 70 points. If you answer more than 7 problems, only the first 7 will be graded. The time

More information

c++ keywords: ( all lowercase ) Note: cin and cout are NOT keywords.

c++ keywords: ( all lowercase ) Note: cin and cout are NOT keywords. Chapter 1 File Extensions: Source code (cpp), Object code (obj), and Executable code (exe). Preprocessor processes directives and produces modified source Compiler takes modified source and produces object

More information

C++ 프로그래밍실습. Visual Studio Smart Computing Laboratory

C++ 프로그래밍실습. Visual Studio Smart Computing Laboratory C++ 프로그래밍실습 Visual Studio 2015 Contents Namespaces I/O Stream Exercise Practice1 -Namespaces Practice 1 : Namespaces Name conflict problem Occurs when an application tries to use more than two libraries

More information

Lesson 18: There is Only One Line Passing Through a Given Point with a Given

Lesson 18: There is Only One Line Passing Through a Given Point with a Given Lesson 18: There is Only One Line Passing Through a Given Point with a Given Student Outcomes Students graph equations in the form of using information about slope and intercept. Students know that if

More information

Arrays in C++ Instructor: Andy Abreu

Arrays in C++ Instructor: Andy Abreu Arrays in C++ Instructor: Andy Abreu Reason behind the idea When we are programming, often we have to process a large amount of information. We can do so by creating a lot of variables to keep track of

More information

CSci 1113 Midterm 2. Name: Student ID:

CSci 1113 Midterm 2. Name: Student ID: CSci 1113 Midterm 2 Name: Student ID: Instructions: Please pick and answer any 6 of the 8 problems for a total of 90 points. If you answer more than 6 problems, only the first 6 will be graded. The time

More information

Algebra Unit 2: Linear Functions Notes. Slope Notes. 4 Types of Slope. Slope from a Formula

Algebra Unit 2: Linear Functions Notes. Slope Notes. 4 Types of Slope. Slope from a Formula Undefined Slope Notes Types of Slope Zero Slope Slope can be described in several ways: Steepness of a line Rate of change rate of increase or decrease Rise Run Change (difference) in y over change (difference)

More information

Honors Computer Science C++ Mr. Clausen Program 6A, 6B, 6C, & 6G

Honors Computer Science C++ Mr. Clausen Program 6A, 6B, 6C, & 6G Honors Computer Science C++ Mr. Clausen Program 6A, 6B, 6C, & 6G Special Note: Every program from Chapter 4 to the end of the year needs to have functions! Program 6A: Celsius To Fahrenheit Or Visa Versa

More information

Reading from and Writing to Files. Files (3.12) Steps to Using Files. Section 3.12 & 13.1 & Data stored in variables is temporary

Reading from and Writing to Files. Files (3.12) Steps to Using Files. Section 3.12 & 13.1 & Data stored in variables is temporary Reading from and Writing to Files Section 3.12 & 13.1 & 13.5 11/3/08 CS150 Introduction to Computer Science 1 1 Files (3.12) Data stored in variables is temporary We will learn how to write programs that

More information

An array is a collection of data that holds fixed number of values of same type. It is also known as a set. An array is a data type.

An array is a collection of data that holds fixed number of values of same type. It is also known as a set. An array is a data type. Data Structures Introduction An array is a collection of data that holds fixed number of values of same type. It is also known as a set. An array is a data type. Representation of a large number of homogeneous

More information

Using Excel for Graphical Analysis of Data

Using Excel for Graphical Analysis of Data Using Excel for Graphical Analysis of Data Introduction In several upcoming labs, a primary goal will be to determine the mathematical relationship between two variable physical parameters. Graphs are

More information

Functions. Copyright Cengage Learning. All rights reserved.

Functions. Copyright Cengage Learning. All rights reserved. Functions Copyright Cengage Learning. All rights reserved. 2.2 Graphs Of Functions Copyright Cengage Learning. All rights reserved. Objectives Graphing Functions by Plotting Points Graphing Functions with

More information

Honors Computer Science C++ Mr. Clausen Program 4A, 4B, 4C, 4D, 4G

Honors Computer Science C++ Mr. Clausen Program 4A, 4B, 4C, 4D, 4G Honors Computer Science C++ Mr. Clausen Program 4A, 4B, 4C, 4D, 4G Program 4A: Function: Comments And Output 10 points Write a program that practices comments, output, and void functions. Save the program

More information

1 Getting started with Processing

1 Getting started with Processing cis3.5, spring 2009, lab II.1 / prof sklar. 1 Getting started with Processing Processing is a sketch programming tool designed for use by non-technical people (e.g., artists, designers, musicians). For

More information

[CSE10200] Programming Basis ( 프로그래밍기초 ) Chapter 7. Seungkyu Lee. Assistant Professor, Dept. of Computer Engineering Kyung Hee University

[CSE10200] Programming Basis ( 프로그래밍기초 ) Chapter 7. Seungkyu Lee. Assistant Professor, Dept. of Computer Engineering Kyung Hee University [CSE10200] Programming Basis ( 프로그래밍기초 ) Chapter 7 Seungkyu Lee Assistant Professor, Dept. of Computer Engineering Kyung Hee University Input entities Keyboard, files Output entities Monitor, files Standard

More information

Chapter 12. Streams and File I/O. Copyright 2010 Pearson Addison-Wesley. All rights reserved

Chapter 12. Streams and File I/O. Copyright 2010 Pearson Addison-Wesley. All rights reserved Chapter 12 Streams and File I/O Copyright 2010 Pearson Addison-Wesley. All rights reserved Learning Objectives I/O Streams File I/O Character I/O Tools for Stream I/O File names as input Formatting output,

More information

Chapter Overview. I/O Streams as an Introduction to Objects and Classes. I/O Streams. Streams and Basic File I/O. Objects

Chapter Overview. I/O Streams as an Introduction to Objects and Classes. I/O Streams. Streams and Basic File I/O. Objects Chapter 6 I/O Streams as an Introduction to Objects and Classes Overview 6.1 Streams and Basic File I/O 6.2 Tools for Stream I/O 6.3 Character I/O Copyright 2008 Pearson Addison-Wesley. All rights reserved.

More information

Functions that Return a Value. Approximate completion time Pre-lab Reading Assignment 20 min. 92

Functions that Return a Value. Approximate completion time Pre-lab Reading Assignment 20 min. 92 L E S S O N S E T 6.2 Functions that Return a Value PURPOSE PROCEDURE 1. To introduce the concept of scope 2. To understand the difference between static, local and global variables 3. To introduce the

More information

This sheet must be the cover page for every programming assignment. Total

This sheet must be the cover page for every programming assignment. Total This sheet must be the cover page for every programming assignment. Name Joe Student Assignment Title May the Greatest Integer Win (do not write below this line; for grader use only) Validity (up to 70%)

More information

NAMESPACES IN C++ You can refer the Programming with ANSI C++ by Bhushan Trivedi for Understanding Namespaces Better(Chapter 14)

NAMESPACES IN C++ You can refer the Programming with ANSI C++ by Bhushan Trivedi for Understanding Namespaces Better(Chapter 14) NAMESPACES IN C++ You can refer the Programming with ANSI C++ by Bhushan Trivedi for Understanding Namespaces Better(Chapter 14) Some Material for your reference: Consider following C++ program. // A program

More information

Why Use Graphs? Test Grade. Time Sleeping (Hrs) Time Sleeping (Hrs) Test Grade

Why Use Graphs? Test Grade. Time Sleeping (Hrs) Time Sleeping (Hrs) Test Grade Analyzing Graphs Why Use Graphs? It has once been said that a picture is worth a thousand words. This is very true in science. In science we deal with numbers, some times a great many numbers. These numbers,

More information

Scatterplot: The Bridge from Correlation to Regression

Scatterplot: The Bridge from Correlation to Regression Scatterplot: The Bridge from Correlation to Regression We have already seen how a histogram is a useful technique for graphing the distribution of one variable. Here is the histogram depicting the distribution

More information

C++ Structures Programming Workshop 2 (CSCI 1061U)

C++ Structures Programming Workshop 2 (CSCI 1061U) C++ Structures Programming Workshop 2 (CSCI 1061U) Faisal Qureshi http://faculty.uoit.ca/qureshi University of Ontario Institute of Technology C++ struct struct keyword can be used to define new data types

More information

Pointers II. Class 31

Pointers II. Class 31 Pointers II Class 31 Compile Time all of the variables we have seen so far have been declared at compile time they are written into the program code you can see by looking at the program how many variables

More information

CS 102 Lab 3 Fall 2012

CS 102 Lab 3 Fall 2012 Name: The symbol marks programming exercises. Upon completion, always capture a screenshot and include it in your lab report. Email lab report to instructor at the end of the lab. Review of built-in functions

More information

Functions. Lab 4. Introduction: A function : is a collection of statements that are grouped together to perform an operation.

Functions. Lab 4. Introduction: A function : is a collection of statements that are grouped together to perform an operation. Lab 4 Functions Introduction: A function : is a collection of statements that are grouped together to perform an operation. The following is its format: type name ( parameter1, parameter2,...) { statements

More information

Faculty of Engineering Computer Engineering Department Islamic University of Gaza C++ Programming Language Lab # 6 Functions

Faculty of Engineering Computer Engineering Department Islamic University of Gaza C++ Programming Language Lab # 6 Functions Faculty of Engineering Computer Engineering Department Islamic University of Gaza 2013 C++ Programming Language Lab # 6 Functions C++ Programming Language Lab # 6 Functions Objective: To be familiar with

More information

Exercise: Graphing and Least Squares Fitting in Quattro Pro

Exercise: Graphing and Least Squares Fitting in Quattro Pro Chapter 5 Exercise: Graphing and Least Squares Fitting in Quattro Pro 5.1 Purpose The purpose of this experiment is to become familiar with using Quattro Pro to produce graphs and analyze graphical data.

More information

File I/O Christian Schumacher, Info1 D-MAVT 2013

File I/O Christian Schumacher, Info1 D-MAVT 2013 File I/O Christian Schumacher, chschuma@inf.ethz.ch Info1 D-MAVT 2013 Input and Output in C++ Stream objects Formatted output Writing and reading files References General Remarks I/O operations are essential

More information

Lab 15 Review of Arrays, Array of Objects and Vector Dr. John Abraham, Professor

Lab 15 Review of Arrays, Array of Objects and Vector Dr. John Abraham, Professor Lab 15 Review of Arrays, Array of Objects and Vector Dr. John Abraham, Professor I have noticed over the years that students have great deal of difficulty dealing with composite and abstract data types.

More information

Lecture 4. 1 Statements: 2 Getting Started with C++: LESSON FOUR

Lecture 4. 1 Statements: 2 Getting Started with C++: LESSON FOUR 1 Statements: A statement in a computer carries out some action. There are three types of statements used in C++; they are expression statement, compound statement and control statement. Expression statement

More information

Lab - Create User Accounts in Windows 8

Lab - Create User Accounts in Windows 8 Introduction In this lab, you will create user accounts in Windows 8. Recommended Equipment The following equipment is required for this exercise: A computer with a new installation of Windows 8 Part 1:

More information

Programs as Models. Procedural Paradigm. Class Methods. CS256 Computer Science I Kevin Sahr, PhD. Lecture 11: Objects

Programs as Models. Procedural Paradigm. Class Methods. CS256 Computer Science I Kevin Sahr, PhD. Lecture 11: Objects CS256 Computer Science I Kevin Sahr, PhD Lecture 11: Objects 1 Programs as Models remember: we write programs to solve realworld problems programs act as models of the real-world problem to be solved one

More information

MAT 003 Brian Killough s Instructor Notes Saint Leo University

MAT 003 Brian Killough s Instructor Notes Saint Leo University MAT 003 Brian Killough s Instructor Notes Saint Leo University Success in online courses requires self-motivation and discipline. It is anticipated that students will read the textbook and complete sample

More information

cd h: mkdir -p CS101 cd CS101 curl -O unzip zipfile cd CS101_Exam4

cd h: mkdir -p CS101 cd CS101 curl -O   unzip zipfile cd CS101_Exam4 CS 101, Spring 2013 May 2nd Exam 4 Note: Make sure your programs produce the output in exactly the format described, including capitalization and punctuation. You may not receive credit for programs that

More information

Simple File I/O.

Simple File I/O. Simple File I/O from Chapter 6 http://www.cplusplus.com/reference/fstream/ifstream/ l / /f /if / http://www.cplusplus.com/reference/fstream/ofstream/ I/O Streams I/O refers to a program s input and output

More information

Appendix M: Introduction to Microsoft Visual C Express Edition

Appendix M: Introduction to Microsoft Visual C Express Edition Appendix M: Introduction to Microsoft Visual C++ 2005 Express Edition This book may be ordered from Addison-Wesley in a value pack that includes Microsoft Visual C++ 2005 Express Edition. Visual C++ 2005

More information

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

CPE 112 Spring 2015 Exam II (100 pts) March 4, Definition Matching (8 Points) Name Definition Matching (8 Points) 1. (8 pts) Match the words with their definitions. Choose the best definition for each word. Relational Expression Iteration Counter Count-controlled loop Loop Flow

More information

Lab Instructor : Jean Lai

Lab Instructor : Jean Lai Lab Instructor : Jean Lai Group related statements to perform a specific task. Structure the program (No duplicate codes!) Must be declared before used. Can be invoked (called) as any number of times.

More information

Classes. Logical method to organise data and functions in a same structure. Also known as abstract data type (ADT).

Classes. Logical method to organise data and functions in a same structure. Also known as abstract data type (ADT). UNITII Classes Logical method to organise data and functions in a same structure. Also known as abstract data type (ADT). It s a User Defined Data-type. The Data declared in a Class are called Data- Members

More information

CSci 1113, Fall 2015 Lab Exercise 4 (Week 5): Write Your Own Functions. User Defined Functions

CSci 1113, Fall 2015 Lab Exercise 4 (Week 5): Write Your Own Functions. User Defined Functions CSci 1113, Fall 2015 Lab Exercise 4 (Week 5): Write Your Own Functions User Defined Functions In previous labs, you've encountered useful functions, such as sqrt() and pow(), that were created by other

More information

Note. The above image and many others are courtesy of - this is a wonderful resource for designing circuits.

Note. The above image and many others are courtesy of   - this is a wonderful resource for designing circuits. Robotics and Electronics Unit 2. Arduino Objectives. Students will understand the basic characteristics of an Arduino Uno microcontroller. understand the basic structure of an Arduino program. know how

More information

Question 2. [2 points] True False By default, structures are passed-by-reference.

Question 2. [2 points] True False By default, structures are passed-by-reference. CS 101, Spring 2016 May 5th Exam 4 Name: For Questions 1 5, circle True or False. Question 1. [2 points] True False A structure is a user-defined data type. Question 2. [2 points] True False By default,

More information

The following is a typical execution run of this program:

The following is a typical execution run of this program: et181:endterm test, fall 2010 (200 points) name: Closed notes, open book, two hour test. You may use any graded program of your choice. There are four sections on eight pages. Each section is worth 50

More information

Honors Computer Science C++ Mr. Clausen Program 4A, 4B, 4C (4D, 4G)

Honors Computer Science C++ Mr. Clausen Program 4A, 4B, 4C (4D, 4G) Honors Computer Science C++ Mr. Clausen Program 4A, 4B, 4C (4D, 4G) Program 4A: Function: Comments And Output 10 points Write a program that practices comments, output, and void functions. Save the program

More information

Intro. To Graphing Linear Equations

Intro. To Graphing Linear Equations Intro. To Graphing Linear Equations The Coordinate Plane A. The coordinate plane has 4 quadrants. B. Each point in the coordinate plain has an x-coordinate (the abscissa) and a y-coordinate (the ordinate).

More information

CS 103 Unit 11. Linked Lists. Mark Redekopp

CS 103 Unit 11. Linked Lists. Mark Redekopp 1 CS 103 Unit 11 Linked Lists Mark Redekopp 2 NULL Pointer Just like there was a null character in ASCII = '\0' whose ue was 0 There is a NULL pointer whose ue is 0 NULL is "keyword" you can use in C/C++

More information

I/O Streams and Standard I/O Devices (cont d.)

I/O Streams and Standard I/O Devices (cont d.) Chapter 3: Input/Output Objectives In this chapter, you will: Learn what a stream is and examine input and output streams Explore how to read data from the standard input device Learn how to use predefined

More information

Streams and Basic File I/O Tools for Stream I/O Character I/O Inheritance

Streams and Basic File I/O Tools for Stream I/O Character I/O Inheritance Chapter 6 In this chapter, you will learn about: Streams and Basic File I/O Tools for Stream I/O Character I/O Inheritance Streams and Basic File I/O I refers to the program Input O refers to program Output:

More information

Chapter 12. Streams and File I/O. Copyright 2016 Pearson, Inc. All rights reserved.

Chapter 12. Streams and File I/O. Copyright 2016 Pearson, Inc. All rights reserved. Chapter 12 Streams and File I/O Copyright 2016 Pearson, Inc. All rights reserved. Learning Objectives I/O Streams File I/O Character I/O Tools for Stream I/O File names as input Formatting output, flag

More information

Question 2. [5 points] Given the following symbolic constant definition

Question 2. [5 points] Given the following symbolic constant definition CS 101, Spring 2012 Mar 20th Exam 2 Name: Question 1. [5 points] Determine which of the following function calls are valid for a function with the prototype: void drawrect(int width, int height); Assume

More information

Review. Modules. CS 151 Review #6. Sample Program 6.1a:

Review. Modules. CS 151 Review #6. Sample Program 6.1a: Review Modules A key element of structured (well organized and documented) programs is their modularity: the breaking of code into small units. These units, or modules, that do not return a value are called

More information