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
Marek Vajčner:1.3.2020 1:17

Také chci vyjádřit svůj dík. Hlavně za ty příklady kódu. Jsou jasné a srozumitelné. Díky.

Avatar
David
Člen
Avatar
David:4.3.2020 0:24

Ahoj. Zjišťoval jsem rozdíl mezi relačními operátory a logickými operátory. Relační operátory slouží k porovnávání dvou hodnot – nejčastěji se jedná o číselné hodnoty. Logické operátory pracují s operandy jako s logickými, tedy pravdivostními hodnotami true (pravda) a false (nepravda). Podle těchto definic by obecná negace patřila do logických operátorů, protože pracuje s pravdivostními hodnotami. Např: !(false). Děkuji.

Avatar
Robin Blažek:22.3.2020 10:06

Ahoj, díky moc za další parádní článek. S takovými podklady je doslova radost se C# učit.

Avatar
Martin Košař:13.6.2020 9:25

díky moc za lekce! Učím se doma, od nuly a tohle mi moc pomáhá.

Avatar
Savi
Člen
Avatar
Savi:17.6.2020 7:47

Ahoj,

při opakování lekce jsem měl v kódu toto:

while (odpoved != "ano" || odpoved != "ne")
                {
                    Console.WriteLine("zadej odpoved jeste jednou: ");
                    odpoved = Console.ReadLine();
                }

ale to nefungovalo.

Fungovalo to až jako:

while (odpoved != "ano" && odpoved != "ne")
                {
                    Console.WriteLine("zadej odpoved jeste jednou: ");
                    odpoved = Console.ReadLine();
                }

Proč nefunguje ta první možnost ? Jde to nějak slovně popsat? Děkuji

Avatar
Alesh
Tvůrce
Avatar
Odpovedá na Savi
Alesh:17.6.2020 9:26

Tak jde vlastně o negaci složených výroků, viz např. http://www.mocz.pecos.cz/…-vyroku.html
Začněme od situace, kdybys chtěl opak, tj. podmínku, že odpověď je "ano" nebo je "ne":

while (odpoved == "ano" || odpoved == "ne")

Jasné, že? Ty ji potřebuješ ale celou znegovat:

while (!(odpoved == "ano" || odpoved == "ne"))

Furt jasné, viď? Dokud odpověď není ("ano" nebo "ne").
A teď se mrkni do toho odkazu:
A∨B negujeme: ¬(A ∨ B), což je ekvivalentní ¬A ∧ ¬B, čili předešlý kód lze zapsat i tak, jak jsi to nakonec vyzkoumal ty sám :-):

while (odpoved != "ano" && odpoved != "ne")

Dokud odpověď není "ano" a není ani "ne".
Čeština je v tomto poněkud matoucí, však si všimni jak oproti angličtině nelogicky tvoříme zápory.

Editované
Avatar
Savi
Člen
Avatar
Odpovedá na Alesh
Savi:17.6.2020 13:48

Děkuji za super vysvětlení ! :-)

Avatar
Bohumír Bednařík:30.6.2020 19:25

V článku mi chybí uvedení konstrukce switch/case takové, ve které by bylo možné otestovat více hodnot najednou. Uvedu příklad: Budu mít cyklus o 100 průchodech a chci řešit různé výstupy pro intervaly od 0 do 10, od 11 do 20, atd. Přece nebudu vypisovat všechny hodnoty stylem:

case 0:
case 1:
case 2:
atd.

Jsem úplný začátečník v C#. Ve VB bych to napsal zhruba jako:

case 0 to 10:
case 11 to 20:
atd.

Jak na to? Našel jsem si řešení následujícího typu, ale nevím, jestli je to tak správně:

case int j when ((j>0) && (j<11)):
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.