Jason. Cała informatyka w jednym miejscu!

Negacja kolejną częścią mini ciągu o operacjach logicznych. Zapraszam serdecznie po dawkę wiedzy na temat operatora "NOT" ❗.

OPERATOR "NIE" TO NIC INNEGO JAK NEGACJA!

"Nie" albo "NOT", w zależności od własnego upodobania. Operator negacji powoduje "przestawienie" wartości wyjściowej na bit przeciwny. Czyli zero staje się jedynką, jedynka staje się zerem. Proste 😄! Czasami używa się pełnej nazwy "negacja logiczna". Tabelka w ruch:

a !a
0 1
1 0

To jest operator unarny. Pisząc bardziej zrozumiale, operator jednoargumentowy, w przeciwieństwie do alternatywy i koniunkcji. Jak widać powyżej, wystarczy jeden operand, żeby negacja odniosła pożądany skutek. Wolno go wstawić także przed zdaniami logicznymi objętymi w nawiasy wykorzystującymi np. koniunkcję:

!(a && b)

Jak możesz dostrzec, w kodzie źródłowym negację określa się wykrzyknikiem (!). Matematyka posługuje się zupełnie innym symbolem (¬), którego nawet nie umiem skojarzyć z czymś znanym 😄. Zamiennie używa się tyldy (~).

Teraz posłużymy się kodem. Język C w standardzie C99, bo to w końcu jest materiał ogólnie o programowaniu, a C jest "ojcem" języków wysokiego poziomu:

_Bool a = 0;

printf("%d", !a);

Na wyjściu ujrzysz jedynkę, bo negacja odwraca bit na przeciwny. Przypominam tak skromnie, że nieprawdą jest, że "prawda" to tylko wartość 1 🛑. Język C domyślnie odwraca na jedynkę, lecz w rzeczywistości wartość zero jest traktowana jak fałsz, a KAŻDA INNA wartość różna od zera, jest "prawdą". Jak nie wierzysz, zapraszam do artykułu o "booleanach" w C. Opadnięcie kopary do samej ziemi gwarantowane 🤣!


Tak nietypowym stwierdzeniem (jak na stronę o nauce informatyki 🧐), kończę dzisiejszy materiał 🏁.

PODOBNE ARTYKUŁY