Operator Relasional Pada C++

Operator relasional yang dipakai dalam C++ adalah: < Lebih kecil dari <= Lebih kecil atau sama dengan > Lebih besar dari >= Lebih besar atau sama dengan == Sama dengan!= Tidak sama dengan Operator-operator relasional di atas adalah opeator biner yang fungsinya melakukan tes pada hubungan diantara kedua operannya, Hasil tes ini adalah true atau false, misalnya: (5 > 2) hasilnya adalah true, sedangkan: (2>5) hasilnya adalah false. Operator relasional dipakai dengan pernyataan-pernyataan while dan if-else untuk melakukan tes pada suatu kondisi. Pada suatu while-loop, suatu blok yang terdiri dari banyak pernyataan akan dieksekusi berulang-ulang asalkan hasil tesnya true, misalnya: n=10; while (n > 0) { cout << n; n = n - 1; } C++ akan mengganti hasil tes yang true dengan 1 dan yang false dengan 0, jadi untuk while-loop di atas, keputusan untuk mengulang loop atau keluar dari loop tergantung dari hasil tes yang dapat 1 atau 0, C++ akan memperlakukan bilangan yang tidak sama dengan nol sebagai true sehingga penggalan program tadi dapat ditulis: n= 10; while (n) { cout << n; n = n - 1; } Sedangkan untuk pernyataan if-clse, hasil tes yang memutuskan blok mana yang dieksekusi, misalnya: x=1; y=2; if ( x == y ) cout << "x sama dengan y "; else cout << "x tidak sama dengan y"; Operator yang dipakai dalam pernyataan if-else adalah operator sama dengan (==), bukan operator assignment (=), misal penggalan program di atas ditulis: x=1; y=2; if ( x = y ) cout << "x sama dengan y "; else cout << "x tidak sama dengan y"; berarti nilai dari variabel y, karena kesalahan pemakaian operator, ditempatkan di variabel x, sehingga tes pada pemyatan if akan menghasilkan 2, yang diartikan true oleh C++ sehingga pada layar akan tercetak "x sama dengan y", Hasil ini sudah tentu tidak benar, kalau pemakaian operatornya benar yaitu (x == y) maka nilai variabel x akan dibandingkan dengan nilai variabel y, hasilnya adalah false atau 0 sehingga pada layar akan tercetak "x tidak sama dengan y". Order of precedence dari operator-operator relasional ini lebih rendah dari operator-operator aritmatik tetapi lebih tinggi dari operator assignment sehingga ekpresi: z == y - 1 adalah sama dengan z == (y - 1) sehingga variabel z akan dibandingkan dengan variabel (y-1). Contoh ekpresi lain: z == x * x == y adalah sama dengan z = (x *x == y) disini (x * x === y) menghasilkan true atau false dan hasilnya disimpan dalam variabel z jadi variabel z mempunyai nilai true atau false. Contoh yang lain lagi: x == y!= z adalah sama dengan ((x == y) \= z) tidak sama dengan (x == (y!= z) karena assosiativitas dari operator-operator relasional adalah dari kiri ke kanan. Contoh pemakaian ekpresi yang terakhir ini adalah sebagai berikut: // C4_2.CPP #include <iostream.h>   main () { int x = 2, y = 2, z = 0; if(x==y!=z) cout << "true \n"; else cout << "false \n"; }

Komentar 0

Related Posts