(H) Vektorin alkioiden summa¶
Tavoite:
Harjoittelen edelleen rekursion toteuttamista ja myös STL:n
vector
-rakennetta.
Ohjeita:
Hae ohjelmakoodipohja: templates/06/sum/
-> student/06/sum/
.
Pohjassa on automaattitestausta varten määrittely RECURSIVE_FUNC
.
Siitä ei tarvitse välittää, eikä sille saa tehdä mitään.
Toteuta ohjelmakoodipohjaan funktio sum_recursive
,
joka suorittaa rekursiivisen algoritmin ja palautaa
vector
:n sisältämien kokonaislukujen summan.
Funktiolle annetaan on vain yksi parametri: vektori, jonka
sisällölle summaa aletaan laskea.
Koska tarkoituksena on kirjoittaa rekursiivinen funktio, ohjelmassa
ei sallita silmukkarakenteita (for
tai while
).
Esimerkki ohjelman toiminnasta:
Enter integers separated by spaces: 1 2 3 4 5
Sum: 15
Vinkkejä tehtävän tekemiseen:
- Samoin kuin edellä, mietit ensin, mikä on triviaalitapaus ja miten ongelma jaetaan pienemmäksi samanmuotoiseksi osaongelmaksi (tai vaihtoehtoisesti voit miettiä näitä päinvastaisessa järjestyksessä).
A+ esittää tässä kohdassa tehtävän palautuslomakkeen.