How to check if a number is prime in VB.NET

2 Answers

0 votes
Imports System
 
Public Class Program
    Public Shared Function isPrime(ByVal n As Integer) As Boolean
        If (n = 0) Then Return False
        If (n = 1) Then Return False
        
        For i As Integer = 2 To CInt(Math.Sqrt(n))
            If (n Mod i = 0) Then Return False
        Next
 
        Return True
    End Function
 
    Public Shared Sub Main()
        Dim n As Integer = 0
 
        For i As Integer = 0 To 20
            n = CInt(Math.Ceiling(Rnd() * 100)) + 1
            If (isPrime(n)) Then
                Console.WriteLine("{0} - Prime", n)
            Else
                Console.WriteLine("{0} - NOT Prime", n)
            End If
        Next
    End Sub
End Class
 
 
 
' run:
'
' 12 - NOT Prime
' 23 - Prime
' 19 - Prime
' 32 - NOT Prime
' 5 - Prime
' 32 - NOT Prime
' 2 - Prime
' 26 - NOT Prime
' 57 - NOT Prime
' 14 - NOT Prime
' 72 - NOT Prime
' 77 - NOT Prime
' 91 - NOT Prime
' 45 - NOT Prime
' 16 - NOT Prime
' 46 - NOT Prime
' 92 - NOT Prime
' 46 - NOT Prime
' 9 - NOT Prime
' 100 - NOT Prime
' 39 - NOT Prime
'

 



answered Feb 24, 2016 by avibootz
edited May 18, 2024 by avibootz
0 votes
Imports System
 
Public Class Program
    Public Shared Function isPrime(ByVal n As Integer) As Boolean
        If n < 2 OrElse (n Mod 2 = 0 AndAlso n <> 2) Then
            Return False
        End If
 
        Dim count As Integer = CInt(Math.Floor(Math.Sqrt(n)))
        
        For i As Integer = 3 To count Step 2
            If n Mod i = 0 Then
                Return False
            End If
        Next
 
        Return True
    End Function
 
    Public Shared Sub Main()
        Dim n As Integer = 97
 
        If isPrime(n) Then
            Console.Write("Prime number")
        Else
            Console.Write("Not prime number")
        End If
    End Sub
End Class
 
 
 
' run:
'
' Prime number
'

 



answered May 18, 2024 by avibootz
...