Předchozí díl našeho seriálu o základech programování byl velmi teoretický a dozvěděli jsme se v něm podrobnější popis datových typů. Je však na čase se posunout dát a podívat na jeden ze základních pilířů samotného programování – podmínky. Ty si můžeme hned z úvodu přirovnat k rozhodování z reálného života. Jednoduše si můžeme například říct větu „Pokud nebude pršet, půjdu ven.“ a je nám samozřejmě jisté, co bude následovat. Prší? Zůstáváme doma. Je hezky? Jdeme ven. Na téměř totožném principu fungují taktéž podmínky v programování a my se na ně můžeme rovnou podívat.
Podmínky
K podmínkám je důležité klíčové slovo if, za který se dává logický výraz. Přestože tohle může znít složitě, jedná se o jednoduchou záležitost. V galerii níže naleznete skrze komentáře přesně popsané řádky kódu, z kterých věřím, že celou logiku podmínek bez jediného problému pochopíte.
Na posledním snímku si můžete všimnout užití klíčového slova else. Tento blok kódu se provede vždy, pokud se vámi předepsaná podmínka nesplní. Kdybychom si to přiblížili na druhý screen, místo dalšího ifu by stačilo dopsat else. Na posledním snímku jsem taktéž nepoužil žádný matematický výraz, ale rovnou datový typ Bool. Jelikož ten nabývá pouze dvou hodnot, pravda a nepravda, může být kdykoliv v podmínkách využit. (Matematický zápis taktéž nabývá pouze dvou hodnot, pravdivý a nepravdivý, tudíž se dá říci, že se jedná téměř o to samé.)
Operátory
Co když ale nechceme využít pouze znamének vetší než a menší než? Swift nám (podobně jako ostatní jazyky) nabízí širokou škálu možností. Můžeme v podmínkách například rozlišovat, zdali se výrok něčemu rovná, a nebo jej negovat. Všechny možnosti jsem vám podrobně rozepsal přímo ve vývojovém prostředí Xcode a můžete si je spolu s popisky prohlédnout na obrázku níže.
Dosud nezmíněné operátory:
Složená podmínka
Každý programátor se častokrát dostane do momentu, kdy mu jednoduchá podmínka zkrátka nestačí, aneb když jednu skutečnost ovlivňují hned dva faktory (nebo klidně i více). V tomto si vzal Swift příklad ze svých starších kolegů a přišel se stejným řešením, v podobě stejných operátorů. Výsledná složená podmínka by tedy ve výsledky mohla vypadat jako na obrázku níže.
Závěr
Tohle by bylo pro dnešní díl prozatím vše. Ve svém volném čase si můžete vyzkoušet různě hrát s kódem a libovolně zkoušet cvičení dle vlastního uvážení. V příští části našeho seriálu si vylepšíme naši kalkulačku a seznámíme se s konstrukcí Switch, která dokáže zápis podmínek velmi zjednodušit.
Ještě bych doplnil switch. Swiftí switch moc lidí používat neumí, tak alespoň jako inspirace:
Dá se udělat víc komplexní
let a: Int = 1
let b: Int = 10
switch (true, false) {
case (a >= 1, b > 20):
print(„Shoda“)
case (a == 2, b < 2):
print("Neprovede se")
default:
print("Nic")
}