Operator Logik Pada C++


Operator logik yang dipakai dalam C++ adalah :

Prioritas

Simbol

Operator

1

!

Not

2

&&

And

3

II

Or

Operator logik dalam C++ memungkinkan kita melakukan beberapa tes secara. Simultan dalam pernyataan while atau if-elsc. Tabel di atas menunjukkan, selain operator-operator logik dalam C++,juga prioritas rankingnya. Operator not (!) mempunyai prioritas di bawah tanda kurung dan di atas operator aritmatik. Dua operator logik yang lain, yaitu and (&&) dan or (||), mempunyai prioritas di bawah operator relasional dan di atas operator assignment. Misal kita ingin melakukan dua atau lebih tes secara simultan maka masing-masing kondisi dapat digabung dengan operator logik. and sebagai berikut:

if(test_l  && test_2 && test3 .,.)

Kalau kita ingin salah satu atau kombinasi dari suatu grup untuk membuat suatu tes menghasilkan true maka masing-masing kondisi dapat digabung dengan operator logik or sebagi berikut:

if(test  1  || test 2  || test3 …)

Konsep di atas dapat dijelaskan lewat contoh program ini:

// C5_2.CPP

#include <iostream.h>

 

main ()

{

 

int a=2, b=4;

if (a ==2  && b==4)

cout << “(a==2 && b=4) adalah true” << “\n”;

else

cout << “(a==2 && b=4) adalah false” << “\n”;

if (a ==3 && b==4)

cout << “(a==3 && b=4) adalah true” << “\n”;

else

cout << “(a==3 && b=4) adalah false” << “\n”;

if (a ==3 || b==4)

cout << “(a==3 || b=4) adalah true” << “\n”;

else

cout << “a==3 || b=4) adalah false” << “\n”;

if (a ==3 || b ==5)

cout << “(a==3 || b=5) adalah true” << “\n”;

else

cout << “(a==3 || b=5) adalah false” << “\n”;

}

Operator not yang mendahului suatu kondisi tes akan membalik hasil tes tersebut, misalnyajika a adalah true maka !a adalah false atau jika a adalah false maka !a adalah true.

C++ adalah bahasa yang effisien. Jika beberapa tes-relasional digabung dengan operator-operator logik, C++ tidak selalu mengevaluasi ekpresi gabungan ini secara penuh, Langkah ini diambil supaya program dapat berjalan lebih cepat tapi juga ada bahayanya misalnya:

if ((5 > 4) || (penjualan < 15) && (15 != 15)) …

C++ hanya melihat kondisi yang pertama saja yaitu (5 > 4). Karena (5 > 4) adalah true dan karena true || selalu menghasilkan true maka C++ akan mengabaikan kondisi-kondisi yang lain. Kadang-kadang kita. terpaksa memecah suatu pemyataan if yang kompiek menjadi beberapa pemyataan if yang lebih sederhana untuk memastikan masing-masing kondisi yang ada pada pemyataan if yang kompiek tersebut dievaluasi.


Tinggalkan Balasan

Alamat email Anda tidak akan dipublikasikan. Ruas yang wajib ditandai *