Functies 3: oplossingen


  1. Een functie voor het kwadraat
    Function kwadraat(getal As Single) As Double
    kwadraat = getal * getal
    End Function
  2. Een functie om een string om te draaien
    Function inverteer(tekst As String) As String
    Dim letter As String
    Dim buffer As String
    Dim positie As Integer
    For positie = Len(tekst) To 1 Step -1
    buffer = buffer & Mid(tekst, positie, 1)
    Next positie
    inverteer = buffer
    End Function
  3. Een functie die een tekst AfWiSsElLeNd in hoofd- en kleine letters zet.
    Function hoofdletter(tekst As String) As String
    Dim letter As String
    Dim buffer As String
    Dim positie As Integer
    For positie = 1 To Len(tekst)
    letter = Mid(tekst, positie, 1)
    If positie Mod 2 = 1 Then
    letter = UCase(letter)
    Else
    letter = LCase(letter)
    End If
    buffer = buffer & letter
    Next positie
    hoofdletter = buffer
    End Function
  4. Een functie die nagaat of een getal priem is
    Function IsPriem(getal As Integer) As Boolean
    Dim deler As Integer
    IsPriem = True
    If (getal \ 2) * 2 = getal Then IsPriem = False 'is twee een deler?
    For deler = 3 To Sqr(getal) Step 2
    If (getal \ deler) * deler = getal Then IsPriem = False 'zijn er andere delers?
    Next deler
    End Function
  5. Het kleinste gemeen veelvoud van twee getallen
    Function KGV(getal1 As Integer, getal2 As Integer) As Integer
    'de gemakkelijke weg: optellen
    Dim test As Integer
    Dim start As Integer
    start = getal1
    If getal2 > start Then start = getal1
    test = start
    Do
    If test Mod getal1 = 0 And test Mod getal2 = 0 Then
    KGV = test
    Exit Do
    Else
    test = test + 1
    End If
    Loop
    End Function
  6. De grootste gemene deler
    Function ggd(getal1 As Integer, getal2 As Integer)
    'de gemakkelijke weg: aftellen
    Dim start As Integer
    Dim test As Integer
    start = getal1
    If getal2 < start Then start = getal2
    test = getal2
    Do
    'MsgBox test
    If getal1 Mod test = 0 And getal2 Mod test = 0 Then
    ggd = test
    Exit Do
    Else
    test = test - 1
    If test = 0 Then Exit Do
    End If
    Loop
    End Function
    Function min(getal1, getal2)
    If getal1 < getal2 Then
    min = getal1
    Else
    min = getal2
    End If
    End Function
  7. Een functie die het eerstvolgende priemgetal geeft
    Function geefPriem(start As Integer) As Integer
    Dim buffer As Integer
    buffer = start
    If buffer < 2 Then
    geefPriem = 2
    Exit Function
    End If
    If buffer = 2 Then
    buffer = 3
    Else
    Do
    buffer = buffer + 2
    Loop Until IsPriem(buffer)
    End If
    geefPriem = buffer
    End Function
    Function IsDeelbaar(ByVal getal As Double, ByVal deler As Integer) As Boolean
    IsDeelbaar = False
    If (getal \ deler) * deler = getal Then IsDeelbaar = True
    End Function

[VB Web] - [hlrnet] - [copyright]