/******************************* SWITCH.CPP ***********************************
* Example comparing nested if's and switch statements              1998-10-01 *
*                                                                   Agner Fog *
*                                                                             *
* The nested if construction and the switch construction do exactly the same  *
* thing, but the switch is easier to overview.                                *
*                                                                             *
******************************************************************************/
#include <iostream.h>
#include <conio.h>
#include <math.h>

void main ()
{

   float x = 2.83;  int choise = 0;
   cout << "Enter your choise: 1=sin, 2=cos, 3=tan, 4=log ";
   cin >> choise;

   // nested if's:
   if (choise < 1  ||  choise > 4)
   {
      cout << "wrong choise";
   }
   else
   {                           // choise is 1, 2, 3, or 4
      if (choise <= 2)
      {                        // choise is 1 or 2
         if (choise == 1)
         {
            cout << sin(x);
         }
         else
         {                     // choise is 2
            cout << cos(x);
         }
      }
      else
      {                        // choise is 3 or 4
         if (choise == 3)
         {
            cout << tan(x);
         }
         else
         {                     // choise is 4
            cout << log(x);
         }
      }
   }
   cout << "\n";

   // same with switch statement:
   switch (choise)
   {
   case 1:
      cout << sin(x);
      break;
   case 2:
      cout << cos(x);
      break;
   case 3:
      cout << tan(x);
      break;
   case 4:
      cout << log(x);
      break;
   default:
      cout << "wrong choise";
      break;
   }
   getch();
}

