C# - 9. lekce: příkazy break, continue, goto, if - else, switch
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama

C# - 9. lekce: příkazy break, continue, goto, if - else, switchC# - 9. lekce: příkazy break, continue, goto, if - else, switch

 

C# - 9. lekce: příkazy break, continue, goto, if - else, switch

Google       Google       15. 12. 2009       64 612×

V dnešní lekci se dozvíte základní syntaxi příkazů řízení toku programu: break, continue, goto, if - else a switch.

Reklama
Reklama

break

Příkaz 'break' umožňuje vyskočit z právě probíhaného cyklu 'while' nebo 'for' a z příkazu 'switch'. Následující příklad ukazuje možné použití příkazu 'break'. Na výstupu vrátí program čísla od 0 do 4.

int a = 0;
while (true)
{
    System.Console.WriteLine(a);
    a++;
    if (a == 5)
        break;
}

continue

Příkaz continue může být použit v jakémkoli druhu cyklu a pokud je proveden, přeruší právě probíhanou smyčku cyklu a přesune se na další. Více můžete vidět v následujícm příkladu, který spočítá počet všech čísel od 0 do 100, která nejsou dělitelná 7.

int y = 0;
for (int x=1; x<101; x++)
{
    if ((x % 7) == 0)
        continue;
    y++;
}
System.Console.WriteLine(y);

goto

Příkaz goto se používá ke skoku na jiné místo v programu, které je označeno návěštím. Také se používá u příkazu switch, který je popsán níže. Příkaz goto můžeme použít ke konstrukci cyklu, jak je ukázáno v následujcím příkladu (ovšem toto použití není doporučeno).

int a = 0;
start:
System.Console.WriteLine(a);
a++;
if (a < 5)
    goto start;

if - else

Příkaz 'if-else' se použije pro dělení programu do dvou větví na základě logické podmínky. Pokud je podmínka vyhodnocena jako TRUE, provede se větev za if klauzulí. Pokud je podmínka vyhodnocena jako FALSE, provede se větev programu za klausulí else. Celá větev včetně klíčového slova else je volitelná a pokud ji programátor nepotřebuje, nemusí ji uvádět. Následující příklad ukáže jednoduché použití if - else konstrukce:

if (a == 5)
    System.Console.WriteLine("A is 5");
else
    System.Console.WriteLine("A is not 5");

Příkaz if může být nahrazen pomocí operátoru podmínky, která vrací jednu ze dvou hodnot v závislosti na podmínce. V příkladu můžete vidět použití operátoru podmínky. Pokud je proměnná myBoolean TRUE, uloží se do proměnné 'i' číslo 1, pokud je FALSE, uloží se do 'i' číslo 0.

int i = (myBoolean) ? 1 : 0 ;

Příkaz 'if' z předchozího příkladu by proto mohl být přepsán použitím operátoru podmínky následovně:

System.Console.WriteLine( a==5 ? "A is 5" : "A is not 5");

switch - default

Příkaz 'switch' nám slouží k větvení programu do více větví. Mohli bychom použít několikanásobné použití příkazu 'if-else', ale to by nebylo přehledné a elegantní jako použití příkazu 'switch'. Následující příklad vrátí 'a>1 and a>0', pokud 'a' je rovno 2. Pokud se rovná 1, bude na výstupu 'a>0' a pokud je proměnná 'a' cokoliv jiného, bude na výstupu oznámení 'a is not set'.

switch(a)
{
    case 2:
        Console.WriteLine("a>1 and ");
        goto case 1;
    case 1:
        Console.WriteLine("a>0");
        break;
    default:
        Console.WriteLine("a is not set");
        break;
}

Každá větev za klíčovým slovem 'case', která obsahuje nějaký příkaz nebo blok příkazů, musí být zakončená příkazem break;, goto case k; ( kde k je označení jiného case) nebo goto default;. Pokud za 'case' není žádný příkaz, nemusí se výše zmíněné příkazy použít.

Následující příkaz ilustruje popsané pravidlo chování příkazu switch v jazyku C#. Na výstupu bude "a>0" pro vstup 1 i pro vstup 2.

switch(a)
{
    case 1:
    case 2:
        Console.WriteLine("a>0");
        break;
    default:
        Console.WriteLine("a is not set");
        break;
}
Zdroj: http://www.softsteel.co.uk/tutorials/cSharp/lesson10.html

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

Hlasování bylo ukončeno    
0 hlasů
Google
Autor se zabývá programováním v C, C++, Java, C#.

Nové články

Obrázek ke článku DistrCut – optimalizace pomocí distribuované inteligence

DistrCut – optimalizace pomocí distribuované inteligence

Optimalizační systémy, které jsem dosud popisoval, se týkaly vždy optimalizace na jednom zařízení. Optimalizovalo se dělení tyčového materiálu na jedné pile, vypalování plošného materiálu na jednom plazmovém stroji, řídilo se tavení na jedné elektrické obloukové peci.

Ve výrobním procesu je však často nutné optimalizovat činnost celého výrobního úseku, kde je více různých objektů odlišného typu a koordinovat činnost těchto objektů k dosažení společného cíle, zpravidla kvality finálního výrobku. Řešení tohoto problému umožňuje distribuovaná inteligence.

Reklama
Reklama

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032017 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý