Tester (if-setninger)

I programmering bruker vi tester for å sjekke om en betingelse er oppfylt, dette kaller vi ofte for if-setninger eller if-else-setninger.

IfsetningerEn if-setning sjekker om noe er sant eller ikke, for eksempel om rett passord er tastet. Hvis passordet er riktig får du tilgang til kontoen din, men hvis det er galt skjer ingenting.

En If-setning ville da sett slik ut:

  • If (sjekk at passord er korrekt)
  • Then (gi tilgang til konto)
  • End If

Man kan sette flere if-setninger sammen, slik du ser i bildet til høyre. Her gir programkoden beskjed om å gå framover. Så testes det på om det er en haug der (if haug), da skal den fjernes (then fjern). En ny test kommer; er det et hull der (if hull) så skal det fylles (then fyll). Testene er satt inn i en løkke (rosa blokk) som gjør at man skal gå framover så lenge betingelsen (er det vei foran) er sann.

En if-else-setning vil gi alternativer. Hvis du taster passord, og passordet er feil kan et alternativ være at det kommer opp en melding som sier at du må prøve igjen  eller kanskje alternativet er at kontoen blir sperret.

If-then-setninger er bygd opp på denne måten:

  • If (boolsk operator - sjekk at passord er riktig)
  • Then (konsekvens - gi tilgang til konto hvis riktig)
  • Else (alternativ konsekvens - sperr kontoen)
  • End If

Man kan sette flere slike setninger etter hverandre. I eksempelet med pinkoden kunne man tenke seg følgende hvis du skal handle i en butikk:

  • If (pinkode er korrekt)
  • Then (sjekk konto om det er nok penger til kjøpet og fullfør transaksjon)
  • Else (ikke fullfør transaksjon, kjøp nektet)
  • Avslutt If

Man kan legge til flere betingelser for å gi flere mulige alternativer. Tenk deg at du skal reise på ferie og ønsker å reise til Spania. Hvis det ikke er noen ledige avganger på det tidspunktet du vil reise er neste alternativ Hellas. Hvis det heller ikke der er ledige avganger vil du prøve Italia. Da kunne koden sett slik ut:

If (ledig til Spania) then (bestill Spania) else (bestill Hellas). If (ledig til Hellas) then (bestill Hellas) else (bestill Italia). 

På denne måten blir det også en prioritering av valgene fordi den går trinnvis gjennom programkoden.