home *** CD-ROM | disk | FTP | other *** search
/ Beginning C++ Through Gam…rogramming (2nd Edition) / BCGP2E.ISO / bloodshed / devcpp-4.9.9.2_setup.exe / Examples / Jackpot / main.cpp < prev   
C/C++ Source or Header  |  2003-03-23  |  2KB  |  107 lines

  1. #include <iostream>
  2. #include <stdlib.h>
  3. #include <time.h>
  4.  
  5. using namespace std;
  6.  
  7. void Start ();
  8. void GetResults ();
  9.  
  10. int  i, j, life, maxrand;
  11. char c;
  12.  
  13.  
  14. void
  15. Start ()
  16. {
  17.      i = 0;
  18.      j = 0;
  19.      life = 0;
  20.      maxrand = 6;
  21.  
  22.      cout << "Select difficulty mode:\n"; // the user has to select a difficutly level
  23.      cout << "1 : Easy (0-15)\n";
  24.      cout << "2 : Medium (0-30)\n";
  25.      cout << "3 : Difficult (0-50)\n";
  26.      cout << "or type another key to quit\n";
  27.      c = 30;
  28.  
  29.      cin >> c;                   // read the user's choice
  30.      cout << "\n";
  31.  
  32.      switch (c)
  33.      {
  34.         case '1' : maxrand = 15;  // the random number will be between 0 and maxrand
  35.         break;
  36.         case '2' : maxrand = 30;
  37.         break;
  38.         case '3' : maxrand = 50;
  39.         break;
  40.         default : exit(0);
  41.         break;
  42.      }
  43.  
  44.      life = 5;         // number of lifes of the player
  45.      srand( (unsigned)time( NULL ) ); // init Rand() function
  46.      j = rand() % maxrand;  // j get a random value between 0 and maxrand
  47.  
  48.      GetResults();
  49.  
  50. }
  51.  
  52.  
  53. void
  54. GetResults ()
  55. {
  56.      if (life <= 0)
  57.         // if player has no more life then he lose
  58.      {
  59.         cout << "You lose !\n\n";
  60.         Start();
  61.      }
  62.  
  63.      cout << "Type a number: \n";
  64.      cin >> i;          // read user's number
  65.  
  66.      if ((i>maxrand) || (i<0)) // if the user number isn't correct, restart
  67.      {
  68.         cout << "Error : Number not between 0 and \n" << maxrand;
  69.         GetResults();
  70.      }
  71.  
  72.      if (i == j)
  73.      {
  74.         cout << "YOU WIN !\n\n"; // the user found the secret number
  75.         Start();
  76.      }
  77.  
  78.      else if (i>j)
  79.      {
  80.         cout << "Too BIG\n";
  81.         life = life - 1;    // -1 to the user's "life"
  82.         cout << "Number of remaining life: " << life << "\n\n";
  83.         GetResults();
  84.      }
  85.  
  86.      else if (i<j)
  87.      {
  88.         cout << "Too SMALL\n";
  89.         life = life - 1;
  90.         cout << "Number of remaining life:\n" << life << "\n\n";
  91.         GetResults();
  92.      }
  93. }
  94.  
  95.  
  96. int
  97. main ()
  98. {
  99.      cout << "** Jackpot game **\n";
  100.      cout << "The goal of this game is to guess a number. You will be ask to type\n";
  101.      cout << "a number (you have 5 guess)\n";
  102.      cout << "Jackpot will then tell you if this number is too big of too small compared to the secret number to find\n\n";
  103.      Start();
  104.      return 0;
  105. }
  106.  
  107.