Macam-macam dan Contoh Operator Logika C++

Tags

Macam-macam dan Contoh Operator Logika C++ - Belajar C++

Pengertian Operator Logika

Operator Logika digunakan untuk menghubungkan dua buah operasi relasi menjadi sebuah ungkapan kondisi. Hasil dari operator logika ini menghasilkan nilai numerik 1 (True) atau 0 (False).

Tabel Operator Logika
No.
Operator
Keterangan
1
&&
Operasi Logika AND
2
||
Operator Logika OR
3
!
Operator Lohika NOT

Baca juga : Macam-macam dan Contoh Operator C++

Macam-macam Operator Logika

Operator Logika AND
Operator logika AND digunakan untuk menghubungkan dua atau lebih ekspresi relasi, akan dianggap BENAR, bila semua ekspresi relasi yang dihubungkan bernilai BENAR. Operator digunakan untuk mengevaluasi dua ekspresi untuk mendapatkan hasil rasional tunggal. Operator && sesuai dengan operasi logis Boolean AND (dan), yang menghasilkan true jika kedua Operasi adalah true dan false jika hanya satu operasi false dan seterusnya.

Table Logika AND
X
Y
X && Y
True
True
True
True
False
False
False
True
False
False
False
False

Contoh
Ekspresi Relasi 1
A + 4 < 10
Ekspresi Relasi 2
B>A + 5
Ekspresi Relasi 3
C - 3 >= 4

Penggabungan ketiga ekspresi relasi diatas menjadi ;
A+4 < 10 && B>A+5 && C–3 >= 4
Jika nilai A = 3; B = 3; C = 7, maka ketiga ekspresi tersebut mempunyai nilai:
•    Ekspresi Relasi-1  A + 4 < 10  3 + 4 < 10  (BENAR)
•    Ekspresi Relasi-2  B>A + 5  3 > 3 + 5  (SALAH)
•    Ekspresi Relasi-3  C – 3 >= 4  7 – 3 >= 4  (BENAR)
Dari ekspresi relasi tersebut mempunyai nilai BENAR, maka
A+4 < 10 && B>A+5 && C–3 >= 4  (SALAH = 0)

Baca juga : Pengertian dan Daftar Precedence of Operator C++

Contoh Program
/* Penggunaan Operasi Logika AND */
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main( )
{
   float a, b, c, d, e, f, g, h;
   clrscr( );
   cout<<"Masukan Nilai A = ";
   cin>>a; cout<<"Masukan Nilai B = ";
   cin>>b; cout<<"Masukan Nilai C = ";
   cin>>c;
// Proses
   d = a + 4 < 10;
   e = b > a + 5;
   f = c - 3 >= 4;
   g = d && e && f;
   cout<<endl<<endl;
   cout<<"Program Ekspresi AND"<<endl<<endl;
   cout<<"Hasil dari d = a + 4 < 10 adalah"<<d<<endl;
   cout<<"Hasil dari e = b > a + 5 adalah"<<e<<endl;
   cout<<"Hasil dari f = c - 3 >= 4 adalah "<<f;
   cout<<endl<<endl;
   cout<<"Hasil dari g = d && e && f adalah "<<g;
   cout<<endl;
   getch();
}

Operator Logika OR
Operator logika OR digunakan untuk menghubungkan dua atau lebih ekspresi relasi untuk mendapatkan hasil rasional tunggal, Operator || dibaca sebagai OR, akan dianggap BENAR, bila salah satu ekspresi relasi yang dihubungkan bernilai BENAR dan bila semua ekspresi relasi yang dihubungkan bernilai SALAH, maka akan bernilai SALAH.

Baca juga : Macam-macam dan Contoh Fungsi Manipulasi String C++

Tabel Operator Logika OR
X
Y
X || Y
True
True
True
True
False
True
False
True
True
False
False
False

Contoh
Ekspresi Relasi 1
A + 4 < 10
Ekspresi Relasi 2
B>A + 5
Ekspresi Relasi 3
C - 3 > 4

Penggabungan ketiga ekspresi relasi diatas menjadi;
A+4 < 10 || B>A+5 || C–3 > 4
Jika nilai A = 3; B = 3; C = 7, maka ketiga ekspresi tersebut mempunyai nilai:
•    Ekspresi Relasi-1  A + 4 < 10  3 + 4 < 10 (BENAR)
•    Ekspresi Relasi-2  B>A + 5  3 > 3 + 5 (SALAH)
•    Ekspresi Relasi-3  C - 3 > 4  7 – 3 > 4 (SALAH)
Dilihat ekspresi diatas salah satu ekspresi tersebut mempunyai nilai BENAR, maka ekspresi tersebut tetap bernilai BENAR.
A+4 < 10 || B>A+5 || C–3 > 4  (BENAR = 1)

Contoh Program
/* Penggunaan Operasi Logika OR */
#include <stdio.h>
#include <conio.h>
#include <iostream.h>
main()
{
   float a, b, c, d, e, f, g, h;
   clrscr( );
   cout<<"Masukan Nilai A = ";
   cin>>a; cout<<"Masukan Nilai B = ";
   cin>>b; cout<<"Masukan Nilai C = ";
   cin>>c;
   d = a + 5 > 10;
   e = b > 5 + a ;
   f = c - 4 <= 7;
   g = d || e || f;
   cout<<endl<<endl;
   cout<<"Program Ekspresi AND"<<endl<<endl;
   cout<<"Hasil dari d = a + 5 > 10 adalah "<<d<<endl;
   cout<<"Hasil dari e = b > 5 + a adalah " <<e<<endl;
   cout<<"Hasil dari f = c - 4 <= 7 adalah " <<f;
   cout<<endl<<endl;
   cout<<"Hasil dari g = d || e || f adalah " <<g;
   cout<<endl;
   getch();
}

Jika anda menggunakan operator logika, C++ dalam mengevaluasi hal ini akan menggunakan cara Arus pendek (Short-circuit) yang berarti hanya akan mengevaluasi apa yag diperlukan dari kiri ke kanan. Dan akan menghasilkan relasional gabungan, mengabaikan sisanya. Oleh karena itu sebagai contoh (5==6 && 4>3). C++ akan memproses dan mengevaluasi dulu dari kiri ke kanan apakah 5==6 adalah benar(true) dan jika memang benar, c++ tidak akan meanjutkan pemeriksaan seterusnya (4>3) karena sudah mempunyai hasil bahwa bernilai salah (false).

Baca juga : Pengertian dan Macam-macam Operasi Penyeleksian C++

Operator

&&
Jika ekspresi sisi kiri bernilai Salah (False) maka langsung menghasikan Salah (False).
||
Jika ekspresi sisi kiri bernilai Benar (True) maka langsung menghasikan Benar (True).

Contoh Program
/* Penggunaan Operasi Logika AND OR*/
#include
#include
#include
main( )
{
   float a, b, c, d, e, f, g, h;
   clrscr( );
   //Input
   cout<<"Masukan Nilai A = "; cin>>a;
   cout<<"Masukan Nilai B = "; cin>>b;
   cout<<"Masukan Nilai C = "; cin>>c;
   // Proses
   d = a + 4 < 10;
   e = b > a + 5;
   f = c - 3 >= 4;
   g = d || e && f;
   cout<<endl<<<"Program Ekspresi AND / OR"<<endl<<endl;
   cout<<"Hasil dari d = a + 4 < 10 adalah " <<d<<endl;
   //output
   cout<<"Hasil dari e = b > a + 5 adalah " <<e<<endl;
   cout<<"Hasil dari f = c - 3 >= 4 adalah " <<f;
   cout<<endl<<endl;
   cout<<"Hasil dari g = d || e && f adalah " <<g;
   cout<<endl;
   getch();
}
Operator Logika NOT
Operator logika NOT akan memberikan nilai kebalikkan dari ekspresi yang disebutkan. Jika nilai yang disebutkan bernilai BENAR maka akan menghasilkan nilai SALAH, begitu pula sebaliknya.

Contoh
!true //Pernyataan benar(true) tapi dibalikan dengan ! menjadi salah(false)
!false // Pernyataan salah(false) tapi dibalikan dengan ! menjadi benar(true)
!(5==5) //Pernyataan benar(true) tapi dibalikan dengan ! menjadi salah(false)
!(6<=4) // Pernyataan salah(false) tapi dibalikan dengan ! menjadi benar(true)

Ekspresi Relasi  A + 4 < 10
Penggunaan Operator Logika NOT diatas menjadi;
!(A+4 < 10)
Jika nilai A = 3; maka ekspresi tersebut mempunyai nilai:
•    Ekspresi Relasi-1  A + 4 < 10  3 + 4 < 10  BENAR
Dilihat ekspresi diatas salah satu ekspresi tersebut mempunyai nilai BENAR dan jika digunakan operator logika NOT, maka ekspresi tersebut akan bernilai SALAH
!(A+4 < 10)  !(BENAR) = SALAH = 0

Baca juga : Pengertian dan Macam-macam Proses Pengulangan C++

Contoh Program
/* Penggunaan Operasi Logika NOT */
#include <stdio.h>
#include <conio.h>
#include<iostream.h>
main()
{
   int a, b, c;
   clrscr( );
   cout<<"Masukan Nilai A = "; cin>>a;
   /* Proses */
   b = (a + 4 < 10);
   c = !(b);
   cout<<endl<<"Program Ekspresi NOT "<<endl;
   cout<<"Nilai A = "<<a<<endl
   cout<<"Nilai b = (a + 4 < 10) = "<<b<<endl;
   cout<<"Nilai c = !(b) = "<<c;
   getch();
}

Cukup sekian dari belajarcpp.com semoga artikel ini bisa bermanfaat untuk kita semua. Mohon maaf atas kekuranganya dan Terima Kasih atas dukungan dan kunjungan anda ke BelajarCPP. Have a nice day.

Last update : 3 Februari 2016


EmoticonEmoticon