Excel - priemgetallen

excel_priemgetal

Een priemgetal is een geheel positief getal dat groter is dan 1 en alleen deelbaar is door 1 en zich zelf. Een geheel positief getal wordt ook wel een natuurlijk getal genoemd.

Met behulp van de zelf gedefinieerde functie IsPriem(Getal) kan achterhaald worden of een getal een priemgetal is of niet.

01'-----------------------------------------------------------------------------------------------------------------------
02' Auteur        : pascalterheege.nl
03' Datum         : 16-3-2016
04' Object        : modFunctie
05' Doel          : priemgetal berekenen
07'                 http://beterrekenen.nl/website/index.php?pag=248
08'-----------------------------------------------------------------------------------------------------------------------
09 
10Option Explicit
11 
12'-----------------------------------------------------------------------------------------------------------------------
13' Datum         : 16-3-2016
14' Type          : Subroutine
15' Opmerking     : een priemgetal is:
16'                   1. Een getal
17'                   2. Een geheel getal
18'                   3. Groter dan 1
19'                   4. En niet deelbaar door een ander getal dan 1 en zich zelf
20'-----------------------------------------------------------------------------------------------------------------------
21 
22Public Function IsPriem(Getal) As Boolean
23 
24'   1. Een getal
25    If Not IsNumeric(Getal) Then Exit Function
26 
27'   2. Een geheel getal
28    If Getal - Int(Getal) <> 0 Then Exit Function
29 
30'   3. Groter dan 1
31    If Not Getal > 1 Then Exit Function
32    
33'   4. En niet deelbaar door een ander getal dan 1 en zich zelf
34    If Deelbaar(Getal) = True Then Exit Function
35     
36    IsPriem = True
37 
38End Function
39 
40'-----------------------------------------------------------------------------------------------------------------------
41' Datum         : 16-3-2016
42' Type          : Subroutine
43' Opmerking     : 4. En niet deelbaar door een ander getal dan 1 en zich zelf
44'-----------------------------------------------------------------------------------------------------------------------
45 
46Private Function Deelbaar(Getal) As Boolean
47 
48    Dim AnderGetal As Integer
49 
50    AnderGetal = 1
51     
52    For AnderGetal = 1 To Getal
53     
54        If Getal Mod AnderGetal = 0 Then        'Getal is deelbaar door een ander getal
55            If AnderGetal > 1 Then              'Het andere getal is groter dan 1
56                If AnderGetal <> Getal Then     'Het andere getal is niet gelijk aan het getal
57                    Deelbaar = True             'DUS > GEEN PRIEMGETAL
58                    Exit For
59                End If
60            End If
61        End If
62     
63    Next AnderGetal
64 
65End Function

Download hier het oefenbestand.