// Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.

Samankaltaiset tiedostot
// Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.

7. Näytölle tulostaminen 7.1

Lausekielinen ohjelmointi II Ensimmäinen harjoitustyö

Lausekielinen ohjelmointi II Ensimmäinen harjoitustyö

8. Näppäimistöltä lukeminen 8.1

Harjoitus 2 (viikko 45)

System.out.printf("%d / %d = %.2f%n", ekaluku, tokaluku, osamaara);

Toinen harjoitustyö. ASCII-grafiikkaa 2017

System.out.printf("%d / %d = %.2f%n", ekaluku, tokaluku, osamaara);

Sisällys. 12. Näppäimistöltä lukeminen. Yleistä. Yleistä

Harjoitus 5 (viikko 41)

Java-kielen perusteita

Harjoitus 5 (viikko 41)

Harjoitus 4 (viikko 47)

Metodien tekeminen Javalla

Harjoitus 5. Esimerkki ohjelman toiminnasta: Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5

Harjoitus 3 (viikko 39)

Java-kielen perusteet

14. Hyvä ohjelmointitapa 14.1

12. Näppäimistöltä lukeminen 12.1

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

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

Harjoitus 1 (viikko 44)

8. Näppäimistöltä lukeminen 8.1

Harjoitus 5 (viikko 48)

Javan perusteet. Ohjelman tehtävät: tietojen syöttö, lukeminen prosessointi, halutun informaation tulostaminen tulostus tiedon varastointi

Harjoitus 6 (viikko 42)

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

Harjoitus 6 (viikko 42)

Harjoitus 6. Käytä String-luokasta vain charat- ja length-operaatioita.

13. Hyvä ohjelmointitapa (osa 1) 13.1

Ohjelmoinnin peruskurssi Y1

Toinen harjoitustyö. ASCII-grafiikkaa

Ohjelmointi 1 / 2009 syksy Tentti / 18.12

12. Javan toistorakenteet 12.1

Mikä yhteyssuhde on?

1. Omat operaatiot 1.1

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

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

Ohjelmoinnin perusteet, 1. välikoe

17. Javan omat luokat 17.1

Java-kielen perusteita

Yleistä. Nyt käsitellään vain taulukko (array), joka on saman tyyppisten muuttujien eli alkioiden (element) kokoelma.

Ohjelmoinnin perusteet Y Python

Ohjelmoinnin perusteet, syksy 2006

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

Luokat ja oliot. Ville Sundberg

Taulukoiden käsittely Javalla

Metodit. Metodien määrittely. Metodin parametrit ja paluuarvo. Metodien suorittaminen eli kutsuminen. Metodien kuormittaminen

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

Ohjelmointi 1 Taulukot ja merkkijonot

20. Javan omat luokat 20.1

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

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

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 )

11. Javan valintarakenteet 11.1

Java-kielen perusteet

ITKP102 Ohjelmointi 1 (6 op)

Ohjelmoinnin perusteet Y Python

11. Javan toistorakenteet 11.1

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

Kirjoita, tallenna, käännä ja suorita alla esitelty ohjelma, joka tervehtii käyttäjäänsä.

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

ITKP102 Ohjelmointi 1 (6 op)

Sisältö. 2. Taulukot. Yleistä. Yleistä

Java-kielen perusteet

12. Javan toistorakenteet 12.1

1 Tehtävän kuvaus ja analysointi

ITKP102 Ohjelmointi 1 (6 op)

2. Lisää Java-ohjelmoinnin alkeita. Muuttuja ja viittausmuuttuja (1/4) Muuttuja ja viittausmuuttuja (2/4)

Sisältö. 22. Taulukot. Yleistä. Yleistä

Ohjelmointi 2 / 2010 Välikoe / 26.3

Opintojakso TT00AA11 Ohjelmoinnin jatko (Java): 3 op. Standardi- ja tietorakenneluokkia

5. HelloWorld-ohjelma 5.1

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

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

Taulukot. Jukka Harju, Jukka Juslin

Ohjelmoinnin perusteet Y Python

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

Informaatioteknologian laitos Olio-ohjelmoinnin perusteet / Salo

Ohjelmoinnin perusteet Y Python

11. Javan valintarakenteet 11.1

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

Sisällys. 14. Poikkeukset. Johdanto. Johdanto

19. Olio-ohjelmointia Javalla 19.1

Metodien tekeminen Javalla

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

58131 Tietorakenteet ja algoritmit (syksy 2015)

5. HelloWorld-ohjelma 5.1

815338A Ohjelmointikielten periaatteet Harjoitus 2 vastaukset

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

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

Harjoitus Olkoon olemassa luokat Lintu ja Pelikaani seuraavasti:

Sisällys. 14. Poikkeukset. Johdanto. Johdanto

ITKP102 Ohjelmointi 1 (6 op), arvosteluraportti

14. Poikkeukset 14.1

Listarakenne (ArrayList-luokka)

Ohjelmoinnin jatkokurssi, kurssikoe

Ohjelmoinnin peruskurssi Y1

ITKP102 Ohjelmointi 1, syksy 2007

Transkriptio:

