Diferență între revizuiri ale paginii „POO Tema 4”
De la WikiLabs
Jump to navigationJump to search (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ă...) |
|||
| Linia 10: | Linia 10: | ||
** Un constructor <code>GameEngine(int valueToGuess)</code> al cărui argument reprezintă valoarea ce trebuie ghicită; | ** Un constructor <code>GameEngine(int valueToGuess)</code> al cărui argument reprezintă valoarea ce trebuie ghicită; | ||
** <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. | ||
* Dacă timpul expiră, se va afișa în consolă '''imediat''' (nu la primul număr introdus) textul "Time is up! You lose." | * Dacă timpul expiră, se va afișa în consolă '''imediat''' (nu la primul număr introdus) textul "Time is up! You lose." | ||
Versiunea de la data 3 ianuarie 2016 15:53
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ă
GuessResultcare să aibă două metode publice:boolean isWon()- întoarcetruedacă 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ă
GameEnginecare 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 tipGuessResultcare 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.