Download presentation
Presentation is loading. Please wait.
Published byReynold Underwood Modified over 9 years ago
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
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.