Rozhodování
3. Neúplné větvení
V neúplném jednoduchém větvení chybí větev else. Neúplné větvení je zachyceno pomocí následujícího ilustrativního příkladu.
Ilustrativní příklad NeuplneVetveni
Algoritmus NeuplneVetveni
- Popis: Vývojový diagram neúplného větvení – příklad prázdné větve False
- Zadání: Zkuste vymyslet, jak byste zaznamenali v hlavním programu zaznamenali prázdnou větev False. Deklarujte dvě celočíselné lokální proměnné x a y. Proměnným přiřaďte následující hodnoty: x = 2 a y = 3. Dále deklarujte logickou proměnnou boolPromenna. Pokud platí že x < y, pak do logické proměnné uložte hodnotu true
Rozhodovací blok obsahuje testovanou podmínku. Pokud je podmínka splněna (tj. větev True), je vykonán přiřazovací příkaz, který proměnné logického typu přiřadí hodnotu true (pravda). Druhá větev False (větev kdy podmínka není splněna) neobsahuje žádný příkaz, proto název neúplné větvení.
V aplikaci Flowgorithm nelze za blokem logické výrazu vypustit ani jednu z větví. V případě jiných aplikací, např. aplikace Visio, to však lze. Proto je tento fakt důležité zmínit.
Program NeuplneVetveni
- Popis: Zdrojový kód neúplného větvení – příklad neúplného větvení příkazu if
- Zadání: Vymyslete, jak byste v C# naprogramovali v hlavní metodě Main algoritmus NeuplneVetveni jako konzolovou aplikaci
- Řešení: Bude postupně probráno v následujícím textu
V redukovaném zdrojovém kódu (provedli jsme deklaraci lokálních proměnných včetně inicializace) jsou deklarovány
dvě celočíselné proměnné, které jsou inicializovány (datový typ int) - viz Kód 1. Třetí deklarovanou proměnnou
s názvem boolPromenna je logická
proměnná (datový typ bool), která může
nabývat hodnoty true nebo false. Ve čtvrtém řádku kódu dochází
k testování podmínky, tj. zda platí tvrzení, že hodnota uložená
v proměnné x je menší než
hodnota uložená v proměnné y. Pokud
je tato podmínka splněna přiřadíme logická proměnné hodnotu true.
static void Main(string[] args) { //Deklarace celočíselné proměnné včetně inicializace int x = 2; //Deklarace celočíselné proměnné včetně inicializace int y = 3; //Deklarace logické proměnné bool boolPromenna; //Rozhodovací podmínka -> pokud podmínka splněna -> logická proměnná je true if (x < y) //Přiřazení hodnoty do logické proměnné boolPromenna = true; }
Kód 1: Příklad neúplného větvení