Bjarne Stroustrup “Programming Principles and Practice Using C++”
Chapter 4 Drill 7
Using std_lib_facilities.h by Bjarne Stroustrup.
[code language=”cpp”]
// Philipp Siedler
// Bjarne Stroustrup’s PP
// Chapter 4 Drill 7
#include "std_lib_facilities.h"
int main()
{
cout << "Enter a double value followed by m(meter) in(inch) ft(feet) or cm(centimeter or a ‘|’ to terminate the program:\n";
vector<double> numbers;
double x;
double y;
string unit;
while (cin >> x >> unit)
{
if (unit == "m")
{
y = x * 100;
}
else if (unit == "in")
{
y = x * 2.54;
}
else if (unit == "ft")
{
y = (x / 12)*2.54;
}
else if (unit == "cm")
{
y = x;
}
numbers.push_back(y);
cout << "you entered: " << x << " " << unit << "\n";
sort(numbers);
if (y == numbers[0]){
cout << "the smallest so far is: " << x << " " << unit << "\n";
}
if (y == numbers[numbers.size() – 1]){
cout << "the largest so far is: " << x << " " << unit << "\n";
}
cout << "\n";
}
}
[/code]
Output: type in two doubles, followed by m(meter) in(inch) ft(feet) or cm(centimeter or a '|' to terminate the program: 2.3 m you entered: 2.3 m the smallest so far is: 2.3 m the largest so far is: 2.3 m 4.5 ft you entered: 4.5 ft the smallest so far is: 4.5 ft 3.1 cm you entered: 3.1 cm