https://rentry.org/PPP2_p105

// Code derived from Stroustrup's PPP2 book
// § 4.4.1.2 switch-statements
//  -and beginning on p 105

#include <iostream>

using std::cin;
using std::cout;

int main()
{
  constexpr double cm_per_inch = 2.54;  // number of centimeters in an inch
  double           length      = 1;     // length in inches or centimeters
  char             unit        = 'a';

  cout << "Please enter a length followed by a separate unit (c or i):\n";
  cin >> length >> unit;

  switch (unit) {
    case 'i':
      cout << length << "in == " << cm_per_inch * length << "cm\n";
      break;
    case 'c':
      cout << length << "cm == " << length / cm_per_inch << "in\n";
      break;
    default:
      cout << "Sorry, I don't know a unit called '" << unit << "'\n";
      break;
  }
}

build & run:

g++ -std=c++20 -O2 -Wall -pedantic ./ch_04/main_p105.cpp && ./a.out

PrevUpNext

Edit
Pub: 28 Jan 2023 13:13 UTC
Edit: 29 Apr 2023 07:01 UTC
Views: 659