(H) Taulukko-operaatioita

Tavoite: Opin käsittelemään C++:n taulukkotietotyyppiä osoittimien avulla ja osoitinaritmetiikan alkeita.

Ohjeita: Hae ohjelmakoodipohja: templates/09/arrays/ -> student/09/arrays/.

Toteuta tiedostossa array_operations.hh määritellyt funktiot tiedostoon array_operations.cpp. Koska tehtävässä on tarkoitus harjoitella osoittimien käyttämistä, ei tiedostoon array_operations.cpp saa kirjoittaa ollenkaan operaattoria [], vaan kaikki taulukkojen käsitteleminen pitää tehdä osoittimien kautta.

Valmiissa testipääohjelmassa main.cpp on taas toteutettuna auttava testaus toteutettaville funktioille sekä esimerkin vuoksi joitakin operaatioita taulukoiden käsittelemiseen. Automaattinen arviointi ei testaa pääohjelman toimintaa, eli voit vapaasti kirjoittaa itse kattavampia testejä.

Muokkaamatonta testipääohjelmaa käyttettäessä ohjelman tulee toimia seuraavasti:

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 9
9
9
0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 3 6 9
9 6 3 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

Vinkkejä tehtävän tekemiseen:

  • Tutki ensin pääohjelmassa olevia taulukko-operaatioita. Erityisesti taulukon sisällön tulostaminen osoittimia käyttäen antaa vihjettä siitä, millä tavalla taulukoita on tarkoitus käsitellä, kun toteutat funktioita. (STL:n sort-algoritmin käyttöesimerkki on kirjoitettu tiedostoon vain, koska sitä ei ole esitetty materiaaleissa muualla.)

A+ esittää tässä kohdassa tehtävän palautuslomakkeen.