mandag 29. oktober 2007

Mandag 29/10: Metoder og frekvenstabell

Vi (8 oppmøtte!) besvarte 2006-eksamen (deloppgave 3 g) med en frekvensteller som spurte oversettelser hvilken bokstav de ville bli sortert etter (første bokstav i det norske ordet). Altså ble ov-klassen utvidet med en metode (nytt, s. 555) som alltid gir stor bokstav:
    Public Function sortBokstav() As Char
        Return _norsk.ToUpper().Substring(0, 1)
    End Function
Klienten (frekvenstelleren, se forøvrig s. 315 i pensum):
    Private Sub Button3_Click(ByVal sender As System.Object, _
                  ByVal e As System.EventArgs) Handles Button3.Click
        lagFrekTabell(o, lst)
    End Sub
    Private Sub lagFrekTabell(ByRef o() As ov, byref l as listbox)
        Dim antall(255) As Integer
        l.Items.Clear()
        Dim i As Integer
        For i = 0 To nl - 1
            Dim pos As Integer = Asc(o(i).sortBokstav())
            antall(pos) += 1
        Next
        For i = 65 To 90   ' a til z (se s. 605)
            l.Items.Add(Chr(i) & " eller " & Chr(i + 32) _
                & ": " & antall(i))
        Next
        i = 198  ' æ
        lst.Items.Add(Chr(i) & " eller " & Chr(i + 32) & ": " & antall(i))
        i = 216  ' ø
        lst.Items.Add(Chr(i) & " eller " & Chr(i + 32) & ": " & antall(i))
        i = 197  ' å
        lst.Items.Add(Chr(i) & " eller " & Chr(i + 32) & ": " & antall(i))
    End Sub
Til sist så vi på exercises 11.1.1 og 11.1.2 (s. 563).

Ingen kommentarer: