Linux – Friheden til at programmere: Version 2.5.20050330 – 2020-12-31 | ||
---|---|---|
forrige | Kapitel 3. Imperativ programmering | næste |
Hvis et program skal kunne handle forskelligt alt efter hvilke data det får ind, er det nødvendigt med betingede strukturer hvor det gør forskellige ting alt efter hvilken værdi dataene har. Et simpelt eksempel kan være at undersøge hvor lang tids barselsorlov en person har ret til ud fra vedkommendes CPR-nummer.
Eksempel 3-1. Barselsorlovslængde
Hvis personens CPR-nummer har et lige løbenummer, så har hun ret til seks måneders barselsorlov, ellers har han kun ret til to ugers barselsorlov.
Eksemplet findes også skrevet i: Ada
Dette er et eksempel på en simpel "hvis udsagn så gør noget ellers gør noget andet"-konstruktion som man vil finde i en eller anden form i ethvert imperativt programmeringssprog. I princippet er denne konstruktion sammen med muligheden for at hoppe til vilkårlige steder i programmet tilstrækkeligt til at man kan skrive et vilkårligt computerprogram. I praksis er det dog langt fra hensigtsmæssigt kun at arbejde med så primitive redskaber.
En del sprog indeholder – i en eller anden variant – en generalisering af ovenstående sand/falsk-baserede konstruktion til vilkårlige diskrete datatyper. Det kan for eksempel bruges til at undersøge hvor længe det lokale supermarked har åbent afhængigt af hvilken dag i ugen det er.
Eksempel 3-2. Supermarkedsåbningstider
I tilfælde af at ugedagen er:
mandag, tirsdag, onsdag eller fredag så er der åbent fra 9 til 18.
torsdag så er der åbent fra 9 til 20.
lørdag så er der åbent fra 10 til 17.
søndag så er der lukket hele dagen.
Eksemplet findes også skrevet i: Ada