How to check whether a numbers are palindrome in base 10 and base 2 with VB.NET

1 Answer

0 votes
Imports System
Imports System.Linq

Public Class Program
    Public Shared Function isBinaryRepresentationOfNumberPalindrome(ByVal num As Integer) As Boolean
        Dim binary As String = Convert.ToString(num, 2)
        Return binary.Equals(String.Join("", binary.Reverse()))
    End Function

    Public Shared Function isPalindrome(ByVal n As Integer) As Boolean
        Dim reverse As Integer = 0, temp As Integer = n

        While temp <> 0
            Dim remainder As Integer = temp Mod 10
            reverse = (reverse * 10) + remainder
            temp = temp \ 10
        End While

        Return n = reverse
    End Function

    Public Shared Sub Main(ByVal args As String())
        Dim n As Integer = 585 ' 1001001001
		
        Console.Write(If(isPalindrome(n) AndAlso isBinaryRepresentationOfNumberPalindrome(n), "yes", "no"))
    End Sub
End Class



' run:
'
' yes
'

 



answered Jan 8, 2024 by avibootz
edited Jan 8, 2024 by avibootz
...