How to check where a number is special number in VB.NET

1 Answer

0 votes
' Special number = sum of the factorial of digits is equal to the number

Imports System

Public Class Program
    Friend Shared Function factorial(ByVal num As Integer) As Integer
        Dim fact As Integer = 1

        While num <> 0
            fact = fact * num
            num -= 1
        End While

        Return fact
    End Function

    Friend Shared Function isSpecial(ByVal num As Integer) As Boolean
        Dim sum As Integer = 0, tmp As Integer = num

        While tmp <> 0
            sum += factorial(tmp Mod 10)
            tmp = tmp \ 10
        End While

        Return sum = num
    End Function

    Public Shared Sub Main(ByVal args As String())
        Dim num As Integer = 145

        If isSpecial(num) Then
            Console.WriteLine("yes")
        Else
            Console.WriteLine("no")
        End If
    End Sub
End Class



' run:
'
' yes
'

 



answered Nov 26, 2023 by avibootz

Related questions

1 answer 107 views
1 answer 122 views
1 answer 104 views
1 answer 96 views
1 answer 106 views
1 answer 119 views
1 answer 143 views
...