Download presentation
Presentation is loading. Please wait.
Published byLester Carter Modified over 9 years ago
2
Formatting Output Escape Sequences iomanip.h Objects setw() setiosflags(…) setprecision()
3
Output cout The object cout is used to direct data to the ststandard output device, usually the monitor. predefined stream object in iostream library used with insertion operator << *
4
Output cout Syntax:cout << ExprOrString; Read << as “put to”. cout << 24; cout << ‘y’; cout << “Hello”; Note: none of these contain a “\n” or endl, and thus may not be displayed immediately. *
5
Output cout Syntax:cout << ExprOrString; cout << “The answer to question “; cout << q_num; cout << “ is “; cout << 1.5 * pay_rate; cout << endl; // force a new line and flush * The answer to question 5 is 9.0 q_num 5 pay_rate 6
6
Output cout Syntax: cout << ExprOrString << ExprOrString; Each appends data to the stream. cout << “Num1 * num2 is “ << num1*num2; OUTPUT Num1 * num2 is 110 * space
7
Output cout Syntax: cout << ExprOrString << ExprOrString; Each appends data to the stream. cout << “Num =“ << 35.1; OUTPUT Num =35.1 * no space
8
Spaces – Essential for Strings Syntax: cout << ExprOrString << ExprOrString; Each appends data to the stream. cout << “Hi, “ << name << “how are you?”; no space space OUTPUT Hi, Shadowhow are you? * * *
9
Output cout Syntax: cout << ExprOrString << ExprOrString; cout << “The answer to question “; cout << q_num; cout << “ is “; cout << 1.5 * pay_rate; * no ; cout << “The answer to question “ << qu_num << “ is “<< 1.5 * pay_rate; align the put-to operators for good style
10
More Multi-line Syntax Syntax: cout << ExprOrString << ExprOrString << ExprOrString ; cout << “The answer to question number 17 is listed after question “; cout << lastqu << ‘.’; * cout << “The answer to question number 17 “ << “is listed after question “ << lastqu << ‘.’; no ; Strings should never span multiple lines error
11
Escape Sequences \ Changes the meaning of the character that follows it. \nhard return \ttab \\\ \”“ \abeep or bell These must be within quotation marks.
12
Escape Sequences cout << “Name\tTotal\tGrade\n”; cout << “Miyo\t186\t B\n”; cout << “\n Jake\t211\t A\n”; cout << “Syd\t203\t A\n”; OUTPUT NameTotalGrade Miyo186 B Jake211 A Syd203 A _ * \n \n gives a blank line
13
Escape Sequences \ Changes the meaning of the character that follows it. \”take quotes literally * “James \”Big Jim\” Traficant” gives James “Big Jim” Traficant
14
Escape Sequences * * “\n Alfonsus\n\”Butch\” \nBillone” gives Alfonsus “Butch” Billone “|\n Alfonsus\n \t \”Butch\” \tBillone|” gives | Alfonsus “Butch”Billone|
15
Formatting Output endl does the same thing as \n - inserts a hard return requires the insertion operator cout << endl << endl ; is the same as: cout << “\n\n”;
16
2.3 Numerical Output using cout Using cout to output the results of an arithmetic expression Numerical output should be displayed attractively Programs are often judged on the presentation of their output, (in addition to the accuracy of the results) For example, $1.897 is not acceptable output
17
cout Syntax cout << ExprOrStringOrManipulator << ExprOrStringOrManipulator...; For Example: cout << setw(5) << 350; uses field width of 5 cout << setw(7) << 350; uses field width of 7
18
Formatting Output the iomanip header file contains objects which have special effects on the iostream. * #include #include
19
setw(n) how many columns for data setprecision(n) sets number of decimals setiosflags(ios::fixed) displays 6 digits after the decimal * * * Formatting Output iomanip contains the objects which have special effects on the iostream.…… …...
20
Formatting Output setw(n)how many columns for data cout << setw(4) << ans cout << setw(1) << ans << setw(5) << num << setw(3) << num << setw(4) << “Hi”; << setw(3) << “Hi”; * fields expand 33 7132 Hi 337132 Hi
21
Formatting Output setprecision(n)sets number of decimals x = format result 314.0setw(10) setprecision(2) 314.00 point counts 314.0setw(10) setprecision(5) 314.00000 * * * columns added 314.0setw(7) setprecision(5) 314.00000
22
Formatting Output setiosflags(ios::fixed) displays 6 digits after the decimal #include using namespace std; void main() { double v = 0.00123456789; double w = 1.23456789; double x = 12.3456789; double y = 1234.56789; double z = 12345.6789;
23
Formatting Output cout <<v<< endl<<w<< endl <<x<< endl <<y<< endl <<z<<”\n\n”; cout << setiosflags(ios::fixed); cout <<v<< endl <<w<< endl <<x<< endl <<y<< endl <<z<<”\n\n”; cout << setprecision(2); cout <<v<< endl <<w<< endl <<x<< endl <<y<< endl <<z<<”\n\n”; }
24
Formatting Output default 0.00123457 1.23457 12.3457 1234.57 12345.7 ios::fixed 0.001235 1.234568 12.345679 1234.567890 12345.678900 + setprecision(2) 0.00 1.23 12.35 1234.57 12345.68
25
Numerical output with cout An example from the 2 nd Edition text: #include using namespace std; int main() { cout << 6 << ‘\n’ << 18 << ‘\n’ << 124 << ‘\n’ << “---\n” << 6+19+124 << ‘\n’; return 0; } output 6 18 124 --- 149
26
Numerical output with cout Same example using setw( ): #include using namespace std; int main() { cout << setw(3) << 6 << ‘\n’ << setw(3) << 18 << ‘\n’ << setw(3) << 124 << ‘\n’ << “---\n” << 6+19+124 << ‘\n’; return 0; } output 6 18 124 --- 149
27
Formatting Output For decimal alignment use: ios::fixed and setprecision( ) use setw( ) each time setw( ) use setw( ) each time cout << setiosflags(ios::fixed) << setprecision(n); cout << “- -” << setw(n) << var1 << setw(n) << “- -”; cout << “- -\t” << setw(n) << var1 << setw(n) <<var2; *
28
Common Programming Errors, cout and Variables Forgetting to declare all variables Storing wrong data type into a variable Forgetting to initialize variables Dividing integer values incorrectly Mixing data types without knowing effect Forgetting insertion symbol <<
29
preparedness opportunity Good luck is nothing but preparedness and opportunity coming together.
Similar presentations
© 2024 SlidePlayer.com. Inc.
All rights reserved.