C# Ja nein abfrage?
In C# würde ich gerne eine abfrage machen, momentan fragt die konsole den benutzer in einer story ob dieser etwas trinken möchte, was müsste ich jetzt machen, damit dieser ja oder nein (bzw j/n oder y/n) eingeben kann, und dann bei ja das nächste abgefragt wird, bei nein einfach übersprungen wird und mit der haupt-storyline weitermacht
3 Antworten
Console.ReadKey()
Oder ReadLine()
Ich empfehle dir Key statt Line
Was passiert entscheidest du mit einem If oder Switch.
Für genaueres müsste man den Aufbau deines Programms kennen
so lange du ein lineares story board hast ist deine schreibweise vielleicht einfacher,
solltest du aber ja/nein auswerten und verzweigte antworten weiterspringen wünsche ich dir mit deiner löusung vielspaß, mal sehen wie weit du lust hast das in einem stück zu verschachteln.
mir fallen noch ein paar möglichkeiten mehr ein, aber wer den aufwand scheut etwas richtig zu machen sollte kein programmierer werden wollen.
pfushc lösungen "mal eben schnell" "sieht schöner aus" holen einen irgenwann ein und fängt wieder von vorne an.
Hier ein banales Beispiel kann man noch verbessern:
namespace test
{
class Class1
{
public Class1 ()
{
Step1();
}
public void Step1()
{
Console.Clear();
Console.WriteLine("Erste Frage, weiter zur nächsten?");
Console.WriteLine("[Y/N]");
switch (Console.ReadKey().KeyChar)
{
case 'y':
case 'Y':
Step2();
break;
case 'n':
case 'N':
QuitStep1();
break;
}
}
public void QuitStep1()
{
Console.Clear();
Console.WriteLine("Programm beenden?");
Console.WriteLine("[Y/N]");
switch (Console.ReadKey().KeyChar)
{
case 'y':
case 'Y':
break;
case 'n':
case 'N':
Step1();
break;
}
}
public void Step2()
{
Console.Clear();
Console.WriteLine("Zweite Frage");
Console.WriteLine("[Y/N]");
switch (Console.ReadKey().KeyChar)
{
case 'y':
case 'Y':
break;
case 'n':
case 'N':
break;
}
}
}
}
Console.WriteLine("Skip?");
var answer = Console.ReadLine();
if (answer == "n")
{
Console.Write("Story zum Skippen");
}
Console.WriteLine("Und hier gehts weiter");
Console.ReadKey();
Eigentlich ziemlich basic, oder?
jain, es soll danach weitergehen, so würde dann nach einem n das " story zum skippen" und "hier geht's weiter" kommen
also, nach der frage ob man was trinken will und man mit nein antwortet soll der die nächste frage stellen, sagen wir mal was man vor hat und wenn man ja sagt soll der erst fragen was man trinken will und dann was man vor hat, also die selbe frage wie nach nein
private static bool hasDrunk = false;
public static void Main()
{
Drink();
Console.WriteLine("was hast du vor");
Console.ReadLine();
Drink();
Console.ReadKey();
}
private static void Drink()
{
if (hasDrunk)
return;
Console.WriteLine("Trinken?");
var answer = Console.ReadLine();
if (answer == "j")
{
Console.Write("Ja haha ich trink was");
hasDrunk = true;
}
}