160 likes | 383 Views
Visual Basic -ohjelmointi. Tietotyypit ja valintarakenteet. Tietotyypeistä. Valikoi muuttujalle sopiva tietotyyppi, ei liian pieni eikä liian suuri. Ohjelmasi suorituskyky paranee. Aloittelevalle koodarille riittävät tietotyypit: Integer -kokonaisluku Double -desimaaliluku String -teksti
E N D
Visual Basic -ohjelmointi Tietotyypit ja valintarakenteet
Tietotyypeistä • Valikoi muuttujalle sopiva tietotyyppi, ei liian pieni eikä liian suuri. Ohjelmasi suorituskyky paranee. • Aloittelevalle koodarille riittävät tietotyypit: • Integer -kokonaisluku • Double -desimaaliluku • String -teksti • Char -merkki • Boolean -totuusarvo • Date -pvm (#mm/dd/yy#)
Tietotyyppejä • Tietotyypit jaetaan • alkeistyyppeihin (primitive types): • kokonaislukutyypit (Byte, Short, Integer, Long, Char) • liukulukutyypit (Float, Double) • totuusarvotyyppi (Boolean) • viittaustyyppeihin (reference type): • luokkatyypit, interface-tyypit, taulukkotyypit
Kokonaislukutyypit Byte (1 tavu) Arvoalue: -128 - 127 Short (2 tavua) Arvoalue: -32768 - 32767 Integer (4 tavua) Arvoalue: -2147483648 - 2147483647Long (8 tavua) Arvoalue: -9223372036854775808 - 9223372036854775807
Totuusarvotyyppi Boolean • Arvot : True, False • Muunnoksissa 0 = False, muut True • Dim Totuus As Boolean = 0 • on sama kuin • Dim Totuus As Boolean = False
Merkkityyppi Char • Merkkiarvot (char) ovat posititiivisia kahden tavun mittaisia kokonaislukuja. • Merkit on koodattu ns. Unicode-koodilla, joka sisältää maailman useimpien kirjoitusjärjestemien kirjain- ja numeromerkit
Päivämäärätyyppi Date • Päivämäärä annetaan koodissa muodossa kuukausi, päivä, vuosi USA:n käytännön mukaisesti • Päivämäärän alkuun ja loppuun sijoitetaan risuaidat (#) • Esim. 31.12.2003 koodataan #12/31/03#
Tyyppimuunnokset • Tyyppimuunnoksilla muutetaan tietotyyppi toiseksi, mikäli mahdollista • Yleisimmät tyyppivaihdokset: CBool(expression) CChar(expression) CDate(expression) CDbl(expression) CInt(expression) CStr(expression)
Ehtorakenteista • Mikäli ohjelmalla on monta vaihtoehtoa valittavana ei välttämättä kannata käyttää If – Elseif – Else – End If rakennetta • Tehokkaampi on Select Case ehtorakenne • Kumpikin ehtorakenne toimii ja ajaa saman asian, mutta Select Case on tehokkaampi, koska haarautuminen riippuu vain yhdestä muuttujasta
Valintalause Select Case Select Case muuttuja Case arvo1 … Case arvo2 … Case arvo3 … … Case Else … End Select
Valintalause Select Case… Dim Nimi As String Nimi = InputBox("Anna nimesi:") Select Case Nimi Case "Irene" MsgBox("Tervetuloa Irene!") Case "Christian" MsgBox("Tervetuloa Christian!") Case Else MsgBox("Käyttäjää ei tunneta!") End Select
Valintalause Select Case… Dim Ika As Integer Ika = InputBox("Anna ikäsi:") Select Case Ika Case Is < 18 MsgBox("Alaikäinen") Case 18 To 65 MsgBox("Työikäinen") Case Else MsgBox("Eläkeläinen") End Select Vertailussa tarvitaan Is ja To avainsanoja
Harjoitus 1 Tee ohjelma, joka kysyy käyttäjän kuukausipalkan ja kertoo sen ostovoiman. Jos palkka on alle 2000 €, niin tulostetaan “Kaurapuuro on ihan hyvää…” Jos palkka on 2000 – 3000 €, niin tulostetaan “Kerran vuodessa Kanarialle…” Jos palkka on 3000 - 4000 €, niin tulostetaan “Joskus jopa Meksikoon…” Jos palkka on yli 4000 €, niin tulostetaan “Minne mieli tekeekin…” Muuten tulostetaan “Syöttämäsi palkka on virheellinen”
Harjoitus 2 Tee ohjelma, jonka latauksen yhtydessä listboxiin tulostetaan maat: Suomi, Englanti, Espanja ja Italia kukin omalle rivilleen. Käyttäjän valikoidessa hiirellä jonkun maan listboxista, tulostetaan kyseisen maan kielellä tervehdys textboxiin. Formiin lisätään myös lopetusnäppäin. Suomi - "Hei ohjelmoija" Englanti - "Hello, programmer" Espanja - "Hola, programador" Italia - "Ciao, programmatore"