String in Int Array?

Baladhi

Mitglied
Hallo zusammen, ich habe gerade angefangen mit C# und habe mir ein kleines Projekt zum lernen erdacht. ich möchte ein Programm schreiben welches mir die Gültigkeit einer Personalausweisnummer errechnet. Dazu muss der Benutzer eine "Zahl" in eine Textbox eingeben. Nun kann ich ja damit nicht rechnen da es ja ein String ist und ich die einzelnen Zahlen brauche um damit Berechnungen anzustellen. Wenn der User also zb 22789 eingibt, muss ich mit jeder einzelnen Ziffer rechnen können. Wie zerlege ich also Diese Zahl und wie speichere ich sie dann am besten um mit ihnen rechnen zu können (mit einem Array?)? Ich wäre wirklich Dankbar wenn mir das jemand anhand eines kleinen Beispiels zeigen könnte. :)

Vielen lieben Dank schon mal.

MlG
 
Ah noch ein Osnabrücker?! :)
Ja, den String in ein Int zu verwandeln wäre nicht das Problem, das Problem ist den Int dann in einzelne Zeichen zu zerlegen. Also das ich mit der 2 eine Berechnung anstellen kann und mit der 7 und mit der 9 usw.

MlG
 
Yeep :p

Laufe einfach mit einer Schleife (über die Stringlänge) durch den String. Dann kannst Du jedes einzelne Zeichen ("myString.charAt(i)") vom char in einen Integer umwandeln!

Gruß
Klaus
 
Also ich habe mir nun die ersten 3 Seiten bei Google angesehen aber nichts passt auf meine Situation bzw dem was ich brauche. :-(
 
hab mal was zusammen getippt ich hoffe das geht für dich

Code:
            string zahl = "123456";

            int i = 0;
           
            List<int> numern = new List<int>();

            if (Int32.TryParse(zahl, out i))
            {
                while (i > 0)
                {
                    numern.Add(i % 10);
                    i = i / 10;
                }
                numern.Reverse();
            }
            else
            {
                // es ist kein Zahl
            }
 
Klasse, nun fehlt mir noch der Hinweis wie ich dann auf die einzelnen Zahlen zugreifen kann um mit ihnen zu rechen. Vielen lieben Dank. :)
 
Code:
            int summe = 0;

            foreach (var item in numern)
            {
                summe = summe + item;
             
            }

            for (int i = 0; i < numern.Count; i++)
            {
                summe =  summe + numern[i];
            }

            summe = (from x in numern select x).Sum();

            var s = (from x in numern where x == 2 select x).Count();

usw...

gruss Ademo

http://www.dotnetperls.com/list
 
Zuletzt bearbeitet:
Zurück