Diferență între revizuiri ale paginii „POO Tema 4”
De la WikiLabs
Jump to navigationJump to searchLinia 8: | Linia 8: | ||
* Implementați o clasă de tip excepție numită <code style="color: green">TimeoutException</code> | * Implementați o clasă de tip excepție numită <code style="color: green">TimeoutException</code> | ||
* Implementați o clasă numită <code style="color: green">GameEngine</code> care să aibă următoarele metode: | * Implementați o clasă numită <code style="color: green">GameEngine</code> care să aibă următoarele metode: | ||
− | ** Un constructor <code>GameEngine(int valueToGuess)</code> | + | ** Un constructor <code>GameEngine(int valueToGuess, int secondsAvailable)</code> ale cărui argumente reprezintă valoarea ce trebuie ghicită și numărul de secunde disponibile pentru a ghici numărul; |
** <code>GuessResult guess(int value) throws TimeoutException</code> - 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 <code style="color: green">GuessResult</code> care conține informațiile legate de mutarea anterioară. | ** <code>GuessResult guess(int value) throws TimeoutException</code> - 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 <code style="color: green">GuessResult</code> care conține informațiile legate de mutarea anterioară. | ||
* Implementați o clasă <code style="color: green">Main</code>, executabilă, care să genereze un număr aleator, să instanțieze un <code style="color: green">GameEngine</code> și apoi să citească numere de la tastatură dând feedback jucătorului până la ghicirea numărului sau până la expirarea timpului. | * Implementați o clasă <code style="color: green">Main</code>, executabilă, care să genereze un număr aleator, să instanțieze un <code style="color: green">GameEngine</code> și apoi să citească numere de la tastatură dând feedback jucătorului până la ghicirea numărului sau până la expirarea timpului. |
Versiunea de la data 3 ianuarie 2016 16:06
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()
- întoarcetrue
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, int secondsAvailable)
ale cărui argumente reprezintă valoarea ce trebuie ghicită și numărul de secunde disponibile pentru a ghici numărul; 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 tipGuessResult
care conține informațiile legate de mutarea anterioară.
- Un constructor
- Implementați o clasă
Main
, executabilă, care să genereze un număr aleator, să instanțieze unGameEngine
și apoi să citească numere de la tastatură dând feedback jucătorului până la ghicirea numărului sau până la expirarea timpului. - 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.