
Podmínky v C#
Ahojte ve spolek! Zkouším si naprogramovat menu v restauraci. Jen jsem se trochu sekla u podmínek. Byl by někdo prosím tak hodný a mrknul se mi na to a případně dal radu? Ve VS mi to háže chybu, že A,B,C atd. neexistuje. A pak ještě mi to nechce přijmout - string prani.
Kdo se do toho pustí, bude nejlepší! Předem moc děkuju... :)
Pro info - učím se programovat teprve pár týdnů, tak se mi moc kdyžtak nesmějte :)
using System;
namespace menu
{
class Program
{
static void Main(string[] args)
{
Console.WriteLine("*** Vítejte v naší restauraci! ***");
Console.WriteLine("Vyberte prosím z následující nabídky: ");
Console.WriteLine("1. Polévky");
Console.WriteLine("2. Předkrmy");
Console.WriteLine("3. Hlavní jídla");
Console.WriteLine("4. Dezerty");
Console.WriteLine("5. Nápoje");
Console.Write("Vybraná možnost 1..5: ");
int vybranaKategorie = int.Parse(Console.ReadLine());
switch (vybranaKategorie)
{
case 1:
Console.WriteLine("POLÉVKY: ");
Console.WriteLine("A: Domácí vývar s nudlemi");
Console.WriteLine("B: Čočková");
break;
case 2:
Console.WriteLine("PŘEDKRMY: ");
Console.WriteLine("C: Šunková rolka s křenem");
Console.WriteLine("D: Topinka s pikantní směsí");
break;
case 3:
Console.WriteLine("HLAVNÍ JÍDLA: ");
Console.WriteLine("E: Kuřecí řízek s bramborem");
Console.WriteLine("F: Svíčková s knedlíkem");
Console.WriteLine("G: Vepřo knedlo zelo");
break;
case 4:
Console.WriteLine("DEZERTY: ");
Console.WriteLine("H: Zmrzlinový pohár");
Console.WriteLine("I: Jablečný závin");
break;
case 5:
Console.WriteLine("NÁPOJE: ");
Console.WriteLine("J: Sodovka");
Console.WriteLine("K: Minerální voda");
Console.WriteLine("L: Jablečný džus");
Console.WriteLine("M: Pivo");
Console.WriteLine("N: Turecká káva");
break;
default:
Console.WriteLine("Neznámá volba");
break;
}
Console.WriteLine("Zvol písmeno A..N: ");
string vybranaMoznost = Console.ReadLine();
switch (vybranaMoznost)
{
case A:
Console.WriteLine("Zvoleno: Domácí vývar s nudlemi.");
break;
case B:
Console.WriteLine("Zvoleno: Čočková.");
break;
case C:
Console.WriteLine("Zvoleno: Šunková rolka s křenem.");
break;
}
}
}
}
Stejně bych to dělal úplně jinak
menu.h :
mygetchar.cpp : https://stackoverflow.com/questions/22028142/read-only-one-char-from-cin
menu.cpp :
Krasny kod z roku 1989. Nicmene, tazatel chtel C#.
Hmm, nějak jsem zaměnil # a ++ - nicméně to funguje a mělo by to jít celkem snadno upravit.
Pokud se nelíbí mygetchar, tak se používá na jediném místě a jde místo nej použít cokoli, co vrací jeden znak a ten soubour vyhodit celý - proto jsem to dal zvlášť.
Ale jestli to umíš líp, tak se nestyď a hoď sem tvojí variantu, ať vidíme, jak se to podle tebe dělá dnes - těším se, že to tu do odpoledne bude ve vší kráse