NOVINKA - Online rekvalifikační kurz Python programátor. Oblíbená a studenty ověřená rekvalifikace - nyní i online.
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.

Diskuze – Lekce 6 - Podmínky (větvení) v C# .NET

Zpět

Upozorňujeme, že diskuze pod našimi online kurzy jsou nemoderované a primárně slouží k získávání zpětné vazby pro budoucí vylepšení kurzů. Pro studenty našich rekvalifikačních kurzů nabízíme možnost přímého kontaktu s lektory a studijním referentem pro osobní konzultace a podporu v rámci jejich studia. Toto je exkluzivní služba, která zajišťuje kvalitní a cílenou pomoc v případě jakýchkoli dotazů nebo projektů.

Komentáře
Avatar
Odpovídá 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".

 
Odpovědět
30.6.2020 20:26
Avatar
Andrea K.
Člen
Avatar
Andrea K.:26.8.2020 18:04

jenom technicka - formatovani mi bere Ctrl + KD :)

 
Odpovědět
26.8.2020 18:04
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]

Odpovědět
7.1.2021 15:31
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.

 
Odpovědět
29.3.2021 3:37
Avatar
Alesh
Tvůrce
Avatar
Odpovídá na Miloslav Soukup
Alesh:29.3.2021 11:43

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

 
Odpovědět
29.3.2021 11:43
Avatar
Odpovídá na Alesh
Miloslav Soukup:31.3.2021 8:11

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

 
Odpovědět
31.3.2021 8:11
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;
            }
        }
    }
}
 
Odpovědět
3.4.2021 20:52
Avatar
Alesh
Tvůrce
Avatar
Odpovídá 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.

 
Odpovědět
4.4.2021 0:35
Avatar
Odpovídá 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();
        }
    }
}
 
Odpovědět
4.4.2021 18:45
Avatar
Alesh
Tvůrce
Avatar
Odpovídá 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ť!
 
Odpovědět
4.4.2021 20:06
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 10 zpráv z 172.