У меня есть следующая функция, которая принимает входные данные от txtbox1
и выводит результат в txtbox2
. Главное - подставить каждую букву конкретным числовым значением, вычислить значение каждого слова, а затем отобразить общее количество всех слов. Прямо сейчас эта функция всегда вычисляет значение 13. Если я, например, набираю aaa bbb cc
, результат должен быть. Как изменить функцию для этого?Рассчитать каждую букву и общее количество vb.net
aaa = 3
bbb = 15
cc = 14
Total = 32
Private Sub CountLetters(Input As String)
Dim total As Integer = 0
Dim dicLetters As New Dictionary(Of Char, Integer)
dicLetters.Add("a", 1)
dicLetters.Add("b", 5)
dicLetters.Add("c", 7)
For Each word As String In Input.Split
Dim wordtotal As Integer = 0
For Each cc As KeyValuePair(Of Char, Integer) In dicLetters
wordtotal += cc.Value
Next
total += wordtotal
'Display word totals here
txtBox2.Text += word.PadRight(12) + "=" + _
wordtotal.ToString.PadLeft(5) + vbNewLine
Next
'Display total here
txtBox2.Text += "Total".PadRight(12) + "=" + total.ToString.PadLeft(5)
End Sub
Спасибо @tim! – logixologist
@logixologist - Добро пожаловать. Надеюсь, я не украл твой гром ... – Tim
Мне нравится ваше решение в любом случае :). – logixologist