Presentation is loading. Please wait.

Presentation is loading. Please wait.

ECE 264 Object-Oriented Software Development Instructor: Dr. Honggang Wang Fall 2012 Lecture 4: Continuing with C++ I/O Basics.

Similar presentations


Presentation on theme: "ECE 264 Object-Oriented Software Development Instructor: Dr. Honggang Wang Fall 2012 Lecture 4: Continuing with C++ I/O Basics."— Presentation transcript:

1 ECE 264 Object-Oriented Software Development Instructor: Dr. Honggang Wang Fall 2012 Lecture 4: Continuing with C++ I/O Basics

2 Lecture outline Announcements/reminders  TA: Justin R Lacle (jlacle@umassd.edu)jlacle@umassd.edu  TA Office hour: 10-11:00 am, Tuesday and 11:00- 12:00 pm, Thursday  Class folder now set up on M:\ drive Should have folder under M:\ECE-264\ Continue with C++ basics  Review basic I/O  Work through examples Applying design cycle to ECE 264 10/3/2015 ECE 264: Lecture 4 2

3 Review Covered basic C++ program structure—very similar to C! Namespaces  Introduced std namespace—includes cin, cout, etc.  Could include entire namespace: using namespace std;  Or, just include members being used: using std::cout; Output ( cout ) streams  Can output multiple values in same statement cout << “x=“ << x << “, y=“ << y << endl; Input ( cin ) streams  Use cin to read values into variables E.g., cin >> x; Skips whitespace characters Input value must be compatible with type of x 10/3/2015 ECE 264: Lecture 4 3

4 4 Another C++ Program: Adding Integers Variable  Is a location in memory where a value can be stored  Common data types (fundamental, primitive or built-in) int – for integer numbers char – for characters double – for floating point numbers  Declare variables with data type and name before use int integer1; int integer2; int sum; 10/3/2015 ECE 264: Lecture 4

5 Basic program 2 // Adapted from figure 2.5 in text // Addition program that displays the sum of two integers. #include using std::cout; using std::cin; using std::endl; int main() { // variable declarations int number1; int number2; int sum; // prompt user for data and read into appropriate variables cout << "Enter first integer: "; cin >> number1; cout << "Enter second integer: "; cin >> number2; sum = number1 + number2; // add the numbers; store result in sum cout << "Sum is " << sum << endl; // display sum; end line return 0; // indicate that program ended successfully } // end function main 10/3/2015 ECE 264: Lecture 4 5

6 10/3/2015 ECE 264: Lecture 4 6 output 1,2 4.5 cm _ //Example 1: Determine the output #include using std::cout; using std::cin; using std::endl; #include using std::string; int main() { int i, j; double x; string units = " cm"; cin >> i >> j; cin >> x; cout << "output \n"; cout << i << ',' << j << endl << x << units << endl; return 0; } //Input stream is: 1 2 4.5

7 10/3/2015 ECE 264: Lecture 4 7 //Example 2: Determine the output #include using std::cout; using std::cin; using std::endl; int main() { int i, j; double x, y; cin >> i >> j >> x >> y; cout << "First output " << endl; cout << i << ',' << j << ',' << x << ',' << y << endl; cin >> x >> y >> i >> j; cout << "Second output" << endl; cout << i << ',' << j << ',' << x << ',' << y << endl; return 0; } //Input stream is: 1 2 3.4 5 2 3 3.4 7 First output 1,2,3.4,5 Second output 3,2,2,3 _

8 Example 2 (cont.) Issues with second output  Before highlighted lines i = 1, j = 2, x = 3.4, y = 5  Second cin appears to assign: x = 2, y = 3, i = 3.4, j = 7  But printing i, j, x, and y in order yields: 3,2,2,3 j never gets value 7—what happens?  i and j are integers  cin reads 3 into i and then stops at decimal point  cin can’t skip non-whitespace character  j doesn’t change 10/3/2015 ECE 264: Lecture 4 8

9 Applying life cycle to ECE 264 How does the software cycle apply to ECE 264?  Project: You’ll be working in teams and taking a project through these stages  Labs: Don’t just sit down and start coding! Read the lab handout  will give you, in essence  Requirements: what should your program be able to do?  Hints about design / programming:  How might you organize your program?  How might you implement that design?  Basic system tests: given particular inputs to your “system” (program), what should the output look like? Identify each of those parts as you read the handout Based on what you read, formulate a high-level design  Given requirements, how are we going to organize the code?  What function(s) do we need?  What class(es) might we use?  We will often provide hints to point you in the right direction  Later labs may ask you to use UML to formalize parts of your design Once high-level design is done and you have a sense of overall program, then start writing code! 10/3/2015 ECE 264: Lecture 4 9

10 Final notes Next time Formatted output Acknowledgements: this lecture borrows heavily from lecture slides provided with the following texts: Deitel & Deitel, C++ How to Program, 8 th ed. Etter & Ingber, Engineering Problem Solving with C++, 2 nd ed. 10/3/2015 ECE 264: Lecture 4 10


Download ppt "ECE 264 Object-Oriented Software Development Instructor: Dr. Honggang Wang Fall 2012 Lecture 4: Continuing with C++ I/O Basics."

Similar presentations


Ads by Google