...
Oppgaven handler om en TicTacToe-klasse, som håndterer nødvendig logikk for å kunne spille 'Tre på rad'. I Del 1 skal du implementere logikken som testes av referert JExercise-kode. I Del 2 av oppgaven skal klassen utvides med støtte for å la spillerne (etter tur) taste inn ønsket trekk helt til en spiller har vunnet eller spillet avsluttes uavgjort.
...
- gridString - en streng som holder styr på hvilke brikker som er lagt på de ulike posisjonene på brettet, enten "X", "O" eller " " (sistnevnte sistnevnt tomme streng er for tomt felt). Denne strengen vil ha lengde 9 der de tre første tegnene svarer til den første raden, de tre neste til den andre raden og de tre siste til den tredje raden i brettet. Mao vil strengen være lik " " (tom streng med lengde 9) rett etter spillet har startet, være lik " X " like etter at spiller "X" har plassert en brikke oppe i høyre hjørne (x=2, y=0) og deretter lik " X O " like etter at spiller "O" har plassert en brikke i midten nede (feltet må forøvrig være public slik at JExercise-testen får tilgang til dette).
TicTacToe-klassen har to metodermå ha metodene, deposit og addInterestgetStringIndexForCoordinates, makePlacement, hasWon og changePlayer, med følgende oppførsel:
- deposit(doubleint getStringIndexForCoordinates(int x, int y) - øker konto-beløpet med den angitte argument-verdien (som må være et positivt desimaltall)hjelpemetode som returnerer
- boolean makePlacement(String player, int x, int yaddInterest() - beregner renta og legger det til konto-beløpet
- String hasWon() -
- String changePlayer(String player) -
Tilstanden i Rectangle-objekter er ikke spesifisert eksplisitt, men må velges slik at metodene nedenfor kan implementerers. Merk at alle metodene jobber med heltallsstørrelser.
...