Welcome to collectivesolver - Programming & Software Q&A with code examples. A website with trusted programming answers. All programs are tested and work.

Contact: aviboots(AT)netvision.net.il

Buy a domain name - Register cheap domain names from $0.99 - Namecheap

Scalable Hosting That Grows With You

Secure & Reliable Web Hosting, Free Domain, Free SSL, 1-Click WordPress Install, Expert 24/7 Support

Semrush - keyword research tool

Boost your online presence with premium web hosting and servers

Disclosure: My content contains affiliate links.

39,950 questions

51,892 answers

573 users

How to remove characters from a numeric string such that the string becomes divisible by 8 in VB.NET

1 Answer

0 votes
Imports System

Public Class Program
    Public Shared Function checkIfNumExist(ByVal num As String, ByVal s As String) As Integer
        Dim index As Integer = 0

        For Each ch As Char In s.ToCharArray()
            If num(index) = ch Then
                index += 1

                If num.Length = index Then
                    Exit For
                End If
            End If
        Next

        Return If(index = num.Length, 1, 0)
    End Function

    Public Shared Function convertStringToBecomesDivisibleBy8(ByVal s As String) As String
        For i As Integer = 8 To 1e3 - 1 Step 8
            Dim num As String = Convert.ToString(i)

            If checkIfNumExist(num, s) = 1 Then
                Return num
            End If
        Next

        Return "-1"
    End Function

    Public Shared Sub Main(ByVal args As String())
        Dim s1 As String = "127892"
        Dim result As String = convertStringToBecomesDivisibleBy8(s1)
        Console.WriteLine(result)
        
        Dim s2 As String = "1201674"
        result = convertStringToBecomesDivisibleBy8(s2)
        Console.WriteLine(result)
        
        Dim s3 As String = "1209574"
        result = convertStringToBecomesDivisibleBy8(s3)
        Console.WriteLine(result)
        
        Dim s4 As String = "190395473"
        result = convertStringToBecomesDivisibleBy8(s4)
        Console.WriteLine(result)
        
        Dim s5 As String = "1309577"
        result = convertStringToBecomesDivisibleBy8(s5)

        If Not result.Equals("-1") Then
            s5 = result
            Console.WriteLine(s5)
        Else
            Console.WriteLine("No numeric characters combination divisible by 8")
        End If
    End Sub
End Class



' run:
'
' 8
' 16
' 24
' 104
' No numeric characters combination divisible by 8
'

 



answered Mar 19, 2024 by avibootz
...