www.amapro.cz & David Bazala [Programování]

Otevře webové stránky AmaPro


Otevře hlavní stránku společnosti AmaPro
Internetové stránky určené pro studenty středních a vysokých odborných škol.


amapro.cz/odkazy Projekt eliminuje vyhledávání klíčových slov na komerčních stránkách a v e-schopech.



Nový projekt AmaPro

 

else

 

Jedná se o standardní příkaz Céčka, který se používá k doplnění reakce na test podmínky u příkazu if. V případě, že výsledkem testu je NEPRAVDA, false, nebo NULL není proveden příkaz, či tělo za if a běh programu pokračuje dalším příkazem. Vložením návěstí else za if, lze říci, že v případě NEPRAVDY výsledku testu se má provést příkaz, či tělo v bloku else. Jednoduše lze celou konstrukci if-else říci jako „jestliže – pak – jinak“.

 

Obecné schéma konstrukce else:

 

if (podmínka)

         {příkazy}

else

         {příkazy}

 

Tato konstrukce provede blok příkazy za else jen tehdy, nebude-li podmínka splněná. Z toho vyplývá, že program provede vždy pouze jen příkazy podmínkou nebo za else. Nikdy obojí za ráz.

 

Jednodušší konstrukce else

 

if (podmínka)

         příkaz ;

else

         příkaz ;

 

Konstrukce if a else dovolují vynechání složených závorek, pokud je tělo příkazů tvořeno pouze jedním příkazem. Středníky jsou pak důležité a platnost příslušného příkazu je vždy po první středník.

 

Specifické konstrukce if a else

 

if (podmínka)

 ;

else

         příkazy ;

 

Konstrukce if a else dovoluje i tuto konstrukci, kde je vynechán příkaz za if. Středník je velmi důležitý a zpravidla jej pro přehlednost dáváme na další řádek. Jedná se o bez příkazovou část těla if. V praxi se používá jen výjimečně, lze ji totiž nahradit logicky opačnou konstrukcí (pouze s if).

 

PŘÍKLAD: else_1

int x=1;                                                                 //alokace a inicializace x jako int

if(x==1)                                                                 //test podmínky pro if

  {                                                                          //počátek těla if

  cout<<"x je rovno 1"<<endl;                          //výpis informační zprávy

  x=2;                                                                     //modifikace int x

  cout<<"bude vykonáno";                              //již není podstatné že se x nerovná 1

  }                                                                          //konec těla if

else                                                                       //příznak pro nejbližší předchozí if

  {                                                                          //počátek těla else

  cout<<"x není rovno 1"<<endl;                     //výpis informační zprávy

  x=1;                                                                     //modifikace int x

  cout<<"bude vykonáno";                              //již není podstatné že se x rovná 1

  }                                                                          //konec těla else

getchar();                                                             //čekání na entr

return 0;                                                               //výstup z konzolové aplikace

 

Program demonstruje doplňující příkaz else v příkazu if. Příkaz if testuje ve své podmínce x==1. To je nastaveno již před testem na hodnotu 1. Výsledkem testu je PRAVDA a běh programu pokračuje tělem příkazu if. Vypíše informační zprávu cout a změní int x na hodnotu 2. Ačkoliv podmínka již neplatí, budou vykonány všechny příkazy až po konec těla if, tedy první složenou zásuvku. Program nalézá instrukci else a ví, že již pro if akci provedl a automaticky přeskakuje tělo příkazu pro else na příkaz getchar().Dále pak čekání na entr a ukončení konzolové aplikace.

 

PŘÍKLAD: else_2

int x=0;                                  //alokace a inicializace x jako int

if(x==1)                  //test podmínky pro if

   ;                                           //prázdný příkaz a nutný středník

else                                        //doplňující část podmínky else

cout<<"x není 1";                //příkaz části else

getchar();                              //čekání na entr

return 0;               //výstup z konzolové aplikace

 

