TAULUKKO

17
TAULUKKO YKSIULOTTEINEN TAULUKKO

description

TAULUKKO. YKSIULOTTEINEN TAULUKKO. TAULUKKO. Taulukon tarkoitus Ohjelmassa tarvitaan paljon samantyyppisiä samaan kohdealueeseen kuuluvia muuttujia Näitä muuttujia ei määritellä jokaista erikseen vaan muodostetaan niistä taulukko - PowerPoint PPT Presentation

Transcript of TAULUKKO

Page 1: TAULUKKO

TAULUKKO

YKSIULOTTEINEN TAULUKKO

Page 2: TAULUKKO

TAULUKKO

Taulukon tarkoitus

• Ohjelmassa tarvitaan paljon samantyyppisiä samaan kohdealueeseen kuuluvia muuttujia

• Näitä muuttujia ei määritellä jokaista erikseen vaan muodostetaan niistä taulukko

• Taulukossa voidaan kuitenkin käsitellä jokaista muuttujaa omana itsenään

Page 3: TAULUKKO

TAULUKKO

Mitä taulukosta tulee tietää

• Kuinka monta muuttujaa taulukkoon on tarkoitus tallettaa

• Ed. tiedosta saadaan tulevan taulukon koko• Jokaista muuttujaa kutsutaan taulukossa

taulukon alkioksi• Selvitetään muuttujien yhteinen tietotyyppi • Annetaan taulukolle kuvaava nimi

Page 4: TAULUKKO

TAULUKKO

UML - esimerkkejä taulukoiden määrittelystä :Huom ! Alkuarvoa ei anneta.

• oppilaat [35] AN 15• kaupungit [250] AN 30• palkat [20] N 9,2

Java:• String [ ] oppilaat = new String [35] ;• String [ ] kaupungit = new String [250] ;• double [ ] palkat = new double [20] ;

Page 5: TAULUKKO

TAULUKKO

Esimerkkejä taulukoiden määrittelystä, kun alkuarvot annetaan. Samalla määräytyy taulukon koko:

UML:• oppilaat [3] AN 15 = (”a06123”, ”a06543”, ”a062323”)• kaupungit [250] AN 30 = (”Helsinki”, ”Tampere”, ….)• palkat [20] N 9,2 = (1230.50, 2200.35, 14780.00, …..)

Java:• String [ ] oppilaat = {”a06123”, ”a06543”, ”a062323”} ;• String [ ] kaupungit = {”Helsinki”, ”Tampere”, ….} ;• double [ ] palkat = {1230.50, 2200.35, 14780.00, …..} ;

Page 6: TAULUKKO

TAULUKKO

Taulukon indeksi:

• Se on aina kokonaisluku, joka lähtee arvosta yksi

• Ensimmäisen alkion numero eli osoite eli indeksi on aina yksi (1)

• Viimeisen alkion indeksi on aina sama kuin taulukon alkioiden lukumäärä

Page 7: TAULUKKO

TAULUKKO

Malli:• Taulukossa on viisi kokonaislukumuuttujaa• Taulukon kuvaus:

luvut (5) N 3 = (20, 50, 70, 100, 140)

20 50 70 100 140 sisältö

1 2 3 4 5 indeksi

Page 8: TAULUKKO

TAULUKKO

Taulukon indeksointi

• Alkion järjestysluku voi olla literaali, kaava tai muuttujanimi

• Indeksin on oltava aina kokonaislukutyyppiä UML: 1 – n Java: 0 – n

Page 9: TAULUKKO

TAULUKKO

Taulukon alkion nimi

• Jokainen alkio on siis yksi muuttuja• Muuttujan eli alkion nimi muodostuu

seuraavasti: Nimessä on aina kaksi osaa Nimeen kuuluu taulukon nimi ja sen perässä

suluissa järjestysluku, joka kertoo kuinka mones alkio on taulukon alusta lukien

Page 10: TAULUKKO

TAULUKKO

Taulukon alkion nimi• UML - esimerkki luvut – taulukosta:

luvut (5) N 3 = (20, 50, 70, 100, 140)

• Ensimmäisen alkion nimi: luvut (1)

• Kolmannen alkion nimi: luvut (3)

• Viimeisen alkion nimi: luvut (5)

Page 11: TAULUKKO

TAULUKKO

Taulukon alkion nimi Alkion arvon tulostus:

• UML

Muunnos !

• Java System.out.println (”Toinen on ” + luvut[1]) ;

• Javassa indeksi lähtee aina nollasta (0)

• Indeksin muunnos on aina tehtävä koodausvaiheessa

• Esimerkissä indeksi on numeerinen literaali

TULOSTA luvut (2)

Page 12: TAULUKKO

TAULUKKO

Taulukon alkion nimi Esimerkkinä alkion arvon sijoitus toisen alkion

sisällöksi:• UML

• Java Muunnos ! luvut [0] = luvut [3] ;

luvut (1) = luvut (4)

Page 13: TAULUKKO

TAULUKKO

Taulukon indeksointi• Esimerkki luvut – taulukosta, viimeiseen

alkioon sijoitetaan arvo 23 luvut (5) N 3 = (20, 50, 70, 100, 140) Indeksi on muuttuja ind ja sen määritys on: ind N1

• UMLind = 5

luvut (ind) = 23

Page 14: TAULUKKO

TAULUKKO

Taulukon indeksointi• Esimerkki luvut – taulukosta, viimeiseen

alkioon sijoitetaan arvo 23

• Javalla: // Määritysosa

• int ind ;

• int luvut [ ] = {20, 50, 70, 100, 140} ;

// Suoritusosa• ind = 4 ;• luvut [ind] = 23 ;

Page 15: TAULUKKO

TAULUKKO

Taulukon indeksointi• Indeksi on kaava ind + 1

• Esimerkki luvut – taulukosta, kolmanteen alkioon sijoitetaan arvo 77

• Javalla:• int ind ;

• int luvut [ ] = {20, 50, 70, 100, 140} ; ...............

• ind = 1 ;• luvut [ind + 1] = 77 ;

Page 16: TAULUKKO

TAULUKKO

Taulukon indeksointi• Esimerkki tulostaa kaikkien alkioiden sisällön• UML

ind = 1

TULOSTA luvut (ind)

ind = ind + 1

[ind < 6]

epätosi [ind = 6]

Page 17: TAULUKKO

TAULUKKO

Taulukon indeksointi• Esimerkki tulostaa kaikkien alkioiden sisällön• Javalla

Yleisesti käytetään for – silmukkaa

for (ind = 0; ind < 5; ind ++)System.out.println (luvut [ind] ) ;