Guten Morgen, guten Mittag oder auch guten Abend wann auch imemr die liebe Community das liest.
Ich fange gerade damit an C# zu lernen. Nun wollte ich ein Programm erstellen das nach einer Zahl fragt und daraufhin, je nachdem welche Zahl man angegeben hat, x mal nach einem Namen und einer Adresse fargt (Hänge schon am Namen fest deswegen nciht wundern das Adresse im Code fehlt.)
Nun gut die Schleife funktioniert. Er fargt x mal nach einem Namen und gibt den angegebenen Namen direkt mit einer Indexnummer aus.
Nun soll man sich nachdem die Schleife abgelaufen ist für eine der Namen entscheiden (mithilfe der Indexnummern). Daraufhin möchte ich die Variable aus der FOR Schleife die gewält wurde ausgeben. Da er mich nicht x mal nach der Nummer fragen soll sondern am Ende lediglich eine gewählt werden soll ist das was ich geschrieben habe der für mich als Neuling einzige logische Weg. Mir ist klar das auf eine Variable innerhalb einer FOR Schleife nicht von außerhalb zugegriffen werden kann deswegen frage ich hier nach einer guten Lösung. (Google Ergebnisse schlagen mir nur vor z.B. die Variable vor der Schleife zu definieren aber dann müsste man nur einen Namen angeben und nicht x Namen oder?)
Ach und bitte helft mir nur bei dem beschriebenen Problem, sollten euch weitere Fehler auffallen bitte nicht verraten! Mein Motto ist Learning by Doing und ich will weitere Fehler gerne selber finden,erfahren und beheben.
Danke!
Mit freundlichen Grüßen,
David
Ich fange gerade damit an C# zu lernen. Nun wollte ich ein Programm erstellen das nach einer Zahl fragt und daraufhin, je nachdem welche Zahl man angegeben hat, x mal nach einem Namen und einer Adresse fargt (Hänge schon am Namen fest deswegen nciht wundern das Adresse im Code fehlt.)
Nun gut die Schleife funktioniert. Er fargt x mal nach einem Namen und gibt den angegebenen Namen direkt mit einer Indexnummer aus.
Nun soll man sich nachdem die Schleife abgelaufen ist für eine der Namen entscheiden (mithilfe der Indexnummern). Daraufhin möchte ich die Variable aus der FOR Schleife die gewält wurde ausgeben. Da er mich nicht x mal nach der Nummer fragen soll sondern am Ende lediglich eine gewählt werden soll ist das was ich geschrieben habe der für mich als Neuling einzige logische Weg. Mir ist klar das auf eine Variable innerhalb einer FOR Schleife nicht von außerhalb zugegriffen werden kann deswegen frage ich hier nach einer guten Lösung. (Google Ergebnisse schlagen mir nur vor z.B. die Variable vor der Schleife zu definieren aber dann müsste man nur einen Namen angeben und nicht x Namen oder?)
Code:
class Program
{
static void Main(string[] args)
{
//Es wird nach einer Wunsch Zahl gefragt.
Console.Out.WriteLine("Wie viele Adressen wollen Sie angeben?");
int i = int.Parse(Console.In.ReadLine());
//Nun wird man aufgefordert die gewählte Anzahl an Namen & Adressen anzugeben.
Console.Out.WriteLine("Bitte geben Sie " + i + " Name(n) und die dazugehörigen Adresse(n) an.");
for ( int a = 0; a < i; a += 1)
{
//Die Namen sollen angegeben und mit einer Index Nummer ausgegeben werden.
Console.Out.WriteLine("Name: ");
string[] names = new string[i];
names[a] = Console.In.ReadLine();
int c = a + 1;
Console.Out.WriteLine("[" + c + "]" + names[a]);
}
//Man soll eine Indexnummer wählen. Daraufhin soll der Inhalt der gewählten Nummer ausgegeben werden.
Console.Out.WriteLine("Wählen Sie bitte eine Nummer.");
int w = int.Parse(Console.In.ReadLine());
Console.Out.WriteLine(names[w]); //Liegt außerhalb der Schleife und kannd eswegen nicht auf "names[w]" zugreifen. Lösung?
Console.In.Read();
}
}
Ach und bitte helft mir nur bei dem beschriebenen Problem, sollten euch weitere Fehler auffallen bitte nicht verraten! Mein Motto ist Learning by Doing und ich will weitere Fehler gerne selber finden,erfahren und beheben.
Danke!
Mit freundlichen Grüßen,
David
Zuletzt bearbeitet: