Interaktiivinen tarinankerronta

Samankaltaiset tiedostot
Interaktiivinen tarinankerronta

Ohjelmointi 2 / 2010 Välikoe / 26.3

Kompositio. Mikä komposition on? Kompositio vs. yhteyssuhde Kompositio Javalla Konstruktorit set-ja get-metodit tostring-metodi Pääohjelma

Mikä yhteyssuhde on?

Ohjelmoinnin jatkokurssi, kurssikoe

Tehtävä 1. Tehtävä 2. Arvosteluperusteet Koherentti selitys Koherentti esimerkki

Olio-ohjelmointi Javalla

Ohjelmistotekniikan menetelmät, koe

Java kahdessa tunnissa. Jyry Suvilehto

Metodien tekeminen Javalla

Ohjelmoinnin perusteet, kurssikoe

Testivetoinen ohjelmistokehitys

4. Luokan testaus ja käyttö olion kautta 4.1

Sisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä ja ulkopuolelta. Attribuuttien arvojen käsittely aksessoreilla. 4.2

4. Olio-ohjelmoinista lyhyesti 4.1

Javan perusteita. Janne Käki

1. Kun käyttäjä antaa nollan, niin ei tulosteta enää tuloa 2. Hyväksy käyttäjältä luku vain joltain tietyltä väliltä (esim tai )

Ohjelmointi 2 / 2008 Välikoe / Pöytätestaa seuraava ohjelma.

UML ja luokkien väliset suhteet

15. Ohjelmoinnin tekniikkaa 15.1

Listarakenne (ArrayList-luokka)

Ohjelmointi 2, välikoe

Luokat ja oliot. Ville Sundberg

Harjoitus Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti:

Periytyminen (inheritance)

Tietorakenteet. JAVA-OHJELMOINTI Osa 5: Tietorakenteita. Sisällys. Merkkijonot (String) Luokka String. Metodeja (public)

Ohjelmassa henkilön etunimi ja sukunimi luetaan kahteen muuttujaan seuraavasti:

Lista luokan sisällä

2. Olio-ohjelmoinista lyhyesti 2.1

Javan GUI Scratchaajalle

JUnit ja EasyMock (TilaustenKäsittely)

Sisällys. Metodien kuormittaminen. Luokkametodit ja -attribuutit. Rakentajat. Metodien ja muun luokan sisällön järjestäminen. 6.2

Ohjelmoinnin perusteet, syksy 2006

Sisällys. 6. Metodit. Oliot viestivät metodeja kutsuen. Oliot viestivät metodeja kutsuen

Yksikkötestaus. Kattava testaus. Moduulitestaus. Ohjelman testaus. yksikkotestaus/ Seija Lahtinen

Tietorakenteet, laskuharjoitus 7,

15. Ohjelmoinnin tekniikkaa 15.1

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op Taulukot & Periytyminen

20. Javan omat luokat 20.1

Sisällys. 20. Javan omat luokat. Java API. Pakkaukset. java\lang

A) on käytännöllinen ohjelmointitekniikka. = laajennetaan aikaisemmin tehtyjä luokkia (uudelleenkäytettävyys)

Luokka Murtoluku uudelleen. Kirjoitetaan luokka Murtoluku uudelleen niin, että murtolukujen sieventäminen on mahdollista.

Ohjelmointityö 65 Tekstinmuotoilu ohjelma. Dokumentaatio. Aki Heikkinen (155394)

Sisällys. Yleistä attribuuteista. Näkyvyys luokan sisällä. Tiedonkätkentä. Aksessorit. 4.2

Luokan sisällä on lista

TIETORAKENTEET JA ALGORITMIT

812341A Olio-ohjelmointi Peruskäsitteet jatkoa

Aalto Yliopisto T Informaatioverkostot: Studio 1. Oliot ja luokat Javaohjelmoinnissa

Jypelin käyttöohjeet» Ruutukentän luominen

OutputStream ja InputStream. Tietovirrat ja niiden suunnat. Tietovirtojen käyttö. FileInputStream esimerkki. DataOutputStream ja DataInputStream

YHTEYSSUHDE (assosiation)

