2.8.1 Yleistä

Muuttujaa tarvittiin, kun haluttiin tallentaa erilaisia suureita. Esimerkiksi päivän lämpötila voidaan laittaa talteen muuttujaan lampotila. Jos halutaan tallentaa koko viikon lämpötilat, niin voimme vielä ottaa käyttöön seitsemän muuttujaa: lampo_ma, lampo_ti, ... ja lampo_su. Mutta jos ohjelmassa tarvittaisiinkin kuukauden jokaisen päivän lämpötila, niin yksittäisten muuttujien käyttäminen tulisi turhan hankalaksi, sillä muuttujia olisi oltava ainakin 31 kappaletta (lampo_1, lampo_2, ..., lampo_31).

Mikäli käsitellään suurta joukkoa keskenään fyysisesti samankaltaisia muuttujia, voidaan muuttujat koota yhdeksi suuremmaksi kokonaisuudeksi muodostamalla niistä taulukko. Taulukko on yhtenäinen kokoelma keskenään samankaltaisia alkioita. Kullakin taulukon alkiolla on kiinteä sijainti taulukossa. Viittaukset koko taulukkoon suoritetaan taulukon nimellä ja viittaukset yksittäisiin taulukon alkioihin kertomalla halutun alkion sijainti taulukon sisällä ns. indeksin avulla.

Päivälämpötiloja varten olisi loogista luoda taulukko nimeltä kuukausi, jossa olisi 31 lokerikkoa. Kussakin lokerikossa olisi yhden päivän lämpötila:

Kuukausi

10

15

21

8

12

10

10

10

17

18

21

10

...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Nyt ensimmäisessä lokerikossa olisi kuukauden ensimmäisen päivän lämpötila, toisessa toisen ja niin edelleen.

Paitsi edellä esitetyn kaltaisia yksiulotteisia taulukoita, voidaan luoda myös moniulotteisia taulukoita. Kaksiulotteisen taulukon tapauksessa mielletään taulukon yksittäinen rivi (tai sarake) yksittäiseksi alkioksi (joka sinällään sattuu olemaan taulukko). Esimerkiksi lämpötiloissa kuukauden sijasta tarkkailtavana voi olla vuosi. Tässä tapauksessa voidaan luoda taulukko nimeltä vuosi, jossa on 12 lokerikkoa. Näistä jokainen sisältää edellä kuvatun kuukausi-taulukon:

Vuosi

 

 

 

 

 

 

 

 

 

 

 

 

 

10

15

21

8

12

10

10

10

17

18

21

10

...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Koska kaikki lokerikot ovat keskenään fyysisesti samankaltaisia, voidaan ne koota yhdeksi kokonaisuudeksi.

Taulukon voi esittää myös kaksiulotteisena, jolloin esimerkissä kullekin kuukaudella on oma rivinsä:

Vuosi

10

15

21

8

12

10

10

10

17

18

21

10

...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

...

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Kolmiulotteisessa tapauksessa taulukon voidaan katsoa koostuvan alkioista, jotka sattuvat olemaan kaksiulotteisia taulukoita.

Minkälaisia taulukoita tarvittaisiin vuosikymmenen tai vuosisadan lämpötilojen tallentamiseen? Piirrä paperille hahmotelmat.

Oletetaan, että tarvittaisiin taulukko yläasteen (luokat 7-10) oppilaiden matematiikan tenttien tuloksien tallentamiseen (siis pelkkien numeroiden - ei nimien). Minkälaisia vaihtoehtoja keksit, jos luokka-asteita on kolme (esimerkiksi 7a, 7b ja 7c) ja jokaisella asteella on korkeintaan 35 oppilasta?

Miten edellisen tehtävän taulukko laajenee, jos mukaan otettaisiin kaikki saman kaupungin yläasteet?

Ulottuvuuksien kasvaessa kasvaa myös epävarmuuden tunne, joten ulottuvuuksissa on hyvä pysyä kohtuuden rajoissa.

Kun merkkitiedon alkioita kootaan taulukoksi, sanotaan tätä taulukkoa merkkijonoksi, jota voidaan käyttää sanojen ja lauseiden tallentamiseen. Merkkijonot käsitellään myöhemmin.