2017-10-03 5 views
3

Der Code:C# Wie verwende ich eine Variable außerhalb einer Schleife, die innerhalb der Schleife von String zu Int wechselt?

string[] numbers = new string[2]; 
for (int i = 0; i < numbers.Length; i++) 
{ 
    numbers[i] = Console.ReadLine(); 
    if (int.TryParse(numbers[i], out int numberTry) && i == 0) 
     Console.WriteLine("That would be a number yes."); 

    else if (int.TryParse(numbers[i], out numberTry)) 
     Console.WriteLine("Lovely work! That is indeed two numbers!"); 

    else 
    { 
     Console.Clear(); 
     Console.WriteLine("That's not a number. I am dissapointed."); 
     Console.ReadKey(); 
     Environment.Exit(0); 
    } 
} 

Mein Problem hier ist, dass ich keine Zahlen [] außerhalb der Schleife als int verwenden kann, weil sie von einem String in einem int Innenseite der Schleife chancges. Ich muss in der Lage sein, es mit einer Methode als int zu senden, um eine Operation auf Zahlen [0] und Zahlen [1] durchzuführen. Vielen Dank im Voraus!

+2

Sie können ein weiteres Array von Ints erstellen, das Sie in Ihre Schleife einfügen. – Chris

+0

Danke für die Idee! – Hagwill

Antwort

5

Könnten Sie das versuchen? Es sollte funktionieren.

int[] numbers = new int[2]; 
    for (int i = 0; i < numbers.Length; i++) 
    { 
     var number = Console.ReadLine(); 
     if (int.TryParse(number, out int numberTry) && i == 0) 
     { 
      Console.WriteLine("That would be a number yes."); 
      numbers[i] = numberTry; 
     } 
     else if (int.TryParse(number, out numberTry)) 
     { 
      Console.WriteLine("Lovely work! That is indeed two numbers!"); 
      numbers[i] = numberTry; 
     } 
     else 
     { 
      Console.Clear(); 
      Console.WriteLine("That's not a number. I am dissapointed."); 
      Console.ReadKey(); 
      Environment.Exit(0); 
     } 
    } 

    Console.ReadKey(); 
+0

Das schien ja zu funktionieren! Prost! Nun, wenn es dir nichts ausmacht, was hast du genau gemacht, da ich keine anderen Unterschiede zu finden vermag, als die "Zahlen [i] = ZahlTry". – Hagwill

+0

@Hagwill Ich habe das Array string [] in das Array int [] geändert. dann lese ich ihren Wert von der Konsole in der Zahl Variable. Ich füge diesen Wert dem Array numbers [] innerhalb der Bedingung hinzu. Wenn es korrekt ist, könnten Sie auf den Upvote klicken? habe gute Arbeit. – arslanaybars

+0

Ah okay vielen Dank für die Erklärung. Ich tat, aber ich habe 8 Ruf, so dass Sie es nicht sehen können. Viel Glück bei Ihrer zukünftigen Arbeit! – Hagwill

Verwandte Themen