Instrukcje warunkowe – Do czego służą? i jak poprawnie je konstruować.

Instrukcje warunkowe pozwalają na wykonanie danego fragmentu kodu po spełnieniu jednego lub kilku warunków zdefiniowanych przez tworzącego kod.

W języku C# jest wiele dostępnych gotowych rozwiązań na zastosowanie instrukcji warunkowych.

Poniżej przedstawię te używane najczęściej:    

 

INSTRUKCJA WARUNKOWA if


Jest to najprostsza i chyba podstawowa instrukcja warunkowa.


Składnia:

Jeżeli warunek zawarty w wyrażeniu logicznym będzie spełniony czyli zwróci true zostanie wykonany blok kodu/instrukcji umieszczony w klamrach.  Gdy warunek nie zostanie spełniony, program przejdzie do kolejnej linii kodu zamykając jednocześnie Instrukcję warunkową.

Przykład:

INSTRUKCJA WARUNKOWA if…else

 

W instrukcji warunkowej if…else składnia jest podobna do składni z instrukcji if, z tymże dodany jest krok w którym będzie zawarty blok kodu, który wykona się jeżeli wyrażenie logiczne z pierwszego warunku nie zostanie spełnione.

Składnia:

Jak rozumieć powyższą składnie? Jeżeli wyrażenie logiczne zawarte w warunku if to program wykona kod z wewnątrz bloku instrukcji. Natomiast jeżeli będzie fałszywy, to program przejdzie do wykonywania instrukcji zawartej w bloku else.

A oto przykład:

 

INSTRUKCJA WARUNKOWA If… else if… else

 

Instrukcja warunkowa If.. else if… else to rozbudowana Instrukcja If… else.
Rozbudowana jest o dodatkowy warunek else if.
Podczas używania instrukcji warunkowej if…else if…else należy pamiętać o  kilku rzeczach.
– Instrukcja warunkowa może nie posiadać żadnego lub posiadać tylko jedno wyrażenie logiczne  else, ale musi ono wystąpić po wyrażeniu else if;
– Instrukcja warunkowa może nie posiadać żadnego lub posiadać wiele wyrażeń else if, ale muszą one występować przed wyrażeniem else;
– Jeżeli wyrażenie logiczne else if będzie spełnione program wykona kod z bloku else if nie Przechodząc już dalej do żadnego innego warunku else if lub else.

Składnia:

Przykład:

ZAGNIEŻDŻENIE INSTRUKCJI WARUNKOWEJ if

C# dopuszcza zagnieżdżanie instrukcji warunkowych.Co to oznacza? To nic innego jak umieszczenie w jednej instrukcji warunkowej if kolejnych instrukcji warunkowych. w Jednej instrukcji warunkowej możemy zagnieździć każdą z  przedstawionych powyżej instrukcji warunkowej.

Przykład:

INSTRUKCJA WYBORU Switch

 

Instrukcja warunkowa switch służy do sprawdzenia danej zmiennej odnosząc się do  wymienionych w przypadkach wartości. Tzw przypadek (case) to nic innego jak zmienna. Zmienna jest sprawdzana dla każdego z przypadków w instrukcji warunkowej.

 

Składnia:

Przy używaniu instrukcji wyboru switch musimy się zastosować do kilku zasad:

  • wyrażenie użyte w instrukcji wyboru musi być typu integralnego (sbyte, byte, char, short, ushort, int, uint, long, ulong), typu wyliczeniowego lub może być klasą, która zawiera metodę pozwalającą na konwersję do typu integralnego lub wyliczeniowego;
  • można zdefiniować dowolną liczbę przypadków. Każdy przypadek składa się z wartości oraz znaku porównania (dwukropek);
  • zdefiniowany przez nasz przypadek musi być takiego samego typu jak wyrażenie (switch), musi to być stała lub literał;
  • kiedy wyrażenie będzie sprawdzane pomiędzy kolejnymi przypadkami i dojdzie do dopasowania zostanie wykonany kod wewnątrz bloku case aż do osiągnięcia instrukcji break;
  • nie każdy przypadek musi zawierać instrukcję break;
  • w instrukcji wyboru może być zastosowany opcjonalny operator przypadku domyślnego (default). Przypadek domyślny zostanie wykonany, jeżeli nie zostanie znalezione żadne dopasowanie. Instrukcja break nie jest potrzebna w przypadku domyślnym.  

 

Przykład:

Przykład z zastosowaniem typów:

W instrukcji wyboru switch także jest możliwe zagnieżdżenie tej funkcji:

Przykład:

Mam nadzieję że udało się przybliżyć wam istrukcje warunkowe.

Przykłady użyte w w tym poście dostępne są również na GitHub.

Podobało się? lajkujcie, komentujcie…
Pytania? piszcie 🙂

Post Author: Csharpowe Zmagania

Dodaj komentarz

Twój adres email nie zostanie opublikowany. Pola, których wypełnienie jest wymagane, są oznaczone symbolem *

This site uses Akismet to reduce spam. Learn how your comment data is processed.