vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
sevDataGrid - Gönnen Sie Ihrem SQL-Kommando diesen krönenden Abschluß!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Ein- und Umsteiger
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl reduzieren 
Autor: Maas
Datum: 01.11.11 13:36

Ich weiß, du willst keinen vollständigen Code und das ist auch lobenswert, aber Copy&Paste heißt nicht gleich, dass man nichts lernt. Es kommt darauf an wie man damit umgeht.

Versuche mal folgenden Code zu verstehen:
Public Class Form1
 
    Private mLetterDigitDict As New Dictionary(Of Char, Integer)
 
    Public Sub New()
        InitializeComponent()
 
        mLetterDigitDict.Add("a"c, 1)
        mLetterDigitDict.Add("i"c, 1)
        mLetterDigitDict.Add("j"c, 1)
        mLetterDigitDict.Add("q"c, 1)
        mLetterDigitDict.Add("y"c, 2)
        mLetterDigitDict.Add("b"c, 2)
        mLetterDigitDict.Add("k"c, 2)
        mLetterDigitDict.Add("r"c, 3)
        mLetterDigitDict.Add("c"c, 3)
        mLetterDigitDict.Add("g"c, 3)
        mLetterDigitDict.Add("l"c, 3)
        mLetterDigitDict.Add("s"c, 4)
        mLetterDigitDict.Add("d"c, 4)
        mLetterDigitDict.Add("m"c, 4)
        mLetterDigitDict.Add("t"c, 5)
        mLetterDigitDict.Add("e"c, 5)
        mLetterDigitDict.Add("h"c, 5)
        mLetterDigitDict.Add("n"c, 6)
        mLetterDigitDict.Add("u"c, 6)
        mLetterDigitDict.Add("v"c, 6)
        mLetterDigitDict.Add("w"c, 6)
        mLetterDigitDict.Add("x"c, 7)
        mLetterDigitDict.Add("o"c, 7)
        mLetterDigitDict.Add("z"c, 8)
        mLetterDigitDict.Add("f"c, 8)
        mLetterDigitDict.Add("p"c, 9)
 
    End Sub
 
    Private Sub Button1_Click(sender As System.Object, e As System.EventArgs) _
      Handles Button1.Click
        Dim txt As String = TextBox1.Text
        Dim digitTxt As String = String.Empty
        For Each chr As Char In txt
            digitTxt &= mLetterDigitDict(chr).ToString
        Next
        MessageBox.Show(digitTxt)
    End Sub
 
End Class
Hier wird ein "Dictionary(Of TKey, TValue)" deklariert (mLetterDigitDict). Ein Dictionary ist im Prinzip eine spezielle Liste für Variablen-Paare(Key/Value). In deinem Fall Char-Integer. Das besondere ist dabei, dass im Dictionary kein Key doppelt vorkommen kann, sehr wohl aber ein Value. (Du kannst ja mal versuchen noch ein "p"c oder so hinzuzufügen). Ich denke das ist genau das, was du brauchst.

Wenn du jetzt einen Integer(Value) zu einem bestimmten Char(Key) haben willst, musst du dem Dictionary nur den Char übergeben und bekommst als Rückgabe den dazugehörigen Integer.
        Dim i As Integer = mLetterDigitDict("p"c)
Die Items eines Dictionary(Of TKey, TValue) sind übrigens vom Typ "KeyValuePair(Of TKey, TValue)". (Das kannst du aber erstmal ignorieren, wenn es dich zu sehr verwirrt; Ist nur für's tiefere Verständnis)
        For Each kvp As KeyValuePair(Of Char, Integer) In mLetterDigitDict
            Dim key As Char = kvp.Key
            Dim value As Integer = kvp.Value
            '...
        Next
Noch etwas zur Deklaration von Chars (Ich weiß jetzt nicht ob du das bereits verstanden hast; Ich hab nicht alles hier gelesen)
        Dim s As String = "p"c 'geht
        Dim s2 As String = "p" ' geht
 
        Dim c As Char = "p"c ' geht
        Dim c2 As Char = "p" 'geht nicht
 
        Dim c3 As Char = "pp"c 'geht nicht
Ich schreibe das, weil du im letzten Post dein Array als String deklariert hast, obwohl du ja eigentlich Chars benutzen willst.

Maas

@Dave&Manfred: Hat es einen speziellen Grund wieso ihr kein Dictionary vorgeschlagen habt?
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Buchstaben in Zahlen umwandeln und auf eine Grundzahl reduzi...2.216Hanna31.10.11 12:05
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.795Manfred X31.10.11 12:22
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.499ModeratorDaveS31.10.11 12:43
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.515Hanna31.10.11 12:44
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.362Hanna31.10.11 12:52
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.415ModeratorDaveS31.10.11 12:53
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.541Manfred X31.10.11 13:01
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.402Hanna31.10.11 13:00
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.434Manfred X31.10.11 13:16
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.470ModeratorDaveS31.10.11 13:21
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.452Hanna31.10.11 13:38
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.360Manfred X31.10.11 13:46
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.362Hanna31.10.11 14:00
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.419Manfred X31.10.11 14:17
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.505Hanna31.10.11 14:38
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.376Hanna01.11.11 12:55
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...2.730Manfred X01.11.11 13:37
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.834Maas01.11.11 13:36
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.524Manfred X01.11.11 13:42
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.424ModeratorDaveS01.11.11 17:19
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.420Maas01.11.11 17:24
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.469ModeratorDaveS02.11.11 13:01
Re: Buchstaben in Zahlen umwandeln und auf eine Grundzahl re...1.570Hanna08.11.11 10:52

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel