Mikuláš je tu! Získaj 90 % extra kreditov ZADARMO s promo kódom CERTIK90 pri nákupe od 1 199 kreditov. Len do nedele 7. 12. 2025! Zisti viac:
NOVINKA: Najžiadanejšie rekvalifikačné kurzy teraz s 50% zľavou + kurz AI ZADARMO. Nečakaj, táto ponuka dlho nevydrží! Zisti viac:

Diskusia – 6. diel - Podmienky (vetvenia) v C# .NET

Späť

Upozorňujeme, že diskusie pod našimi online kurzami sú nemoderované a primárne slúžia na získavanie spätnej väzby pre budúce vylepšenie kurzov. Pre študentov našich rekvalifikačných kurzov ponúkame možnosť priameho kontaktu s lektormi a študijným referentom pre osobné konzultácie a podporu v rámci ich štúdia. Toto je exkluzívna služba, ktorá zaisťuje kvalitnú a cielenú pomoc v prípade akýchkoľvek otázok alebo projektov.

Komentáre
Posledné komentáre sú na spodnej časti poslednej stránky.
Avatar
Odpovedá na Alesh
Bohumír Bednařík:30.6.2020 20:26

Takže jsem si to našel vlastně správně. Oproti VB je to ale dost "opruz".

Avatar
Andrea K.
Člen
Avatar
Andrea K.:26.8.2020 18:04

jenom technicka - formatovani mi bere Ctrl + KD :)

Avatar
Rostislav Pavelka:7.1.2021 15:31

Opravil bych poznámku - klávesové zkratky pro autoformat - CTRL+K CTRL+D je na celý dokument a CTRL+K CTRL+F na vybraný kód. [VS 2015]

Odpovedať
Svět je krásné místo k žití - hlavně se z něj ale neposrat :D
Avatar
Miloslav Soukup:29.3.2021 3:37

U části s "else" jsem si všimnul drobného nedodělku. Když máme dosadit jedničku, tak by se měla objevit nula. Ale defacto lze dosadit každé číslo kromě 0, abychom dostali tu nulu.

Avatar
Alesh
Tvůrce
Avatar
Odpovedá na Miloslav Soukup
Alesh:29.3.2021 11:43

Mějme číslo a, kde bude hodnota 0 nebo 1...

Avatar
Odpovedá na Alesh
Miloslav Soukup:31.3.2021 8:11

Bože, pardon, moje nevšímavost. Trochu se cítím trapně. :-D

Avatar
Soňa Malířová:3.4.2021 20:52

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... :)

 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();
            string prani = Console.WriteLine("Dobrou chuť!" );

            switch (vybranaMoznost)
            {
                case A:
                    Console.WriteLine("Zvoleno: Domácí vývar s nudlemi." + prani);
                    break;
                case B:
                    Console.WriteLine("Zvoleno: Čočková." + prani);
                    break;
                case C:
                    Console.WriteLine("Zvoleno: Šunková rolka s křenem." + prani);
                    break;
            }
        }
    }
}
Avatar
Alesh
Tvůrce
Avatar
Odpovedá na Soňa Malířová
Alesh:4.4.2021 0:35

První co vidím, že je blbě je toto:

string prani = Console.WriteLine("Dobrou chuť!" );

A pokud jde o tu neexistenci A, B, C, tak tam je problém v tom, že musíš ty stringy "uvozovkovat":

case "A":       // nikoli jen case A:

Jinak teda chtělo by se zamyslet, jak omezit ty volby písmen. T třeba vybereš možnost 3 = hlavní jídla, ale pak stejně vybíráš z A..N, přitom hlavní jídla jsou jen E..G.

Avatar
Odpovedá na Alesh
Soňa Malířová:4.4.2021 18:45

Děkuji moc, zkusila jsem to vyřešit takto a funguje to. Napadá Tě lepší vyřešení písmen?

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("Vyberte písmeno: ");
            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;
                case "D":
                    Console.WriteLine("Zvoleno: Topinka s pikantní směsí");
                    break;
                case "E":
                    Console.WriteLine("Zvoleno: Kuřecí řízek s bramborem");
                    break;
                case "F":
                    Console.WriteLine("Zvoleno: Svíčková s knedlíkem");
                    break;
                case "G":
                    Console.WriteLine("Zvoleno: Vepřo knedlo zelo");
                    break;
                case "H":
                    Console.WriteLine("Zvoleno: Zmrzlinový pohár");
                    break;
                case "I":
                    Console.WriteLine("Zvoleno: Jablečný závin");
                    break;
                case "J":
                    Console.WriteLine("Zvoleno: Sodovka");
                    break;
                case "K":
                    Console.WriteLine("Zvoleno: Minerální voda");
                    break;
                case "L":
                    Console.WriteLine("Zvoleno: Jablečný džus");
                    break;
                case "M":
                    Console.WriteLine("Zvoleno: Pivo");
                    break;
                case "N":
                    Console.WriteLine("Zvoleno: Turecká káva");
                    break;
                default:
                    Console.WriteLine("Zvolena blbost.");
                    break;
            }
            Console.WriteLine("Dobrou chuť!");
            Console.ReadKey();
        }
    }
}
Avatar
Alesh
Tvůrce
Avatar
Odpovedá na Soňa Malířová
Alesh:4.4.2021 20:06

Bez znalostí (alespoň) polí se to řešení vymýšlí docela blbě :-), ale i tak by šlo vymyslet řešení, jak zamezit volbám, které by nemělo jít zvolit. V tuto chvíli ty sice nabídneš uživateli písmenka, která má volit, ale stejně může zvolit cokoliv od A až po N a budou mu ty možnosti fungovat, bez ohledu na to, co zvolil za číslo. Jinak bych přidal pár prázdných řádků, aby to celé nebylo takové namaštěné na sebe.

*** Vítejte v naší restauraci! ***
Vyberte prosím z následující nabídky:
1. Polévky
2. Předkrmy
3. Hlavní jídla
4. Dezerty
5. Nápoje
Vybraná možnost 1..5: 3
HLAVNÍ JÍDLA:
E: Kuřecí řízek s bramborem
F: Svíčková s knedlíkem
G: Vepřo knedlo zelo
Vyberte písmeno:
N
Zvoleno: Turecká káva
Dobrou chuť!
Posledné komentáre sú na spodnej časti poslednej stránky.
Robíme čo je v našich silách, aby bola tunajšia diskusia čo najkvalitnejšia. Preto do nej tiež môžu prispievať len registrovaní členovia. Pre zapojenie sa do diskusie sa zaloguj. Ak ešte nemáš účet, zaregistruj sa, je to zadarmo.

Zobrazené 10 správy z 173.