Quantcast
Channel: VBForums - Visual Basic .NET
Viewing all articles
Browse latest Browse all 27554

VS 2010 Using the .SubString Function to Reverse the string

$
0
0
I have an assignment where we have to a number of things such as count the vowels, words, and reverse strings. I was able to write the code for the vowels and the words but am lost on the reverse. Here is the section of the assignment the professor asked.

6) Write the code for the “Reverse” button click event. The subroutine should get the text from txtSentence and pass it to a function called ReverseString. The ReverseString function should reverse the string and return it. For example ReverseString( “ABC” ) should return “CBA”. The “Reverse” button click subroutine should then update the text in txtSentence with the reversed string. You cannot use the StrReverse function. Use .Substring to extract each letter but assemble the characters back together using concatentation so that the first character ends up as the last.

I understand the concept of what it is doing and but don't know how to start it. I have used the .substring in the past to output part of the string. Can anyone give me some advice on how to go about it or even a little example? Here is the code I have written for the vowels, words, as well as the overall defined variables so far.
Thanks again.

Code:

Public Class Form1

    Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
        Dim str As String
        Dim total As Integer

        total = 0
        str = txtSentence.Text
        'look for each vowel and add the count to total
        total = total + CharCount(str, "A")
        total = total + CharCount(str, "E")
        total = total + CharCount(str, "I")
        total = total + CharCount(str, "O")
        total = total + CharCount(str, "U")
        total = total + CharCount(str, "Y")

        'display results
        MsgBox("Total Vowels = " & total)

    End Sub

    Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click
        Dim str As String
        Dim i, l, words As Integer
        str = txtSentence.Text
        str = LTrim(str) 'removes leading blank spaces
        str = RTrim(str) ' removes trailing blank spaces
        l = str.Length
        i = 0
        words = 0
        While (i < l)
            If str(i) = " " Then
                words = words + 1
                i = i + 1
                While str(i) = " " ' removes continuous blank spaces
                    i = i + 1
                End While
            Else
                i = i + 1
            End If

        End While
        words = words + 1 ' adds the last word
        MessageBox.Show("WORDS =" & words)
    End Sub
    Private Sub Button3_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click
        Dim random As String = "asfdgasfdgasfdgasfd11"
        Dim length As Integer = Nothing
        length = Random.Length
        Console.WriteLine(random.Length)
        Console.WriteLine(length)
        Console.WriteLine()
        Console.WriteLine()
        Console.ReadLine()

        Dim curStart = 0
        Dim loopCounter = 0
        While (curStart < random.Length)
            Console.WriteLine(random.Substring(curStart, System.Math.Min(20, length - 20 * loopCounter)))
            curStart = curStart + 20
            loopCounter = loopCounter + 1
        End While
    End Sub

    Private Function CharCount(ByVal str As String, ByVal findCH As Char) As Integer

        Dim idx, Ln, cnt As Integer
        Dim ch As String

        Ln = str.Length
        cnt = 0

        findCH = Char.ToUpper(findCH) 'make sure char is an uppercase

        For idx = 0 To Ln - 1
            'read individual letters from string and convert to uppercase
            ch = CChar(str.Substring(idx, 1).ToUpper) 'convert to char
            If ch = findCH Then
                cnt = cnt + 1 'found a match increment the count
            End If
        Next
        Return cnt

    End Function


    Private Sub txtSentence_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSentence.TextChanged

    End Sub
End Class


Viewing all articles
Browse latest Browse all 27554

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>