Institutt for informatikk og matematiske fag

Kurs 860 IKT

Visual Basic:
Beslutningsstrukturer

[Litteratur: VB kap. 6 s. 147-163]


Innledning

Visual Basic har to såkalte beslutningsstrukturer:

  • Den ene kalles If-Then
  • Den andre kalles Select

Vi skal gjøre oss kjent med begge.

Forelesningen baseres på filer i filarkivet less06.zip

Vi laster nå ned dette filarkivet, pakker det ut og lagrer filene på m:\vb\less06


If-Then

If-Then-beslutningsstrukturen ser slik ut (i sin enkleste form)

If betingelsesuttrykk Then
programkode
End If

Du kan skrive If med liten "i" om du vil, men stor "I" er vanlig i Visual Basic. Tilsvarende med Then og End If

If betingelsesuttrykk Then må skrives på én linje.

betingelsesuttrykk er et uttrykk som enten er sant, dvs. har logisk eller boolsk verdi True, eller er usant, dvs. har logisk verdi False. Programkoden programuttrykk utføres bare hvis betingelsesuttrykk har logisk verdi True. betingelsesuttrykk inneholder ofte én eller flere sammenlikningsoperatorer:

Sammenlikningsoperator Betydning
= Lik
<> Ikke lik
> Større enn
< Mindre enn
>= Større enn eller lik
<= Mindre enn eller lik

Eksempel:

If Score >= 20 Then
Label1.Caption = "Du vant!"
End If

Her er Score >= 20 det som ovenfor er angitt som betingelsesuttrykk.

Og Label1.Caption = "Du vant!" er programuttrykk.

Du kan kombinere betingelsesuttrykk til mer sammensatte betingelsesuttrykk vha. kodeordene And og Or og Not. Eksempel:

If Score >= 20 And Score < 50 Then
Label1.Caption = "Du vant!"
End If


Sammensatte If-Then-uttrykk med Else og ElseIf

Du kan lage mer sammensatte If-Then-strukturer også vha. Else-uttrykk og/eller ElseIf-uttrykk.

Slik brukes Else:

If betingelsesuttrykk1 Then
{programuttrykk1}
Else
{programuttrykk2}
End If

Og slik brukes ElseIf:

If betingelsesuttrykk1 Then
{programuttrykk1}
ElseIf betingelsesuttrykk2 Then
{programuttrykk2}
End If

Du forstår vel forskjellen på Else og ElseIf?

Vi skal nå gå gjennom programmet Loginm:\vb\less06 som illustrerer bruken av If-Then-strukturen.


Select

Select-strukturen er bare en effektiv måte å uttrykke en rekke If-Then-uttrykk på. Syntaksen er slik:

Select Case variabel1
Case variabelverdi1
     programuttrykk1
Case variabelverdi2
     programuttrykk2
.
.
.
Case Else
     programuttrykk_else
End Select

Det er verdien av variabel1 som avgjør hvilken av case'ene som skal aktiveres. Eksempelvis vil programuttrykk1 utføres dersom variabel1 har verdi lik variabelverdi1.

Case Else angir programuttrykket som skal utføres dersom ingen av de angitt case'ene ovenfor aktiveres.

I stedet for å sammenlikne variabel1 med variabelverdi1 og variabelverdi1 osv, kan du bruke betingelsessuttrykk som inneholder sammenlikningsoperatorer (de samme som for If-Then-strukturen) og kodeordene Is eller To, f.eks. slik (jf. s. 160 i læreboka):

Select Case Age
Case Is < 13
     programuttrykk1
Case 13 To 19
     programuttrykk2
.
.
.
Case Else
     programuttrykk_else
End Select

 

Vi skal nå gå gjennom programmet Casem:\vb\less06 som illustrerer bruken av If-Then-strukturen.


[Kursets hjemmeside] [Framdriftsplanen]
Oppdatert 7.8.01 av Finn Haugen (e-post: Finn.Haugen@hit.no)