S pomočjo interaktivne simulacije razišči sklad (ang. stack), ki je implementiran s tabelo (ang. array). V sklad lahko elemente dodajaš ali pa jih iz sklada odstranjuješ.
(a) Dopolni modul sklad.py s funkcijo Vrh, ki vrne vrh sklada, a ga ne odvzame s sklada.
(b) Dopolni modul sklad.py s funkcijo Zamenjaj, ki zamenja element na vrhu sklada z elementom pod njim. Na primer, sklad <10, 20, 30, 40, 50> se po opisani zamenjavi spremeni v sklad <10, 20, 30, 50, 40>.
V programiranju sta vrsta in sklad uporabna za reševanje zelo raznolikih problemov. Oglejmo si primer:
Napiši funkcijo Oklepaji(niz), ki sprejme niz, sestavljen iz okroglih, oglatih in zavitih oklepajev, in vrne True, če so vsi oklepaji zaključeni in pravilno gnezdeni, sicer pa vrne False. Na primer, za nize '(())', '[][]' in '[(){[]}]' naj funkcija vrne True, za nize '(()', '[]][', '{}}' in '[(){[}]]' pa False.
Nalogo, ki se morda zdi zahtevna, brez večjih težav rešimo s skladom. Ustvarimo prazen sklad, nato pa se sprehodimo po znakih v nizu. Ko naletimo na predklepaj, ga dodamo na sklad. Ko naletimo na zaklepaj, odstranimo vrhnji predklepaj s sklada. Če se ta predklepaj ujema s pravkar prebranim zaklepajem, nadaljujemo z naslednjim znakom niza, sicer pa postopek takoj končamo in vrnemo False. Če pridemo do konca niza, preverimo, ali je sklad prazen; če je, vrnemo True, sicer pa vrnemo False.