Dalam perulangan dan Percabangan, ada beberapa operator yang bisa
kita gunakan dalam kondisinya. Operator-operator tersebut adalah
operator perbandingan dan Operator logika. Berikut ini adalah beberapa
operator perbandingan yang bisa kita gunakan.
- < (kurang dari)
- > (lebih dari)
- == (sama dengan)
- <= (kurang dari sama dengan)
- >= (lebih dari sama dengan)
- != (tidak sama dengan)
Operator logika digunakan untuk membandingkan dua nilai, baik itu dari variabel maupun bilangan yang ditulis langsung. Kalian bisa menggunakan operator perbandingan sebagai bagian dari kondisi untuk perulangan atau percabangan.
Oh ya, jangan sampai salah tulis "==" menjadi "="!
Kegunaannya dedua operator tersebut berbeda. Operator "==" digunakan untuk perbandingan, sedangkan "=" digunakan untuk memberi nilai pada variabel.
Oh ya, jangan sampai salah tulis "==" menjadi "="!
Kegunaannya dedua operator tersebut berbeda. Operator "==" digunakan untuk perbandingan, sedangkan "=" digunakan untuk memberi nilai pada variabel.
Berikut ini adalah operator logika yang bisa kita gunakan.
- && (And)
- || (Or)
- ! (not)
AND
A && B | Hasil |
TRUE && TRUE | TRUE |
FALSE && TRUE | FALSE |
FALSE && FALSE | FALSE |
TRUE && FALSE | FALSE |
OR
A || B | Hasil |
TRUE || TRUE | TRUE |
FALSE || TRUE | TRUE |
FALSE ||FALSE | FALSE |
TRUE || FALSE | TRUE |
Operator || dan && bisa kita gunakan untuk
menghubungkan dua kondisi atau lebih. && mengharuskan semua
kondisi terpenuhi atau bernilai benar. Contohnya adalah seperti di bawah
ini.
#include <stdio.h>
int main(){
int x=2, y=3;
printf("Jika 2 >= 3 dan 3 >= 3 \nHasil : ");
if(x>=3 && y>=3){
printf("Benar");
}else{
printf("Salah");
}
return 0;
}
Pada contoh di atas, kita menggunakan operator && (and / dan). && mengharuskan semua perbandingan dalam kondisi untuk bernilai benar. Perbandingan "x>=3" bernilai salah karena variabel x bernilai 2, .Karena salah satu perbandingan dalam kondisi bernilai salah, maka kondisi dalam if tidak terpenuhi walaupun perbandingan lainnya bernilai benar. Bandingkan dengan kode program di bawah ini yang menggunakan || (or / atau) !
#include <stdio.h>
int main(){
int x=2, y=3;
printf("Jika 2 >= 3 atau 3 >= 3 \nHasil : ");
if(x>=3 || y>=3){
printf("Benar");
}else{
printf("Salah");
}
return 0;
}
Hasil yang ditampilkan adalah "Benar" karena || hanya mengharuskan salah satu perbandingan saja yang bernilai benar. Dalam contoh di atas "y>=3" bernilai benar karena nilai variabel y adalah 3.
Seperti halnya operator perbandingan, operator logika bisa digunakan dalam percabangan maupun perulangan. Kalau perlu, kalian juga bisa menggunakan lebih dari satu operator logika di dalam kondisi percabangan atau perulangan.
#include <stdio.h>
int main(){
int x=0, y=5;
while(x<5 && y>0){
printf("Jika (%d != 3 atau %d != 3) dan %d < %d \nHasil : ", x, y, x, y);
if((x!=3 || y!=3) && x<y){
printf("Benar\n\n");
}else{
printf("Salah\n\n");
}
x++;
y--;
}
return 0;
}
Btw, kalau kalian mencoba hilangkan tanda kurung yang mengapit dua kondisi pertama dalam percabangan dari kode program di atas, mungkin kalian akan menemukan hal menarik terkait urutan pengerjaan dan hirarki operator.