#include <iostream>
using namespace std;

int main()
{
   cout << "Aufgabe 8.6\n\n";

   int lower_limit = 1;
   int upper_limit = 99;

   cout << "Denken Sie sich bitte eine Zahl zwischen " << lower_limit << " und "
      << upper_limit << " (inkl.) aus.\n";

   int z;
   for (;;)
   {
      // 1. Zahl z zwischen (l+u)/2 => User fragen
      z = (lower_limit + upper_limit) / 2;
      cout << "Ist die Zahl " << z << "?\n> ";
      char c;
      cin >> c;

      // 2. Zahl z stimmt => Ende
      if (c == 'j')
      {
         break;
      }

      // 3. g - groesser => suchen im Bereich von (z,u)
      if (c == 'g')
      {
         lower_limit = z + 1;
         continue;
      }

      // 4. k - kleiner => suchen im Bereich von (l,z)
      if (c == 'k')
      {
         upper_limit = z;
         continue;
      }

      // 5. Gehe wieder zu 1.
   }
   cout << "Juhu, ich habe die Zahl gefunden. Sie ist die " << z << ".\n";
}