Denna övning är det tänkt att du skall träna på att arbeta med
matriser (inlämningsuppgift 4), och lite på utvidgning av
klasser. Det är inte omöjligt att det tar mer än de schemalagda två
timmarna att lösa de rekommenderade uppgifterna, men enligt
studiehandboken är det meningen att man skall lägga ner i genomsnitt
ca 3-4 timmars självstudietid för varje övningspass, utöver
övningstiden. Om det finns någon ledig plats i en övningssal under
något annat övningspas än ditt eget så får du gärna gå dit också (de
studenter vars grupp har schemalagd övningstid får dock förtur för
hjälp) -- du kan se vilken grupp du tillhör genom att i
kommandofönstret skriva ptgroup
.
emacs
Den som använder emacs
som texteditor kan använda ett
antal snabb-kommandon som underlättar en del av arbetet under
övningarna:
Alt-4
: frågar efter ett programnamn, och skapar
ett huvudprogram med det givna namnet.
Alt-2
: ger en import-sats -- du får själv fylla
i sista delen.
Alt-p
: ger System.out.print
Alt-k
: ger Keyboard.next
Arbeta med inlämningsuppgift 4.
Kopiera din lösning av inlämningsuppgift 2 till en ny fil
(jo, det är helt OK denna gång!), och skapa en ny
sköldpaddsklass RaceTurtle
som utvidgar
klassen Turtle
(du kan välja om du vill använda
kurspaketets sköldpaddor eller din egen sköldpaddsklass).
Klassen RaceTurtle
skall ha följande tillägg:
Varje RaceTurtle
har ett startnummer (som kan anges när
sköldpaddorna skapas).
Varje RaceTurtle
har en egen tärning.
Sköldpaddorna har en raceStep
-metod, som
kastar tärningen och går framåt så många steg som tärningen
visar.
Sköldpaddorna har en hasReachedGoal
-metod
som avgör om de nått fram till mållinjen eller
inte.
RaceTurtle
-objekt, och se hur mycket
enklare/snyggare programmet blir.Om du blir klar med inlämningsuppgift 4 och uppgiften ovan, försök lösa något av de andra alternativen på inlämningsuppgift 4.