Olion elinikä. Olion luominen. Olion tuhoutuminen. Olion tuhoutuminen. Kissa rontti = null; rontti = new Kissa();

Luokkakirjastot. esiintymämetodien käytöstä:

Oliot viestivät metodeja kutsuen

Ohjelmoinnin perusteet Y Python

Rajapinta (interface)

Sisältö. Johdanto. Tiedostojen lukeminen. Tiedostojen kirjoittaminen. 6.2

Sisällys. 15. Lohkot. Lohkot. Lohkot

Linkitetystä listasta perittyä omaa listaa käytetään muun muassa viestiin liittyvien vastausten säilömiseen.

Ohjelmoinnin perusteet Y Python

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo

Luokan muodostimet (Constructors)

Sisällys. 1. Omat operaatiot. Yleistä operaatioista. Yleistä operaatioista

Ohjelmointitaito (ict1td002, 12 op) Kevät Java-ohjelmoinnin alkeita. Tietokoneohjelma. Raine Kauppinen

ITKP102 Ohjelmointi 1 (6 op)

13. Hyvä ohjelmointitapa (osa 1) 13.1

1. Omat operaatiot 1.1

Tässä tehtävässä käsittelet metodeja, listoja sekä alkulukuja (englanniksi prime ).

Lohkot. if (ehto1) { if (ehto2) { lause 1;... lause n; } } else { lause 1;... lause m; } 15.3

JAVA-PERUSTEET. JAVA-OHJELMOINTI 3op A JAVAN PERUSTEET LYHYT KERTAUS JAVAN OMINAISUUKSISTA JAVAN OMINAISUUKSIA. Java vs. C++?

Harjoitus 3: Flash-komponenttiarkkitehtuuri ( )

Metodit Arvotyyppi. Metodit Arvotyyppi. Metodit Parametrit. Metodit Parametrit. Metodit Kuormittaminen. Metodit Kuormittaminen. Javan perusteet

Web Services tietokantaohjelmoinnin perusteet

19. Olio-ohjelmointia Javalla 19.1

Sisällys. JAVA-OHJELMOINTI Osa 6: Periytyminen ja näkyvyys. Luokkahierarkia. Periytyminen (inheritance)

Rinnakkaisohjelmointi, Syksy 2006

Ohjelmoinnin perusteet Y Python

Olio-ohjelmointi: Luokkien toteuttaminen. Jukka Juslin

Ohjelmointikielet ja -paradigmat 5op. Markus Norrena

Ohjelmoinnin perusteet Y Python

ITKP102 Ohjelmointi 1 (6 op)

Sisältö. Johdanto. Tiedostojen lukeminen. Tiedostojen kirjoittaminen. 6.2

C# Windows ohjelmointi perusopas

Taulukot. Taulukon määrittely ja käyttö. Taulukko metodin parametrina. Taulukon sisällön kopiointi toiseen taulukkoon. Taulukon lajittelu

14. Hyvä ohjelmointitapa 14.1

public static void main (String [] args)

Java-kielen perusteet

Ohjelmoinnin perusteet Y Python

815338A Ohjelmointikielten periaatteet Harjoitus 5 Vastaukset

17. Javan omat luokat 17.1

Ohjelmoinnin perusteet Y Python

NANO90 OHJELMOINTI- JA KÄYTTÖOHJEET

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op. Tietorakenneluokkia 2: HashMap, TreeMap

Maahan on pudonnut omenoita, ja Uolevi aikoo poimia niitä. Tiedät jokaisesta omenasta, kuinka painava se on.

JavaScript alkeet Esimerkkikoodeja moniste 2 ( Metropolia)

1 Tehtävän kuvaus ja analysointi

Toisessa viikkoharjoituksessa on tavoitteena tutustua JUnit:lla testaukseen Eclipse-ympäristössä.

ITKP102 Ohjelmointi 1 (6 op)

7. Oliot ja viitteet 7.1

Sisällys. 19. Olio-ohjelmointia Javalla. Yleistä. Olioiden esittely ja alustus

Transkriptio:

