Ich habe ein einfaches Programm erstellt, in dem der Benutzer eine Frage beantworten muss und am Ende sieht, wie viel Kredit er bekommen hat. Die Antwort sollte "Ja" oder "Nein" lauten. Und kürzlich (nachdem ich mein Programm beendet habe und es gut funktionierte) habe ich festgestellt, dass es ein ToUpper()
gibt. Also wollte ich es in meinem Programm eingeben. Ich habe if Anweisung für useranwer Ja oder Nein verwendet und da ich nicht so schreiben kann: Wenn (answer1 == ja), habe ich "Ja" in einer Zeichenfolge namens s gespeichert. Und es hat funktioniert, aber ich kann jetzt nicht s.ToUpper
verwenden. Also musste ich von if-Anweisung zu switch-Anweisung wechseln und alles geht gut außer dieser nicht zugewiesenen lokalen Variable, die speichert, wie viel jede Frage Kredit hat. Das Falsche ist in g = i1 + i2 + i3 + i4 + i5
. Diese "i" sind wertlos. Kann mir jemand helfen? Und wenn es eine Möglichkeit gibt, ToUpper mit if-Anweisung zu verwenden, macht es mir nichts aus, sie erneut zu verwenden. Hier ist mein Code:Warum bekomme ich "Verwendung von nicht zugewiesenen lokalen Variablen"?
int p = 0;
int i1;
int i2;
int i3;
int i4;
int i5;
int g;
int qu1 = 10;
int qu2 = 20;
int qu3 = 20;
int qu4 = 25;
int qu5 = 25;
Console.WriteLine("Calculating the probability of being diabete patient, please answer by yes or no");
Console.Write("What is your name ? \n");
string username = Console.ReadLine();
Console.Write("Do you smoke ? \n");
string answer1 = Console.ReadLine();
switch(answer1.ToUpper())
{
case "YES":
i1 = p + qu1;
break;
case "NO":
i1 = p + 0;
break;
}
Console.Write("do one of your parents have diabetes ? \n");
string answer2 = Console.ReadLine();
switch (answer2.ToUpper())
{
case "YES":
i2 = p + qu2;
break;
case "NO":
i2 = p + 0;
break;
}
Console.Write("do u eat ? \n");
string answer3 = Console.ReadLine();
switch (answer3.ToUpper())
{
case "YES":
i3 = p + qu3;
break;
case "NO":
i3 = p + 0;
break;
}
Console.Write("do u drink ? \n");
string answer4 = Console.ReadLine();
switch (answer4.ToUpper())
{
case "YES":
i4 = p + qu4;
break;
case "NO":
i4 = p + 0;
break;
}
Console.Write("do u speak ? \n");
string answer5 = Console.ReadLine();
switch (answer5.ToUpper())
{
case "YES":
i5 = p + qu5;
break;
case "NO":
i5 = p + 0;
break;
}
g = i1 + i2 + i3 + i4 + i5;
Console.WriteLine(username + "," + "your percentage of gtting diabetes is {0}", g + "%");
if (g == 100)
{
Console.WriteLine("You need to take care, and try to follow a healthy lifestyle and stop smoking");
}
if (g >= 50)
{
Console.WriteLine("Pay attention, you are no longer in the safe zone");
}
if (g <= 50)
{
Console.WriteLine("You are in the safe zone, but you can decrease the percentage if you take a little bit care of your health");
}
Console.ReadKey();
Sie tun können:.. 'String answerX = Console.ReadLine() Trim() ToUpper()', dann 'if (answer1 == "YES") {...} else {...} ' –