Lue kukin tehtävänanto huolellisesti ja kokonaisuudessaan ennen kuin aloitat vastaamisen. Kustakin tehtävästä voi saada 0 6 pistettä. Tentin läpipääsyraja on 12 / 24 pistettä. Ratkaisut palautetaan WETO-järjestelmään (https://wetodev.sis.uta.fi/weto5/). 1. Kaupungin X joukkoliikenteen kertalipun maksaa ilman alennusta aamulla ja päivällä (klo 6 17) 2,7, illalla (klo 18 22) 3,5 ja yöllä (klo 23 ja 0 5) 4. Lippu ei maksa mitään, jos matkustaja on 0 2 vuotta vanha. Hinta on euron alempi (1,7, 2,5 ja 3 ), jos matkustajan ikä on 3 15 vuotta tai vähintään 65 vuotta. Kirjoita Javalla Fares-ohjelma, joka kysyy ajan ja matkustajan iän ja tulostaa näytölle lipun hinnan. Tunti on kokonaisluku, joka symboloi kyseisellä luvulla alkavaa tuntia. Esimerkiksi klo 5 tarkoittaa ajanjakoa 5.00 5.59. Matkustajan ikä on kokonaisluku. Syötteitä ei tarvitse tarkistaa voit olettaa, että aika ja ikä ovat aina järkeviä. Tulosta lipun hinta yhden desimaalin tarkkuudella printf-operaatiolla: // Tulostetaan double-tyyppiseen muuttujaan "hinta" tallennettu // kertalipun hinta ja vaihdetaan riviä. System.out.printf("%.1f euros.%n", hinta); Esimerkki ohjelman toiminnasta, kun syötteet ovat 21 ja 46: 21 46 3.5 euros. Esimerkki ohjelman toiminnasta, kun syötteet ovat 10 ja 6: 10 6 1.7 euros. Esimerkki ohjelman toiminnasta, kun syötteet ovat 19 ja 1: 19 1 0.0 euros. Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 1 / 5

2. Ilmatieteen laitos luokittelee tuulen voimakkuuden sen nopeuden 10 minuutin keskiarvona seuraavasti alla olevassa taulukossa annetulla tavalla. Tee Javalla Wind-ohjelma, joka lukee käyttäjältä tuulen nopeuksia kokonaislukuina ja tulostaa vastaavia voimakkuuden englanninkielisiä kuvauksia kunnes käyttäjä antaa negatiivisen arvon (< 0). Tuulen nopeus (m/s) Tuulen voimakkuus Ohjelman tulostama merkkijono 0 tyyntä "Calm." 1 3 heikkoa tuulta "Light breeze." 4 7 kohtalaista tuulta "Strong breeze." 8 13 navakkaa tuulta "Gale." 14 20 kovaa tuulta "Strong gale." 21 32 myrskyä "Storm." > 32 hirmumyrskyä "Violent storm." Hello! I am a wind classifier. 10 Gale. 32 Storm. 0 Calm. -1 Hello! I am a wind classifier. -1 Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 2 / 5

3. Tee Javalla alla olevien esimerkkien mukaisen kuvion tulostava Figure-ohjelma. Piirtomerkki (char) ja riville piirrettävien merkkien lukumäärä (int) luetaan käyttäjältä. Merkkejä on oltava pariton määrä ja vähintään kolme. Ohjelma tulostaa merkkijonon "", jos merkkien lukumäärä havaitaan virheelliseksi. mukaisesti. Rivien alkuun tulostetaan poikkeuksellisesti välilyöntejä. Alla olevissa esimerkeissä tulostetut välilyönnit on korostettu keltaisella. Rivien loppuun ei tulosteta välilyöntejä: jokainen rivi loppuu viimeiseen näkyvään merkkiin. Kaikki tulostettavat rivit viimeinen rivi mukaan lukien päätetään rivinvaihtoon. * 3 *** _*** *** o 5 ooooo _ooooo ooooo ooooo ooooo x 4 Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 3 / 5

4. Tee Javalla Palindrome-ohjelma, joka tutkii onko sille annettu merkkijono palindromi. Palindromit ovat merkkijonoja, jotka ovat samoja sekä eteen- että taaksepäin luettuina. Esimerkiksi merkkijonot eve, tavuttuvat ja saippuakauppias ovat palindromeja. Syötettä luetaan, kunnes käyttäjältä saadaan laillinen syöte eli ainakin kahden merkin mittainen merkkijono. Ohjelma tulostaa päätöksensä näytölle alla annettujen esimerkkien mukaisesti. Taulukoiden käyttö on kiellettyä. API-luokista vain String ja System-luokat ovat sallittuja. String-luokasta saa käyttää charat, length- ja equals-operaatioita ja System-luokan sallitut operaatiot ovat print ja println. eve "eve" is a palindrome. x y xx "xx" is a palindrome. redrum "redrum" is not a palindrome. radar "radar" is a palindrome. Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 4 / 5

Liite: Esimerkkiohjelma public class OhjelmaEsimerkki { public static void main(string[] args) { // In-luokka helpottaa syötteiden lukua käyttäjältä. System.out.println("Anna kokonaisluku:"); int kokoluku = In.readInt(); System.out.println("Anna liukuluku:"); double liukuluku = In.readDouble(); System.out.println("Anna merkki:"); char merkki = In.readChar(); System.out.println("Anna merkkijono:"); String merkkijono = In.readString(); // Merkkijonoon voidaan yhdistää arvoja. System.out.print("Luku " + kokoluku + " on "); if (kokoluku >= 0) System.out.println("positiivinen."); else System.out.println("negatiivinen."); } } Lausekielinen ohjelmointi I Kesä 2018 Avoin yliopisto 5 / 5