Presentasjon lastes. Vennligst vent

Presentasjon lastes. Vennligst vent

INF150 Programmering mandag 11.9

Liknende presentasjoner


Presentasjon om: "INF150 Programmering mandag 11.9"— Utskrift av presentasjonen:

1 INF150 Programmering mandag 11.9
Mer om tekstvariabler If-then-else Kap. 3.5, 9.1, 9.2 Kap. 5.2 If Blocks side Side 123 oppgave 70 Side 125 oppgave 81, 82 Side 126 oppgave 85

2 … forts Tildelinger Uttrykk Variabler Tekst

3 …fra forrige gang om 3.4 Strings
En tekst består av bokstaver, ord, tegn, symboler for tall En tekst angis i anførselstegn: ”et eksempel” Tekster kan lagres i variabler av type String Deklarasjon: Dim enTekst As String Bruk i koden: enTekst = ”INF150 Programmering”

4 Hva kan vi gjøre med tekst?
I dataprogrammer må tekster ofte analyseres, plukkes fra hverandre og settes sammen på nytt For eksempel navn: Bjørn Jæger Oppslag i liste: Gjøres ofte på etternavn Et program må derfor kunne plukke ut etternavn fra en tekst med både fornavn og etternavn

5 …fortsettelse I VB finnes det mange ferdige funksjoner som vi kan bruke til å håndtere tekster Ser først på Substring Substring finner en del av en tekststreng

6 Substring(startposisjon, antall tegn)
Krever at vi oppgir POSISJON i teksten Alle tegn i en tekststreng er nummererte fra 0, 1, 2, 3, ... Eksempler: “Joda” “INF150 Hei” OBS: begynner alltid å telle på 0 og ikke 1 !

7 Substring(startposisjon, antall tegn)
Eksempel: Dim enTekst As String = “INF150 Hei” txtBox.Tekst = enTekst.Substring(0, 2) I tekstboksen står det da IN

8 …Substring Oppgaver Dim entekst = As String “INF150 Hei”
I txtBox.text? txtBox.Tekst = EnTekst.Substring(0,2) txtBox.Tekst = EnTekst.Substring(0,5) txtBox.Tekst = EnTekst.Substring(0,6) txtBox.Tekst = EnTekst.Substring(0,9) txtBox.Tekst = EnTekst.Substring(7,1) txtBox.Tekst = EnTekst.Substring(9,1) IN

9 IndexOf() IndexOf leter etter første forekomst av en tekststreng i en annen tekststreng og returnerer posisjonen hvor strengen er funnet. Eksempel: Dim enTekst As String = “INF150 Hei” txtBox.Tekst = CStr(enTekst.IndexOf("150")) I tekstboksen står det da 3

10 …IndexOf Oppgaver Dim entekst = As String “INF150 Hei” I txtBox.text?
txtBox.Tekst=CStr(enTekst.IndexOf("150")) txtBox.Tekst=CStr (enTekst.IndexOf("1")) txtBox.Tekst=CStr (enTekst.IndexOf("INF150")) txtBox.Tekst=CStr (enTekst.IndexOf("Hei")) txtBox.Tekst=CStr (enTekst.IndexOf("hei")) txtBox.Tekst=CStr (enTekst.IndexOf(" ")) 3

11 Eksempel: Plukke ut for- og etternavn
Dim fulltNavn As String = “Bjørn Jæger” Dim fornavn, etternavn As String posisjonTilMellomrom = fulltNavn.IndexOf(" ") fornavn = fulltNavn.Substring(0, posisjonTilMellomrom) etternavn = fulltNavn.Substring(posisjonTilMellomrom + 1)

12 Eksempler i boken side 93 "fanatic".Substring(0, 3) is "fan" "fanatic".IndexOf("ati") is 3 "fanatic".Substring(4, 2) is "ti" "fanatic".IndexOf("a") is 3 "fanatic".Substring(4) is "tic" "fanatic".IndexOf("nt") is -1 Ekstra, ikke i bok: "fanatic".Substring(3) is "atic" "fanatic".IndexOf("atic") is 3

13 Sette to tekster sammen til en
Bruker tegnet & Eksempel Legger de to tekstene "INF" og "150" inn i en tekststrengvariabel: Dim kursKode As String kursKode = "INF" & "150" Samme med bruk av variabler: Dim kursPrefix As String = "INF" Dim kursNummer As String = "150" kursKode = kursPrefix & kursNummer

14 Lengden av en tekst Bruker Length Eksempel I tekstboksen står det da 6
Dim kursKode As String = "INF150" txtBox.text = CStr(kursKode.Length) I tekstboksen står det da 6

15 …fortsetter om tekst På forelesningene blir bare det viktigste av dette gjennomgått. Resten i seksjon 3.4 Strings må du lese selv! Gjør eksemplene i boken og i hvert fall oppgave 47, 48 og 50 side 104. Gjøres i fellesskap etter forelesning på rom 076!

16 La programmet velge hvilken kode som skal kjøre
Vi har hittil sett at program kan få input gjøre noe med det og vis output INNDATA UTDATA BEREGNINGER matematiske uttrykk operasjoner på tekststrenger I beregninger kan vi også skrive kode som velger hvilken kode programmet skal utføre ut fra om en betingelse er sann eller falsk.

17 HVIS ... SÅ ... ELLERS ... If condition Then Else End If action1

18 Trenger en måte å skrive betingelse – condition – på
If condition Then action1 Else action2 End If

19 Betingelser Skrives ved hjelp av Boolske variabler Logiske uttrykk
variabler som kan ha verdi True eller False Logiske uttrykk uttrykk som beregnes til å ha verdi True eller False Kombinasjon av disse

20 Eksempel på Boolske variabel
Dim resultat As Boolean resultat = False If resultat Then MsgBox("Dette er sant!") Else MsgBox("Dette er ikke sant!") End If

21 betingelser – condition
For å angi betingelser bruker vi spesielle tegn; operatorer fra matemeatikk: Relasjonsoperatorer = er lik <> er ikke lik < mindre enn > større enn <= mindre eller lik >= større eller lik Logiske operatorer And Or Not

22 Eksempel Sjekker oppgitt alder i en tekstboks:
If CInt(txtBox.Text) < 18 Then MsgBox("Ingen studenter er så ung! - prøv på nytt") txtBox.Clear() Else MsgBox("OK, du er " & txtBox.Text & " år") End If

23 Vi gjør eksempler Eksempel 3 side 203 Practice problems 1 & 2 side 208

24 Nyttig hjelpemiddel: MsgBox
MsgBox("Hello, World!") Nyttig hjelpemiddel for å gi meldinger til brukeren

25 Neste forelesning Torsdag 14. september 1015-1200 På rom B136
Mer om IF-THEN-ELSE


Laste ned ppt "INF150 Programmering mandag 11.9"

Liknende presentasjoner


Annonser fra Google