Druga VDN
Zahteve zaključka
Odprto: torek, 15. december 2020, 00.00
Rok za oddajo: petek, 22. januar 2021, 23.59
DRUGA VDN
V programskem jeziku Java napišite program, ki omogoča igranje znane igre
Keisuke (https://en.wikipedia.org/wiki/Keisuke_(puzzle))
Pravila igre:
Igramo na karti velikosti nxm, nekatera polja so senčena. Imamo dva niza števil, en za vodoravne vpise, drugi za navpične.
Igra je enostavna številska križanka podobna igri Kakuro:). Cilj je izpolniti vsa prazna polja (nesenčena) s ciframi števil iz obeh nizov - za prvi niz vodoravno, za drugi navpično. Cifre posameznega števila zapisujemo zaporedno (števil ne delimo).
Osnovna naloga zahteva:
- izdelavo uporabniškega vmesnika, ki omogoča igranje (vsakič drugo igralno polje), z vsakim novim zagonom igre dobimo novo postavitev (naključno) (40)
- izdelavo uporabniškega vmesnika, ki igralno polje shrani v datoteko (ob igranju, omogoča izbiro postavitve igralnega polje, iz datoteke) (15)
- meni za nadzor igre (ponovna igra, nastavitev velikosti igralnega polja). (10)
- možnost pregleda ali je trenutna pozicija na igralnem polju veljavna. (10)
- možnost prikaza rešitve. (10)
Keisuke (https://en.wikipedia.org/wiki/Keisuke_(puzzle))
Pravila igre:
Igramo na karti velikosti nxm, nekatera polja so senčena. Imamo dva niza števil, en za vodoravne vpise, drugi za navpične.
Igra je enostavna številska križanka podobna igri Kakuro:). Cilj je izpolniti vsa prazna polja (nesenčena) s ciframi števil iz obeh nizov - za prvi niz vodoravno, za drugi navpično. Cifre posameznega števila zapisujemo zaporedno (števil ne delimo).
Osnovna naloga zahteva:
- izdelavo uporabniškega vmesnika, ki omogoča igranje (vsakič drugo igralno polje), z vsakim novim zagonom igre dobimo novo postavitev (naključno) (40)
- izdelavo uporabniškega vmesnika, ki igralno polje shrani v datoteko (ob igranju, omogoča izbiro postavitve igralnega polje, iz datoteke) (15)
- meni za nadzor igre (ponovna igra, nastavitev velikosti igralnega polja). (10)
- možnost pregleda ali je trenutna pozicija na igralnem polju veljavna. (10)
- možnost prikaza rešitve. (10)
- možnost "endless mode", ki omogoči igranje z dinamičnim večanjem igralnega polja. Ob novem zagonu igre se generira nova postavitev (naključna) velikosti 5x5. Ko igralec pravilno zapolni igralno polje, se igra razširi na velikost 6x6 z ohranitvijo izpolnjenega igralnega polja (velikosti 5x5). Nizi števil za vodoravne in navpične vpise se posodobijo in igralcu je omogočeno nadaljnje igranje. Vsakič, ko igralec pravilno zapolni igralno polje, se to poveča za eno enoto v vsako dimenzijo in omogoči nadaljnje igranje. (15)
- Pazite na pravilno uporabo osnovnih elementov predmetno-naravnanega programiranja - statične metode so prepovedane, posamezne module programa definirajte kot samostojne razrede. (do -5)
- Pazite na pravilno uporabo pogodb! (do -5)
- Pazite na pravilno uporabo osnovnih elementov predmetno-naravnanega programiranja - statične metode so prepovedane, posamezne module programa definirajte kot samostojne razrede. (do -5)
- Pazite na pravilno uporabo pogodb! (do -5)