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 14 - Cykly v C# .NET podruhé - do-while, break a continue

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
David Novák
Tvůrce
Avatar
Odpovídá na Jaroslav Drobek
David Novák:28.9.2023 6:25

Ahoj Jaroslave, děkujeme za podnět. Chybu jsme opravili.

 
Odpovědět
28.9.2023 6:25
Avatar
Jindřich Kopáček:28.1.2024 16:38

článek v pořádku, jen mám jiný názor na break v cyklu. Přijde mi užitečný, jepší jjak na každý prd extra metoda.

 
Odpovědět
28.1.2024 16:38
Avatar
DarkCoder
Člen
Avatar
DarkCoder:28.1.2024 17:13

Na úvod by bylo dobré podotknout, že dnešní lekce obsahuje méně používané praktiky a slouží hlavně k tomu, aby vás nepřekvapily v cizím kódu. Není příliš důležité, abyste je sami uměli používat.

To doufám nemyslíte vážně.

Příkaz break se v praxi často nahrazuje příkazem return za předpokladu, že je kód v naší vlastní metodě.

Příkaz return rozhodně nesupluje příkaz break!

Odpovědět
28.1.2024 17:13
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
Pavla Sklenářová:17.10.2024 17:23

Rozdíl mezi while a do-while stručně a jasně v přiloženém obrázku :-)

Odpovědět
17.10.2024 17:23
Nepropadejte panice.
Avatar
Michal Marek
Člen
Avatar
Michal Marek:26.11.2024 14:06

Příklad na continue funguje stejně i bez !negace a continue, tudíž je tam continue zbytečně.

 
Odpovědět
26.11.2024 14:06
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Michal Marek
DarkCoder:26.11.2024 15:36
using System;

class Program
{
    static void Main()
    {
        string cislaRetezec = "10,50,abcd,30,9";
        string[] cislaPole = cislaRetezec.Split(',');
        int soucet = 0;

        foreach (string cislo in cislaPole)
        {
            int celeCislo;

            if (!int.TryParse(cislo, out celeCislo))
                continue;

            soucet += celeCislo;
        }

        Console.WriteLine("Soucet je: " + soucet);
    }
}

Pokud zakomentuješ řádky:

if (!int.TryParse(cislo, out celeCislo))
    continue;

dojde k běhové chybě

Odpovědět
26.11.2024 15:36
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
Avatar
Jan Ráž
Člen
Avatar
Jan Ráž:22. ledna 15:36

Toto upozornění:"Ač dnešní lekce obsahovala standardní gramatiku C# .NET pro
cykly, z nových konstrukcí používejte pouze
do-while a continue. Přechodně ještě
můžete používat break, než se dostaneme k objektům." je docela matoucí. Evokuje, že v případě použití OOP bychom neměli používat break. Přitom i při OOP je spoustu situací, kdy není vhodné pro každý "vyhledávací" cyklus dělat samostatnou metodu končící return;.

 
Odpovědět
22. ledna 15:36
Avatar
DarkCoder
Člen
Avatar
Odpovídá na Jan Ráž
DarkCoder:22. ledna 16:19

Téměř všechny tipy v této lekci jsou dosti mimo mísu. Je tedy dobré je vůbec nebrat v potaz. Autor se zkrátka nesetkal s jejich užitečností.

Oba výše deklarované cykly běží donekonečna a můžete se s nimi setkat ve špatně napsaných zdrojových kódech spolu s příkazy break, které z nich potom za nějakých podmínek vyskakují.

Toto je další perla..

Odpovědět
22. ledna 16:19
"I ta nejlepší poučka postrádá na významu, není-li patřičně předána." - DarkCoder
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 8 zpráv z 18.