Esittely latautuu. Ole hyvä ja odota

Esittely latautuu. Ole hyvä ja odota

Harjoitustyö 1. Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala2 Harjoitustyö Tehtävä: ohjelmoi lötköjen kansoittamaa alkulimaa simuloiva.

Samankaltaiset esitykset


Esitys aiheesta: "Harjoitustyö 1. Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala2 Harjoitustyö Tehtävä: ohjelmoi lötköjen kansoittamaa alkulimaa simuloiva."— Esityksen transkriptio:

1 Harjoitustyö 1

2 Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala2 Harjoitustyö Tehtävä: ohjelmoi lötköjen kansoittamaa alkulimaa simuloiva olioperustainen ohjelma Java-kielellä. − Lötköt säilötään linkitetyille listalle ja tekstitiedostoon. Työ tehdään itsenäisesti yhden hengen ryhmissä. − Ideoita voi vaihtaa – koodia ei. Henkilökohtaista ohjausta tarjolla mikroluokissa. Sähköpostilla voi edelleen kysyä. Palautus WETO-järjestelmään noin kuukauden kuluttua. − Testaus automaattisesti julkisilla ja salaisilla testeillä. Tarkka tehtävänanto julki tällä viikolla. Aloita ajoissa ja tee työtä säännöllisesti. − Vuonna 2014 harjoitustyön käytettiin aikaa keskimäärin 40 tuntia.

3 Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala3 Luokista Alkulimassa liikkuu klimppejä ja plänttejä, jotka molemmat ovat lötköjä. − Koko ( int, > 0) ja perimä ( StringBuilder ) on kaikille lötköille yhteisiä tietoja. − Perimä koostuu kahdeksasta isosta kirjaimesta A–H. − Klimpeistä tunnetaan väri ( char ), joka on joko punainen (′P′) tai sininen (′S′). − Plänteistä tiedetään ovatko ne soikeita ( true ) vai ei ( false ). Kirjoita luokkahierarkia, jossa on abstrakti juuriluokka Lotko sekä konkreettiset aliluokat Klimppi ja Plantti. − Korvaa Object -luokan toString - ja equals -metodit. − Klimpit ovat samoja, jos niiden väri on sama. − Pläntit ovat samoja, jos molemmat joko ovat tai eivät ole soikioita. − Selvitä olion tyyppi metaolion avulla Lotko -luokassa. (Älä tee tyypille attribuuttia.) − Toteuta Comparable -rajapinnan compareTo -metodi hierarkian juuriluokassa siten, että metodissa vertaillaan lötköjen kokoja. Peri LinkitettyLista -luokasta OmaLista -luokka. − Sijoita omaan listaa uusia listaoperaatioita. Esimerkiksi suurimman alkion haku.

4 Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala4 Luokista Lötkö voi liikkua alkulimassa paikasta toiseen. − Paikat ovat suorakulmaisen koordinaatiston I-neljänneksen koordinaatteja ( x, y ), missä x ja y ovat aina kokonaislukuja ja x ja y voivat olla nolla. − Käyttäjä määrää koordinaattien suurimmat arvot x max ja y max, jolloin x  [0, x max ] ja y  [0, y max ]. − Liikkuminen voi tapahtua suoraan tiettyyn paikkaan tai satunnaisesti. Satunnaisessa liikkumisessa uuden paikan antaa apuluokka. Lötköt voivat lisääntyä, jos paikassa on sopivaa seuraa. − Klimpit lisääntyvät suvullisesti. Paikassa olevista klimpeistä valitaan ensimmäinen equals -mielessä samojen klimppien pari, joka tuottaa yhden jälkeläisen. Jälkeläisen paino on vanhempien painojen keskiarvon kokonaisosa, perimä koostuu ensimmäisen vanhemman 1.–4. ja toisen vanhemman 5.–8. perimämerkeistä ja väri eri kuin vanhempien väri. − Pläntit lisääntyvät suvuttomasti. Jos paikassa ei ole equals -mielessä samaa plänttiä, valitaan lisääntymään paikan suurin pläntti. Pläntti syväkopioi itsensä, puolittaa jälkeläisen painon ja kääntää perimän merkit.

5 Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala5 Simulaattorin komennot lataa : luo uuden listan ja lataa lötköt listalle tiedostosta. Tiedostosta luetaan myös siemenluku ja x - ja y -koordinaattien maksimiarvot. Lötköille arvotaan paikat siemenluvulla alustetun apuluokan avulla. listaa : tulostaa lötkölistan sisällön näytölle listan alusta loppuun. listaa i : tulostaa listan indeksiin liittyvän lötkön ja sitä equals -mielessä vastaavat lötköt listan järjestyksessä näytölle. listaa x y : tulostaa paikan ( x, y ) lötköt näytölle listan järjestyksessä. liiku : listan kaikki lötköt yrittävät liikkua satunnaisesti yhden paikan verran. Uudet paikat tuotetaan apuluokan avulla. liiku i x y : siirtää listan indeksiin liittyvän lötkön paikkaan ( x, y ). luo : käynnistää lötköjen lisääntymisen. tallenna : tallentaa listan lötköt tiedostoon. Tiedostoon tallennetaan myös siemenluku ja x - ja y -koordinaattien maksimiarvot. lopeta : lopettaa ohjelman.

6 Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala6 Lötköjen tiedosto Tiedot tallennetaan tekstitiedostoon lotkot. txt. Ensimmäisellä rivillä siemenluku ja x - ja y -koordinaattien maksimiarvot. Muilla riveillä yhden lötkön tiedot per yksi rivi. − Rivin alussa lötkön luokan nimi ( Klimppi tai Plantti ). − Seuraavaksi koko ja perimä sekä luokan oma tieto. Kaikki tiedot erotetaan toisistaan putkimerkillä ja rivit päättyvät putkimerkkiin. Kullekin tiedolle on varattu tilaa kahdeksan merkkiä.

7 7 Lötköjen tiedosto 42 |5 |3 | Klimppi |10 |AAAAAAAA|P | Klimppi |20 |BBBBBBBB|P | Plantti |100 |ABCDEFGH|false | 1. rivi: siemenluku (42), suurin sallittu x -koordinaatti (5) ja suurin sallittu y -koordinaatti (3). 2. rivi: 10 yksikön kokoinen klimppi, jonka perimä on ″AAAAAAAA″ ja väri on punainen ′P′. 3. rivi: 20 yksikön kokoinen klimppi, jonka perimä on ″BBBBBBBB″ ja väri on punainen ′P′. 4. rivi: pläntti, jonka koko on 100, perimä on ″ABCDEFGH″ ja joka ei ole soikiomainen. Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala7


Lataa ppt "Harjoitustyö 1. Olio-ohjelmoinnin perusteet | Kevät 2015 | Jorma Laurikkala2 Harjoitustyö Tehtävä: ohjelmoi lötköjen kansoittamaa alkulimaa simuloiva."

Samankaltaiset esitykset


Iklan oleh Google