Teoria programowania: Warunki logiczne, instrukcje warunkowe

article-thumbnail

Warunki logiczne

Następną cechą języków programowania jest występowanie operatorów logicznych, które są zwykle częścią instrukcji warunkowych. Operatorami logicznymi są między innymi: AND (iloczyn logiczny &&), NOT (negacja !) czy OR (alternatywa logiczna ||). W celu zasygnalizowania, że wartość a jest równa wartości b, używamy podwójnego znaku równania ==.

Przykładowe warunki logiczne:

/*

(x == 0) warunek jest prawdziwy jeśli x równa się 0;
(x != 0) warunek jest prawdziwy jeśli x NIE równa się 0;
(x <> 0) warunek jest prawdziwy jeśli x NIE równa się 0;
(x >= 0) warunek jest prawdziwy jeśli x większe bądź równe 0;
(x <= 0) warunek jest prawdziwy jeśli x mniejsze bądź równe 0.

*/

Instrukcje warunkowe

Instrukcja warunkowa (dalej if) to operacja na zmiennej, zwykle opierająca się na porównaniu danej zmiennej z wcześniej przygotowanym warunkiem. Często umożliwia zdefiniowanie wypadku przeciwnego (dalej else) po zakończeniu warunku średnikiem. Jeśli instrukcja warunkowa zawiera więcej czynności, to używamy nawiasów klamrowych { }.
Wartość bezwzględna:

boolean warunek = x < 0; // warunek x jest prawdziwy jeśli x < 0
if (warunek) x = -x; // jeśli warunek spełniony to wróć -x
else x = x; // w przeciwnym wypadku wróć x;
Zwróć wartość x;

Obliczanie obwodu trójkąta:

int a, b, c;
Przeczytaj a, b, c;
boolean warunek = (b + c <= a || a + c <= b || a + b <= c );

if (warunek) Wypisz „Nie można stworzyć trójkąta”;
else {

Wypisz „Obwód jest równy”;
Wypisz a+b+c;

};

Instrukcję warunkową if oznaczamy za pomocą rombu. Następnie od tej figury wydzielamy dwie strzałki: pierwszą odpowiadającą niespełnieniu warunku oraz drugą odpowiadającą spełnionemu warunkowi.

Obliczanie obwodu trójkąta:

Instrukcje warunkowe mogą być zagnieżdżone. W takim wypadku, po jednej instrukcji warunkowej następuje kolejna, która sprawdza dany warunek. Często w instrukcjach zagnieżdżonych występują kolejne instrukcje warunkowe dla przeciwnych wypadków.

Sprawdzanie wartości liczby x:

if(x <> 0){

if(x < 0) Wypisz „X mniejsze od zera”;
else Wypisz „X większe od zera”;

}
else Wypisz „X jest równe zero”;

Jedną z wariacji instrukcji warunkowej jest instrukcja przełącznikowa, inaczej switch. Jest to instrukcja warunkowa, która przewiduje kilka przypadków i posiada ciekawą konstrukcję. Jeśli przypadek posiada więcej warunków, to używamy nawiasów klamrowych. Głównie praktykuje się używanie w switchu wartości stałych.

Wybór produktu:

Switch (int x){ // przełącznik dla int x

case 1: Wypisz „Wybrano herbatę”; // przypadek dla x == 1

break; // przerwanie działania

case 2: Wypisz „Wybrano kawę”; // przypadek dla x == 2

break;

case 3: Wypisz „Wybrano lemoniadę”; // przypadek dla x == 3

break;

default: { Wypisz „Nie wybrano nic”; // przypadek domyślny

Wypisz „Nastąpi restart”; } // wcale nie ;_;

}

Switch możemy zobrazować pomocą sześciokąta, od którego wychodzi dana ilość rozgałęzień (tyle ile jest warunków wraz z przypadkiem domyślnym).

Wybór produktu:

Autor tekstu: Jacek Woźniak