POO Tema 4

De la WikiLabs
Versiunea din 3 ianuarie 2016 15:50, autor: Rhobincu (discuție | contribuții) (Pagină nouă: Realizați un program care să implementeze jocul "Ghicește numărul" contra timp. Calculatorul va genera un număr aleator între 1 și 100 și jucătorul va avea 10 secunde să...)
(dif) ← Versiunea anterioară | Versiunea curentă (dif) | Versiunea următoare → (dif)
Jump to navigationJump to search

Realizați un program care să implementeze jocul "Ghicește numărul" contra timp. Calculatorul va genera un număr aleator între 1 și 100 și jucătorul va avea 10 secunde să ghicească numărul, altfel jocul e considerat pierdut. La fiecare încercare, calculatorul va informa jucătorul dacă numărul introdus este mai mic sau mai mare decât cel căutat.

Cerințe

  • Implementați o clasă GuessResult care să aibă două metode publice:
    • boolean isWon() - întoarce true dacă numărul a fost ghicit.
    • String toString() - întoarce un String care va fi prezentat jucătorului drept feedback la numărul introdus: "Try LOWER!", "Try HIGHER!", "Exactly, you WIN!".
  • Implementați o clasă de tip excepție numită TimeoutException
  • Implementați o clasă numită GameEngine care să aibă următoarele metode:
    • Un constructor GameEngine(int valueToGuess) al cărui argument reprezintă valoarea ce trebuie ghicită;
    • GuessResult guess(int value) throws TimeoutException - o metodă apelată de fiecare dată când jucătorul introduce un număr; metoda va arunca excepție dacă s-a depășit timpul, altfel va întoarce un obiect de tip GuessResult care conține informațiile legate de mutarea anterioară.
  • Dacă timpul expiră, se va afișa în consolă imediat (nu la primul număr introdus) textul "Time is up! You lose."

Observații

  • Toate clasele trebuie să facă parte din pachetul seriaf.poo.tema4
  • Timpul de 10 secunde începe să curgă de la instațierea obiectului de tip GameEngine.


Link pentru upload Web-Cat, aici.