Relasi dan Logika MATLAB menyediakan operator relsi untuk membandingkan dua matrik berdimensi sama, sedangkan operator logika umtuk membandingkan pasangan elemen yang berkorespondensi.
1. Relasi Operator Deskripsi a==b Jika a sama dengan b a > b Jika a lebih besar dari b a < b Jika a lebih kecil dari b a > = b Jika a lebih besar atau sama dengan b a < = b Jika a lebih kecil atau sama dengan b a ~= b Jika a tidak sama dengan b a & b jika a dan b benar a | b Jika paling sedikit di antara a dan b bernilai benar a xor b Jika hanya satu di antara a dan b yang bernilai benar ~ a Jika a salah
2. Logika operator Fungsi yang ekuivalen deskripsi a & b And (a,b) Dan Or (a,b) Atau ~a Not (a) Tidak
C bernilai 1 jika a dan b tidak 0 Nilai kebenaran Dalam matlab, nilai kebenaran dari relasi dan logika dari pernyataan dinyatakan dengan matriks 1 x 1 dan bernilai 1 atau 0. Nilai 1 berarti benar, dan 0 berarti salah. Nilai kebenaran Deskripsi C= a & b C bernilai 1 jika a dan b tidak 0 C bernilai 0 jika a dan b bernilai 0 C= a| b C bernilai 1 jika a atau b tidak 0 C bernilai 1 jika a atau b bernilai 0 C=~a C bernilai 0 jika a bernilai 1 C bernilai 1 jika a bernilai 0
Contoh: Diberikan matriks a=[1 2 3;4 7 5;6 1 2] Respon matlab terhadap perintah berikut adalah: x = (a>=3) y= (a==2) (a==1)|y penyelesaian: a. >> A=[1 2 3;4 7 5;6 1 2] A = 1 2 3 4 7 5 6 1 2 b. >> x=(A>=3) x = 0 0 1 1 1 1 1 0 0 c. >> y=(A==2) y = 0 1 0 0 0 0 0 0 1 >> (A==1)|y ans = 1 1 0 0 1 1
Fungsi logika dan relasi operator Deskripsi Any Untuk setiap All Untuk semua Find Mengindikasikan nilai logika Exist Mengecek keberadaan variable Isstr Mengecek keberadaan variable string Isglobal Mengecek keberadaan variable global Isnan Mengecek apakah bukan sebuah bilangan Isinf Mengecek bilangannya tak hingga Finite Mengecek apakah bilangan terbatas isempty Mengecek apakah matriks kosong
Contoh: » a=[2 3 NaN 0 9 inf] a = 2 3 NaN 0 9 Inf » b=[1 9 NaN 4 8 inf] b = 1 9 NaN 4 8 Inf » c=sqrt(b) c = 1.0000 3.0000 NaN 2.0000 2.8284 Inf » d=(b==nan) d = 0 0 0 0 0 0 » e=(b~=nan) e = 1 1 1 1 1 1 Semua anggota d bernilai 0, dan semua anggota e bernilai 1,artinya semua anggota b dianggap bilangan. Hal tersebut diakibatkan karena matlab memandang setiap anggota yang bukan bilangan bersifat unik dan tidak sama antara yang satu dengan yang lainnya.
Contoh: » isnan(b) ans = 0 0 1 0 0 0 » g=find(isnan(b)) g = 3 » a(g)=zeros(size(g)) a = 2 3 0 0 9 Inf