How to find the consecutive prime numbers which sum of them equal to N in VB.NET

1 Answer

0 votes
Imports System

Public Class Program
    Public Shared Function isPrime(ByVal n As Integer) As Boolean
        If n = 0 OrElse n = 1 Then
            Return False
        End If

        For i As Integer = 2 To Math.Sqrt(n)
            If n Mod i = 0 Then
                Return False
            End If
        Next

        Return True
    End Function

    Public Shared Sub findConsecutivePrimeSumEqualTo(ByVal n As Integer)
        Dim sum As Integer = 0

        For i As Integer = 2 To n - 1
            If isPrime(i) Then
                Console.Write(i & " ")
                sum += i

                If sum = n Then
                    Exit For
                End If

                If sum > n Then
                    Console.WriteLine("Not Found")
                    Exit For
                End If
            End If
        Next
    End Sub

    Public Shared Sub Main(ByVal args As String())
        findConsecutivePrimeSumEqualTo(41)
    End Sub
End Class



' run:
'
' 2 3 5 7 11 13
'



 



answered Jan 28, 2024 by avibootz
...