Tento příklad demonstruje využití prázdného příkazu v těle podmínky if. Program alokuje a inicializuje proměnnou x na hodnotu 0, která dále prochází podmínkou x==1, která je nepravda. Běh programu přeskakuje tělo, či příkaz pro if (v našem případě není) a onen důležitý středník určuje konec prázdného příkazu pro if. Následuje else, což musí být provedeno. Změníme-li int x=1, provede se prázdný příkaz (v podstatě nic) a část else se přeskočí.

 

 

PŘÍKLAD: else_3

int x=1;                                                  //alokace a inicializace x jako int

if(x==1)                                                 //test podmínky pro if

   cout<<"x je rovno 1"<<endl;                         //výpis informační zprávy

else                                                                       //doplňující část podmínky else

   cout<<"x není rovno 1"<<endl;                    //příkaz části else, také konec části else

   cout<<"se provede"<<endl;                         //proběhne vždy, hodnota x není podstatná

getchar();                                             //čekání na entr

return 0;                                                //výstup z konzolové aplikace

 

Tento příkaz demonstruje možnost vzniku nechtěnné chyby v programu. Jedná se především o styl zápisu, tabulátorování a neuvážené redukce počtu nadbytečných ale často užitečných znaků. Program testuje hodnotu x a dle výsledků podmínky dochází k větvení na příkaz v části if nebo v části else. Jedná se pouze u jeden příkaz, takže platnost je pouze po první středník. Všimně te si nevhodného tabulátoru pro řádek cout<<"se provede"<<endl;. Ten působí dojmem, že patří k části else, ale není tomu tak. Tento řádek bude vykonán vždy a to bez ohledu na hodnotu x.

 



Abecední seznam všech článků Vyhledání pojmů ve článcích




JavaScript - ukázky
Příklady užití některých často používaných efektů na stránky.
katalogy/javascript
Popis jazaka C
Průvodce příkazy programovacího jazyka C.
programovani/jazyk_c
Odkazník o programování
Rejstřík klíčových slov pro programování ve vyhledávačích.
programovani/programovani.php
Mikropočítače
Seznámení s obecnou problematikou počítačů a mikropočítačů.
programovani/mikropocitace
Hybridní počítače
Počítače, jejichž základem je standardní analogová počítací síť.
knihy/hybridni_pocitace
Programování PHP
Články o programování webových stránek pomocí PHP.
internet/katalog_programovani_php
Číslicové počítače
Základní aritmetické operace, logické operace a vztahy mezi nimi.
programovani/cislicove_pocitace
Popis HTML formátu
Velikost textu, barva textu, rozvržení stránky, obrázky, barva pozadí se zapisuje pomocí HTML příkazů.
stranky/html_tag
Objektové programování c++
Jazyk C, Objektové programování c++
internet/katalog_programovani_c
Otevře stránky Fulltextové vyhledávání na celém serveru
Digitalizované odborné knihy
Velká encyklopedie pojmů a zkratek
Česko - anglicko - německý technický slovník
Klasický katalog firem, služeb a stránek
OnLine překladač  vět a textů (nepoužívá Google)
Stránky pro chvíle oddechu od studia, relaxace
Katalog českých firem dle technologií
Internetový odkazník
Otevře hlavní stranu pro oddíl programování




 Wikipedie   Seznam stránek   Kapitoly témat   Významné servery   Klíčová slova 








Otevře hlavní stranu společnosti AmaPro

Všechna práva vyhrazena. Určeno jen pro osobní využití. Bez předchozího písemného souhlasu správce www.amapro.cz je zakázána jakákoli další publikace, přetištění nebo distribuce jakéhokoli materiálu nebo části materiálu zveřejněného na www.amapro.cz a to včetně šíření prostřednictvím elektronické pošty. Články, jejichž přímým autorem není amapro.cz lze publikovat pouze se souhlasem jejich majitelů či administrátoru příslušného webu.