70 likes | 225 Views
Taulukot. Kiinteät taulukot : alkioiden määrä tiedetään Dim intCount(12) As Integer indeksit saavat arvoja 0 -12 (Option Base) Moniulotteiset taulukot Dim intAvain(2,2) Dynaamiset taulukot Alkioiden määrä vaihtelee suoritusaikana ReDim intTestArray(intSize). Taulukkoesimerkki.
E N D
Taulukot • Kiinteät taulukot: alkioiden määrä tiedetään Dim intCount(12) As Integer indeksit saavat arvoja 0-12 (Option Base) • Moniulotteiset taulukot Dim intAvain(2,2) • Dynaamiset taulukot Alkioiden määrä vaihtelee suoritusaikana ReDim intTestArray(intSize) Ohjelmointi 1. toinen luento
Taulukkoesimerkki Private Sub cmdNappi_Click() Dim intTestArray() AsInteger Dim i, intSize As Integer intSize = Int(100 * Rnd +1) ’Luodaan satunnaislukuja Redim intTestArray(intSize) ’Varataan muisti uudestaan For i = 1 To intSize intTestArray(i) = Rnd Next i End Sub Ohjelmointi 1. toinen luento
Ohjausrakenteet: toistolauseet • Kutsutaan myös silmukoiksi • Käytetään silloin, kun jokin toiminto halutaan toistaa useita kertoja: joko n kertaa tai kunnes jokin ehto lopettaa silmukan • Joskus toistolauseen ehdolla ei voi lopettaa silmukkaa => käytetään Exit For tai Exit Do -lauseita Ohjelmointi 1. toinen luento
Alkuehtoinen Do Loop -lause Do [ {While|Until} ehto] <lausekkeita> [Exit Do] <lausekkeita> Loop • Jos While-ehto heti epätosi, ei suoriteta • Jos Until-ehto heti tosi, ei suoriteta Ohjelmointi 1. toinen luento
Loppuehtoinen Do Loop -lause Do <lausekkeita> [Exit Do] <lausekkeita> Loop[ {While|Until} ehto] • Silmukan sisään kirjoitetut lauseet suoritetaan aina vähintään kerran Ohjelmointi 1. toinen luento
For -toistolause For laskurimuuttuja = aloitusarvo To lopetusarvo [Step askel] <lausekkeita> [Exit For] <lausekkeita> Next [ laskurimuuttuja ] • Soveltuu taulukoiden käsittelyyn Ohjelmointi 1. toinen luento
For -esimerkki Private Sub Form_Click() ’ Määritellään laskurimuuttuja Dim i As Integer ’ Tehdään silmukka, joka saa arvot 0:sta loppuarvona ’ lomakkeilla olevien objektien määrä - 1. ’ Me -avainsana tarkoittaa lomaketta, jolla toiminto ’ suoritetaan For i=0 To Me.Controls.Count - 1 ’Näytetään msgBox -funktiolla objektin nimi, joka on i-indeksillä ’lomakkeen Controls -taulukossa MsgBox Me.Controls(i).Name Next i Ohjelmointi 1. toinen luento