Interaktiivinen tarinankerronta Tehtävä 1: Tarinan alku pääohjelmaan Main. java ei tehdä muutoksia tulostusrivit tiedostoon Kayttoliittyma.java tulostus lyhyesti sout + tab komennolla -mallikoodista on kaikki tyhjät rivit poistettu tilan säästämiseksi // Luo ohjelmakoodi, joka tulostaa tarinan alun: // Olipa kerran valoisa ja hiljainen ilta. // Olit juuri saapunut tangoharjoituksista kotiisi. Jokin oli kuitenkin vialla. // lisää koodi tähän System.out.println("Olit juuri saapunut tangoharjoituksista kotiisi. Jokin oli kuitenkin vialla."); Tehtävä 2: Päätöksen tekeminen pääohjelmaan Main.java ei tehdä muutoksia kaynnista() metodiin määritellään esim. muuttuja vastaus valinta luetaan lukija.nextline() metodilla luettu arvo sijoitetaan vastaus muuttujaan

-mallikoodista on kaikki tyhjät rivit poistettu tilan säästämiseksi String vastaus; System.out.println("Olit juuri saapunut tangoharjoituksista kotiisi. Jokin oli kuitenkin vialla. "); System.out.println("Eteisessä näkyvät ovet on maalattu uudestaan. Valitse ovi:"); System.out.println("P: Punainen ovi"); System.out.println("S: Sininen ovi"); System.out.println("Päädyit huoneeseen, jossa on uusia ovia. Takanasi ole. Valitse ovi:"); System.out.println("O: Oranssi ovi"); System.out.println("V: Valkoinen ovi"); System.out.println("Mistä näitä ovia riittää?!! Takanasi oleva ovi on taas lukossa. Valitse ovi:"); System.out.println("L: Lasiovi"); System.out.println("P: Purppurainen ovi"); System.out.println("Päädyit keittiöön!"); Tehtävä 3: Vastauksesta riippuva paikka pääohjelmaan Main.java ei tehdä muutoksia valinta tehdään if(ehto){ else { -rakenteella

merkkijonon vertailu sydeemillä muuttu.equals( verrailusana ) periaatteella, ei == -merkillä System.out.println("Olit juuri saapunut tangoharjoituksista kotiisi. Jokin oli kuitenkin vialla. "); System.out.println("Eteisessä näkyvät ovet on maalattu uudestaan. Valitse ovi:"); System.out.println("P: Punainen ovi"); System.out.println("S: Sininen ovi"); String valinta = lukija.nextline(); System.out.println("Valitsit: " + valinta); if(valinta.equals("p")){ System.out.println("Päädyit huoneeseen, jossa on uusia ovia. Takanasi ole... Valitse ovi:"); System.out.println("O: Oranssi ovi"); System.out.println("V: Valkoinen ovi"); else{ System.out.println("Mistä näitä ovia riittää?!! Takanasi oleva ovi on taas lukossa. Valitse ovi:"); System.out.println("L: Lasiovi"); System.out.println("P: Purppurainen ovi"); valinta = lukija.nextline(); System.out.println("Valitsit: " + valinta); System.out.println("Päädyit keittiöön!"); Tehtävä 4: Huone luodaan uusi luokka Huone.java (hiiren oikealla painikkeella default packages in päällä, valitaan New->java class) anna vain Class Name, ei muuta kun Huone.java on tehty, voidaan sitä käyttää Kauttoliittyma luokassa alla Huone.java ja Kayttoliittyma.java koodit

Tiedoston Huone.java tarkastettu koodi: public class Huone { private String nimi; private String teksti; // tämä on kontruktori, joka luo uuden huoneen public Huone(String uusinimi, String uusiteksti){ this.nimi=uusinimi; this.teksti=uusiteksti; // tämä metodi palauttaa huoneen tekstin public String getteksti(){ return this.teksti; public String tostring(){ return this.nimi; // kun olet luonut luokan Huone, voit testata sen toimintaa täällä // luokan luomisen jälkeen seuraavan koodin: Huone eteinen = new Huone("Eteinen", "Eteisessä näkyvät ovet on maalattu uudestaan."); System.out.println(eteinen); System.out.println(eteinen.getTeksti()); // tulisi tulostaa viesti // "Eteinen" ja // "Eteisessä näkyvät ovet on maalattu uudestaan."