cse1222: lecture 9the ohio state university1. formatting numbers for output number formatters are...
Post on 30-Dec-2015
218 Views
Preview:
TRANSCRIPT
CSE1222: Lecture 9 The Ohio State University 1
Formatting Numbers for Output Number formatters are to be used in
conjunction with cout
For example,
double x = 6;cout << x << endl;
The above outputs 6, but x is declared a floating point number, so why isn’t 6.0000… displayed?
CSE1222: Lecture 9 The Ohio State University 2
Formatting Numbers for Output (2) The decimal point is truncated for display, so we
must force it to be shown:
double x = 6;cout.setf(ios::fixed);cout << x << endl;
Notice the cout.setf(ios::fixed) command
It says “force cout to display the decimal point and 6 significant digits afterward.”
Now 6.000000 will be displayed
CSE1222: Lecture 9 The Ohio State University 3
outputFormat1// format output#include <iostream>using namespace std;
int main(){ double x; cout << "Enter x: "; cin >> x;
cout << "x = " << x << endl; // general format, default cout.setf(ios::fixed); // use fixed decimal notation cout << "x = " << x << endl; cout.unsetf(ios::fixed); // unset fixed decimal notation flag cout.setf(ios::scientific); // use scientific notation cout << "x = " << x << endl; return 0;}
CSE1222: Lecture 9 The Ohio State University 4
> outputFormat1.exeEnter x: 123.45x = 123.45x = 123.450000x = 1.234500e+02
> outputFormat1.exeEnter x: 1e15x = 1e+15x = 1000000000000000.000000x = 1.000000e+15
CSE1222: Lecture 9 The Ohio State University 5
…
cout << "x = " << x << endl; // general format, default
cout.setf(ios::fixed); // use fixed decimal notation
cout << "x = " << x << endl;
cout.unsetf(ios::fixed); // unset fixed decimal notation flag
cout.setf(ios::scientific); // use scientific notation
cout << "x = " << x << endl;
…
> outputFormat1.exe
Enter x: 1e-15
x = 1e-15
x = 0.000000
x = 1.000000e-15
>
CSE1222: Lecture 9 The Ohio State University 6
…
cout << "x = " << x << endl; // general format, default
cout.setf(ios::fixed); // use fixed decimal notation
cout << "x = " << x << endl;
cout.unsetf(ios::fixed); // unset fixed decimal notation flag
cout.setf(ios::scientific); // use scientific notation
cout << "x = " << x << endl;
…
Setting Precision (1) Remember that fixed shows 6 decimal
places by default
But…
If our program dealt with printing out dollar amounts, do we really need to show 6 decimal places?
Another example: if our program dealt with some rigorous scientific simulation, is 6 decimal places enough?
CSE1222: Lecture 9 The Ohio State University 7
Setting Precision (2) The cout.precision(n) formatter
Set the precisionWhere n is the number of decimal places to be
displayed
double x = 6;cout.precision(3);cout.setf(ios::fixed);cout << x << endl;
Now 6.000 is displayed
CSE1222: Lecture 9 The Ohio State University 8
examplePrecision// example of setting precision…int main(){ cout.setf(ios::fixed); cout << "pi/100 = " << M_PI/100.0 << endl;
cout.precision(3); cout << "pi/100 = " << M_PI/100.0 << endl;
cout.precision(12); cout << "pi/100 = " << M_PI/100.0 << endl;
return 0;}
CSE1222: Lecture 9 The Ohio State University 9
> examplePrecision.exepi/100 = 0.031416pi/100 = 0.031pi/100 = 0.031415926536
>
CSE1222: Lecture 9 The Ohio State University 10
… cout.setf(ios::fixed); cout << "pi/100 = " << M_PI/100.0 << endl;
cout.precision(3); cout << "pi/100 = " << M_PI/100.0 << endl;
cout.precision(12); cout << "pi/100 = " << M_PI/100.0 << endl;…
examplePrecision2// example of setting precision…int main(){ cout.setf(ios::scientific); cout << "pi/100 = " << M_PI/100.0 << endl;
cout.precision(3); cout << "pi/100 = " << M_PI/100.0 << endl;
cout.precision(12); cout << "pi/100 = " << M_PI/100.0 << endl;
return 0;}
CSE1222: Lecture 9 The Ohio State University 11
> examplePrecision2.exepi/100 = 3.141593e-02pi/100 = 3.142e-02pi/100 = 3.141592653590e-02
>
CSE1222: Lecture 9 The Ohio State University 12
… cout.setf(ios::scientific); cout << "pi/100 = " << M_PI/100.0 << endl;
cout.precision(3); cout << "pi/100 = " << M_PI/100.0 << endl;
cout.precision(12); cout << "pi/100 = " << M_PI/100.0 << endl;…
examplePrecision3// example of setting precision…int main(){ cout.precision(30);
cout.setf(ios::fixed); cout << "pi/100 = " << M_PI/100.0 << endl; return 0;}
CSE1222: Lecture 9 The Ohio State University 13
> examplePrecision3.exepi/100 = 0.031415926535897934
>
examplePrecision4// example of setting precision…int main(){ cout.precision(30);
cout.setf(ios::scientific); cout << "pi/100 = " << M_PI/100.0 << endl; return 0;}
CSE1222: Lecture 9 The Ohio State University 14
> examplePrecision4.exepi/100 = 3.141592653589793394e-02
>
Double Precision
IEEE Standard for Floating-Point Arithmetic:
Double precision numbers have 16 significant digits
CSE1222: Lecture 9 The Ohio State University 15
outputFormat2// format output#include <iostream>using namespace std;
int main(){ double x;
cout << "Enter x: "; cin >> x;
cout.precision(12); cout << "x = " << x << endl; // general format, default cout.setf(ios::fixed); // use fixed decimal
notation cout << "x = " << x << endl; cout.unsetf(ios::fixed); // unset fixed decimal
notation flag cout.setf(ios::scientific); // use scientific notation cout << "x = " << x << endl; return 0;}
CSE1222: Lecture 9 The Ohio State University 16
> outputFormat2.exeEnter x: 123.45x = 123.45x = 123.450000000000x = 1.234500000000e+02
> outputFormat2.exeEnter x: 1e15x = 1e+15x = 1000000000000000.000000000000x = 1.000000000000e+15
CSE1222: Lecture 9 The Ohio State University 17
…
cout.precision(12);
cout << "x = " << x << endl; // general format, default
cout.setf(ios::fixed); // use fixed decimal notation
cout << "x = " << x << endl;
cout.unsetf(ios::fixed); // unset fixed decimal notation flag
cout.setf(ios::scientific); // use scientific notation
cout << "x = " << x << endl;
…
> outputFormat2.exeEnter x: 123456789e-17x = 1.23456789e-09x = 0.000000001235x = 1.234567890000e-09
>
CSE1222: Lecture 9 The Ohio State University 18
…
cout.precision(12);
cout << "x = " << x << endl; // general format, default
cout.setf(ios::fixed); // use fixed decimal notation
cout << "x = " << x << endl;
cout.unsetf(ios::fixed); // unset fixed decimal notation flag
cout.setf(ios::scientific); // use scientific notation
cout << "x = " << x << endl;
…
Fixed vs. Scientific cout.precision(12);
cout.setf(ios::fixed);cout << “x = “ << x << endl;
Outputs 12 digits after the decimal place.
cout.precision(12);cout.setf(ios::scientific);cout << “x = “ << x << endl;
Outputs 13 significant digits.
CSE1222: Lecture 9 The Ohio State University 19
CSE1222: Lecture 9 The Ohio State University 20
Formatted Writing to Files
Everything we can do with cout also applies to fout
Including I/O manipulation: setprecision(), setw(), etc.
CSE1222: Lecture 9 The Ohio State University 21
writeFile2.cpp#include <cstdlib> // function exit() is in cstdlib#include <fstream> // class ofstream() is in fstream#include <iomanip>#include <iostream>using namespace std;
int main(){ ofstream fout; // declare an output file stream
fout.open("sample.txt" , ios::out); // open file file_name for output
if (!fout.is_open()) // check if file is opened for output
{ cerr << "Unable to open file sample.txt." << endl; exit(10); }
CSE1222: Lecture 9 The Ohio State University 22
writeFile2.cpp (cont) cout << "Writing to file sample.txt." << endl;
// write to the file fout << "Test file output." << endl; fout << "100.0/3.0 = " << 100.0/3.0 << endl;
fout.precision(12); fout << "100.0/3.0 = " << 100.0/3.0 << endl; fout << "100.0/3.0 = " << fixed << 100.0/3.0 <<
endl;
// close file stream fout fout.close();
return 0; }
CSE1222: Lecture 9 The Ohio State University 23
CSE1222: Lecture 9 The Ohio State University 24
tempTable
CSE1222: Lecture 9 The Ohio State University 25
> tempTable.exe
fahrenheit celsius kelvin -40 -40.00 233.15 -20 -28.89 244.26 0 -17.78 255.37 20 -6.67 266.48 40 4.44 277.59 60 15.56 288.71>
tempTableBad.cpp// Output with no formatting#include <iostream>using namespace std;
int main(){ cout << "fahrenheit celsius kelvin" << endl; for (int fahrenheit = -40; fahrenheit <= 60; fahrenheit += 20) { double celsius = (fahrenheit - 32.0) * (5.0/9.0); double kelvin = celsius + 273.15;
cout << " " << fahrenheit << " " << celsius << " " << kelvin << endl; }
return 0;}
CSE1222: Lecture 9 The Ohio State University 26
tempTableBad
CSE1222: Lecture 9 The Ohio State University 27
> tempTableBad.exefahrenheit celsius kelvin -40 -40 233.15 -20 -28.8889 244.261 0 -17.7778 255.372 20 -6.66667 266.483 40 4.44444 277.594 60 15.5556 288.706 >
cout << "fahrenheit celsius kelvin" << endl; for (int fahrenheit = -40; fahrenheit <= 60; fahrenheit += 20) { double celsius = (fahrenheit - 32.0) * (5.0/9.0); double kelvin = celsius + 273.15;
cout << " " << fahrenheit << " " << celsius << " " << kelvin << endl; }
tempTableBad2.cpp. . .int main(){ cout.setf(ios::fixed); cout.precision(2);
cout << "fahrenheit celsius kelvin" << endl; for (int fahrenheit = -40; fahrenheit <= 60;
fahrenheit += 20) { double celsius = (fahrenheit - 32.0) * (5.0/9.0); double kelvin = celsius + 273.15;
cout << " " << fahrenheit << " " << celsius << " " << kelvin <<
endl; }
return 0;}
CSE1222: Lecture 9 The Ohio State University 28
tempTableBad2
CSE1222: Lecture 9 The Ohio State University 29
> tempTableBad2.exefahrenheit celsius kelvin -40 -40.00 233.15 -20 -28.89 244.26 0 -17.78 255.37 20 -6.67 266.48 40 4.44 277.59 60 15.56 288.71>
cout << "fahrenheit celsius kelvin" << endl; for (int fahrenheit = -40; fahrenheit <= 60; fahrenheit += 20) { double celsius = (fahrenheit - 32.0) * (5.0/9.0); double kelvin = celsius + 273.15;
cout << " " << fahrenheit << " " << celsius << " " << kelvin << endl; }
Width Problem
CSE1222: Lecture 9 The Ohio State University 30
> tempTableBad2.exefahrenheit celsius kelvin -40 -40.00 233.15 -20 -28.89 244.26 0 -17.78 255.37 20 -6.67 266.48 40 4.44 277.59 60 15.56 288.71>
cout << " " << fahrenheit << " " << celsius << " " << kelvin << endl;
Problem: Need to fix the width of each output field.
#include <iomanip>
Output can also be formatted using routines in iomanip
To use of these functions, include this file in your program header:
#include <iomanip>
CSE1222: Lecture 9 The Ohio State University 31
setw The formatter setw(n) sets the width of the output to at least n
characters. String/value is right justified. Example:
cout << setw(10)<< “Age” << setw(10) << “Weight” << endl;cout << setw(10) << 4 << setw(10) << 32 << endl;cout << setw(10) << 22 << setw(10) << 130.5 << endl;cout << setw(10) << 101 << setw(10) << 120 << endl;
Output is: Age Weight 4 32 22 130.5 101 120
CSE1222: Lecture 9 The Ohio State University 32
tempTable.cpp#include <iostream>#include <iomanip> // Note: Must include iomanip...int main(){ cout.setf(ios::fixed); cout.precision(2);
cout << "fahrenheit celsius kelvin" << endl; for (int fahrenheit = -40; fahrenheit <= 60;
fahrenheit += 20) { double celsius = (fahrenheit - 32.0) * (5.0/9.0); double kelvin = celsius + 273.15;
cout << setw(6) << fahrenheit << setw(15) << celsius << setw(10) << kelvin << endl;
}...
CSE1222: Lecture 9 The Ohio State University 33
tempTable
CSE1222: Lecture 9 The Ohio State University 34
> tempTable.exefahrenheit celsius kelvin -40 -40.00 233.15 -20 -28.89 244.26 0 -17.78 255.37 20 -6.67 266.48 40 4.44 277.59 60 15.56 288.71>
cout << setw(6) << fahrenheit << setw(15) << celsius << setw(10) << kelvin << endl;
trigTable
CSE1222: Lecture 9 The Ohio State University 35
> trigTable.exe degrees radians sin cos -180 -3.14 -0.00 -1.00 -150 -2.62 -0.50 -0.87 -120 -2.09 -0.87 -0.50 -90 -1.57 -1.00 0.00 -60 -1.05 -0.87 0.50 -30 -0.52 -0.50 0.87 0 0.00 0.00 1.00 30 0.52 0.50 0.87 60 1.05 0.87 0.50 90 1.57 1.00 0.00 120 2.09 0.87 -0.50 150 2.62 0.50 -0.87 180 3.14 0.00 -1.00>
trigTable.cpp...#include <iomanip> // NOTE: Must include iomanip... cout.setf(ios::fixed); cout.precision(2);
cout << setw(8) << "degrees" << setw(8) << "radians" << setw(8) << "sin" << setw(8) << "cos" << endl;
for (int degrees = -180; degrees <= 180; degrees += 30)
{ double radians = degrees * M_PI/180.0;
cout << setw(8) << degrees << setw(8) << radians << setw(8) << sin(radians) << setw(8) <<
cos(radians) << endl; }...
CSE1222: Lecture 9 The Ohio State University 36
trigTable
CSE1222: Lecture 9 The Ohio State University 37
> trigTable.exe degrees radians sin cos -180 -3.14 -0.00 -1.00 -150 -2.62 -0.50 -0.87 -120 -2.09 -0.87 -0.50 -90 -1.57 -1.00 0.00 -60 -1.05 -0.87 0.50 -30 -0.52 -0.50 0.87 0 0.00 0.00 1.00 30 0.52 0.50 0.87 60 1.05 0.87 0.50 90 1.57 1.00 0.00 120 2.09 0.87 -0.50 150 2.62 0.50 -0.87 180 3.14 0.00 -1.00>
cout << setw(8) << "degrees" << setw(8) << "radians" << setw(8) << "sin" << setw(8) << "cos" << endl;
expTable
CSE1222: Lecture 9 The Ohio State University 38
> expTable.exeEnter number of values: 10 x e^x 2^x 1 2.72 2.00 2 7.39 4.00 3 20.09 8.00 4 54.60 16.00 5 148.41 32.00 6 403.43 64.00 7 1096.63 128.00 8 2980.96 256.00 9 8103.08 512.00 10 22026.47 1024.00>
expTable.cpp...#include <iomanip> // NOTE: Must include iomanip... cout << "Enter number of values: "; cin >> n;
cout.setf(ios::fixed); cout.precision(2);
cout << setw(5) << "x" << setw(10) << "e^x" << setw(10) << "2^x" << endl;
for (int i = 1; i <= n; i++) { double x = i; cout << setw(5) << i << setw(10) << exp(x) <<
setw(10) << pow(2.0,x) << endl; }...
CSE1222: Lecture 9 The Ohio State University 39
expTable
CSE1222: Lecture 9 The Ohio State University 40
> expTable.exeEnter number of values: 10 x e^x 2^x 1 2.72 2.00 2 7.39 4.00 3 20.09 8.00 4 54.60 16.00 5 148.41 32.00 6 403.43 64.00 7 1096.63 128.00 8 2980.96 256.00 9 8103.08 512.00 10 22026.47 1024.00>
cout << setw(5) << i << setw(10) << exp(x) << setw(10) << pow(2.0,x) << endl;
expTable
CSE1222: Lecture 9 The Ohio State University 41
> expTable.exeEnter number of values: 15 x e^x 2^x 1 2.72 2.00 2 7.39 4.00... 11 59874.14 2048.00 12 162754.79 4096.00 13 442413.39 8192.00 141202604.28 16384.00 153269017.37 32768.00>
cout << setw(5) << i << setw(10) << exp(x) << setw(10) << pow(2.0,x) << endl;
expTable
CSE1222: Lecture 9 The Ohio State University 42
> expTable.exeEnter number of values: 25 x e^x 2^x 1 2.72 2.00 2 7.39 4.00... 13 442413.39 8192.00 141202604.28 16384.00 153269017.37 32768.00... 239744803446.258388608.00 2426489122129.8416777216.00 2572004899337.3933554432.00 >
cout << setw(5) << i << setw(10) << exp(x) << setw(10) << pow(2.0,x) << endl;
expTable2.cpp... cout << "Enter number of values: "; cin >> n;
cout.setf(ios::fixed); cout.precision(2);
cout << setw(5) << "x" << " " << setw(10) << "e^x" << " " << setw(10) << "2^x" << endl;
for (int i = 1; i <= n; i++) { double x = i; // Add spaces between fields. cout << setw(5) << i << " " << setw(10) << exp(x) << " " << setw(10) << pow(2.0,x) << endl; }...
CSE1222: Lecture 9 The Ohio State University 43
expTable2
CSE1222: Lecture 9 The Ohio State University 44
> expTable2.exeEnter number of values: 10 x e^x 2^x 1 2.72 2.00 2 7.39 4.00 3 20.09 8.00 4 54.60 16.00 5 148.41 32.00 6 403.43 64.00 7 1096.63 128.00 8 2980.96 256.00 9 8103.08 512.00 10 22026.47 1024.00>
// Add spaces between fields cout << setw(5) << i << " " << setw(10) << exp(x) << " " << setw(10) << pow(2.0,x) << endl;
expTable2
CSE1222: Lecture 9 The Ohio State University 45
> expTable2.exeEnter number of values: 15 x e^x 2^x 1 2.72 2.00 2 7.39 4.00... 10 22026.47 1024.00 11 59874.14 2048.00 12 162754.79 4096.00 13 442413.39 8192.00 14 1202604.28 16384.00 15 3269017.37 32768.00>
// Add spaces between fieldscout << setw(5) << i << " " << setw(10) << exp(x) << " " << setw(10) << pow(2.0,x) << endl;
expTable2
CSE1222: Lecture 9 The Ohio State University 46
> expTable2.exeEnter number of values: 25 x e^x 2^x 1 2.72 2.00 2 7.39 4.00... 20 485165195.41 1048576.00 21 1318815734.48 2097152.00 22 3584912846.13 4194304.00 23 9744803446.25 8388608.00 24 26489122129.84 16777216.00 25 72004899337.39 33554432.00>
// Add spaces between fieldscout << setw(5) << i << " " << setw(10) << exp(x) << " " << setw(10) << pow(2.0,x) << endl;
expTable3.cpp... cout << "Enter number of values: "; cin >> n;
// DO NOT SET FIXED OUTPUT FORMAT // cout.setf(ios::fixed); cout.precision(2);
cout << setw(5) << "x" << setw(10) << "e^x" << setw(10) << "2^x" << endl;
for (int i = 1; i <= n; i++) { double x = i; cout << setw(5) << i << setw(10) << exp(x) << setw(10) << pow(2.0,x) << endl; }...
CSE1222: Lecture 9 The Ohio State University 47
expTable3
CSE1222: Lecture 9 The Ohio State University 48
> expTable3.exeEnter number of values: 25 1 2.7 2 2 7.4 4... 20 4.9e+08 1e+06 21 1.3e+09 2.1e+06 22 3.6e+09 4.2e+06 23 9.7e+09 8.4e+06 24 2.6e+10 1.7e+07 25 7.2e+10 3.4e+07>
cout << setw(5) << i << setw(10) << exp(x) << setw(10) << pow(2.0,x) << endl;
expTable3
CSE1222: Lecture 9 The Ohio State University 49
> expTable3.exeEnter number of values: 10 x e^x 2^x 1 2.7 2 2 7.4 4 3 20 8 4 55 16 5 1.5e+02 32 6 4e+02 64 7 1.1e+03 1.3e+02 8 3e+03 2.6e+02 9 8.1e+03 5.1e+02 10 2.2e+04 1e+03 >
cout << setw(5) << i << setw(10) << exp(x) << setw(10) << pow(2.0,x) << endl;
Other Formatters Iomanip contains many other formatters, including:
fixed Force show a decimal point with 6 trailing decimal places
scientific Outputs floating point number in scientific notation
hex Outputs integer in hexadecimal (base16)
oct Outputs integer in octal (base 8)
showpos Force positive numbers to be shown with a leading ‘+’ symbol
setprecision(n) Set floating point precision to n places
setw(n) Set the field width to n characters
CSE1222: Lecture 9 The Ohio State University 50
outputFormat3// format output#include <iostream>#include <iomanip>using namespace std;
int main(){ double x;
cout << "Enter x: "; cin >> x;
// general format, default, 12 significant digits cout << "x = " << setprecision(12) << x << endl; // fixed decimal notation, 12 digits after decimal
point cout << "x = " << fixed << setprecision(12) << x <<
endl; // scientific notation, 12 digits after decimal point cout << "x = " << scientific << setprecision(12) << x
<< endl; return 0;}
CSE1222: Lecture 9 The Ohio State University 51
> outputFormat3.exeEnter x: 123.45x = 123.45x = 123.450000000000x = 1.234500000000e+02
> outputFormat3.exeEnter x: 123456789e-17x = 1.23456789e-09x = 0.000000001235x = 1.234567890000e-09
CSE1222: Lecture 9 The Ohio State University 52
…
// general format, default, 12 significant digits
cout << "x = " << setprecision(12) << x << endl;
// fixed decimal notation, 12 digits after decimal point
cout << "x = " << fixed << setprecision(12) << x << endl;
// scientific notation, 12 digits after decimal point
cout << "x = " << scientific << setprecision(12) << x << endl;
…
Rounding Output// example of output rounding
#include <iostream>#include <iomanip>using namespace std;
int main(){ double x = 1.0/7.0;
cout << "x = " << setprecision(12) << x << endl; cout << "x = " << setprecision(7) << x << endl; cout << "x = " << setprecision(5) << x << endl; return 0;}
CSE1222: Lecture 9 The Ohio State University 53
• C++ rounds output
> roundOutput.exex = 0.142857142857x = 0.1428571x = 0.14286
>
CSE1222: Lecture 9 The Ohio State University 54
…
double x = 1.0/7.0;
cout << "x = " << setprecision(12) << x << endl;
cout << "x = " << setprecision(7) << x << endl;
cout << "x = " << setprecision(5) << x << endl;
…
expTable
CSE1222: Lecture 9 The Ohio State University 55
> expTable.exeEnter number of values: 10 x e^x 2^x 1 2.72 2.00 2 7.39 4.00 3 20.09 8.00 4 54.60 16.00 5 148.41 32.00 6 403.43 64.00 7 1096.63 128.00 8 2980.96 256.00 9 8103.08 512.00 10 22026.47 1024.00>
expTable4
CSE1222: Lecture 9 The Ohio State University 56
> expTable4.exeEnter number of values: 10 x e^x 2^x 1 2.72 2 2 7.39 4 3 20.09 8 4 54.60 16 5 148.41 32 6 403.43 64 7 1096.63 128 8 2980.96 256 9 8103.08 512 10 22026.47 1024>
expTable4.cpp... cout << "Enter number of values: "; cin >> n;
cout.setf(ios::fixed);
cout << setw(5) << "x" << " " << setw(10) << "e^x" << " " << setw(8) << "2^x" << endl;
for (int i = 1; i <= n; i++) { double x = i; // Use precision 2 for e^x and precision 0
(integer) for 2^x. cout << setw(5) << i << " " << setw(10) <<
setprecision(2) << exp(x) << " " << setw(8) << setprecision(0) << pow(2.0,x) << endl;
}...
CSE1222: Lecture 9 The Ohio State University 57
expTable
CSE1222: Lecture 9 The Ohio State University 58
> expTable4.exeEnter number of values: 10 x e^x 2^x 1 2.72 2 2 7.39 4 3 20.09 8 4 54.60 16 5 148.41 32 6 403.43 64 7 1096.63 128 8 2980.96 256 9 8103.08 512 10 22026.47 1024>
// Use precision 2 for e^x and precision 0 (integer) for 2^x.cout << setw(5) << i << " " << setw(10) << setprecision(2) << exp(x) << " " << setw(8) << setprecision(0) << pow(2.0,x) << endl;
Summary cout.setf(ios::fixed); // use fixed decimal notation cout.setf(ios::scientific); // use scientific notation cout.precision(k); // print k digits after decimal
iomanip: #include <iomanip> // include IO manipulators(formatters) cout << setw(k) << ...; // set next field width to k cout << setprecision(k) << ...; // print k digits after decimal cout << fixed << ...; // switch to fixed decimal notation cout << scientific << ...; // switch to scientific notation
CSE1222: Lecture 9 The Ohio State University 59
top related