Gjennomgående eksempler

For å vise sammenhenger og fremheve forskjeller mellom ulike mekanismer i faget, har vi laget noen eksempler på funksjonalitet implementert på ulike måter - dvs implementert basert på ulike mekanismer undervist i faget.

Gjennomgående eksempel: finne hovedstaden til et land

Dette eksempelet handler om å lage et lite program som ber brukeren oppgi et land, hvor programmet deretter skriver ut navnet på hovedstaden i dette landet.

En første løsning, gjennomgått i uke 1, viser hvordan man kan få til dette basert på beslutninger (se kode). For hver hovedstad som er støttet har programmet en egen kodelinje som printer ut denne hovedstaden. Like før hver slik utskrifts-linje er det en if-setning som gjør at denne linjen kun skrives dersom brukeren har oppgitt det aktuelle landet. Denne løsningen krever altså at man legger inn to kodelinjer for hvert eneste land/hovedstad programmet skal støtte.

En andre løsning, gjennomgått i uke 3, viser hvordan man kan få til dette basert på ordbøker (se kode). Programmet basererer seg på en ordbok, hvor hvert land som er støttet ligger inne som en nøkkel-verdi som er koblet til tilhørende hovedstad. Denne løsningen krever altså bare at man legger inn et nøkkel-verdi-par i ordboken for hvert land/hovedstad programmet skal støtte.

En tredje løsning, gjennomgått i uke 5, viser hvordan man kan fylle opp en ordbok med land-hovedstad-koblinger ved å iterere gjennom linjene i en tekstfil som inneholder ett land og en hovedstad per linje (se kode). Dette gjør det mulig å for eksempel støtte en stor mengde land ved å laste ned en csv-fil med land og hovedsteder fra internett.

Gjennomgående eksempel: koble regn og reising

Dette eksempelet handler om å lage et lite program som sammenligner (kobler) værmelding og google-søk etter restplasser for ferie. Programmet undersøker om det er flere søk etter restplasser på dager med regn.

En første løsning, gjennomgått i modulen "Lese fra og skrive til filer" i uke 5, implementerer slik funksjonalitet i et program med en del nesten identisk (repetert) kode (se kode).

En andre løsning, gjennomgått i modulen "Parameter-overføring og variabel-skop" i uke 5, introduserer funksjoner for å gi en bedre strukturert kode, noe som også unngår repetitive kodelinjer (se kode).

 

Publisert 7. sep. 2020 11:08 - Sist endret 11. aug. 2022 14:18