Anda di halaman 1dari 5

MODUL

IV

OPERATOR PERBANDINGAN DAN LOGIKA

IV. Untuk membandingan dua variable digunakan operator berikut ini:


Tabel IV. 1

< <= ==

> >= ~=

lebih kecil, lebih besar lebih kecil atau sama dengan, lebih besar atau sama dengan sama dengan, tidak sama dengan

Sementara untuk mengevaluasi logika, digunakan fungsi dan operator:


Tabel IV. 2

and(A,B) atau A & B or(A,B) atau A | B xor(A,B) not(A) atau ~A

operasi logika AND antara A dan B operasi logika OR operasi logika XOR operasi logika NOT pada A

A dan B di sini bisa berupa skalar, vektor, maupun matriks, asalkan ukuran A dan B sama. Adapun tabel kebenaran yang digunakan pada setiap operasi logika tersebut ialah sebagai berikut:
Tabel IV. 3

A nol nol bukan nol bukan nol

B nol bukan nol nol bukan nol

A&B

A|B

xor(~A,B)

~A

0 0 0 1

0 1 1 1

1 0 0 1

1 1 0 0

Perlu diperhatikan bahwa operasi logika memiliki prioritas untuk dihitung lebih dahulu, kemudian diikuti operasi aritmatika, lalu operasi perbandingan. Untuk menambah pemahaman, mari kita praktekkan contoh di bawah ini di command window:

>> A = [0 0 1 1]; B = [0 1 0 1]; >> C = and(A,B) C= 0 0 0 1 >> D=A|B|C D= 0 1 1 1 >> E = xor(~A,B) E= 1 0 0 1 >> F = ~A F= 1 1 0 0

Anda telah belajar berinteraksi dengan MATLAB menggunakan command window. Sekarang, katakanlah Anda harus mempergunakan sederetan command secara berulang-ulang di dalam sesi MATLAB yang berbeda. Akan sangat repot jika Anda harus mengetikkan command tersebut secara manual di command window setiap kali Anda butuhkan. Namun dengan Mfile, deretan command tersebut bisa Anda simpan dalam bentuk skrip teks. Kapan saja Anda butuhkan, skrip tersebut bisa dijalankan/dieksekusi secara otomatis dengan cara mengetikkan nama M-file yang bersangkutan di command window. Sekarang, mari kita mencoba membuat fungsi untuk menentukan suatu tahun termasuk kabisat atau tidak. Jangkauan tahun yang bisa dihitung ialah 1900 hingga 2500. Kita ketahui bahwa tahun kabisat terjadi pada tahun-tahun berkelipatan 4, kecuali tahun akhir abad; namun untuk tahun akhir abad berkelipatan 400 termasuk kabisat pula. % Fungsi untuk mengetahui tahun kabisat atau tidak % iskabisat.m function hasil = iskabisat(thn) % thn : merupakan masukan bilangan bulat positif % hasil = 1 jika kabisat, 0 jika tidak if thn<1900 | thn>2500 disp('Tahun yang valid: 1900 - 2500'); hasil=[ ]; return end if rem(thn,4)==0 & (rem(thn,100)~=0| rem(thn,400)==0)

hasil=1; else hasil=0; end Pada fungsi tersebut, terdapat dua control statement if : Berarti jika variabel thn kurang dari 1900 ATAU lebih dari 2500, command di dalam if tersebut akan dijalankan.
if rem(thn,4)==0 & ... (rem(thn,100)~=0|rem(thn,400)==0) if thn<1900 | thn>2500

Berarti jika variabel thn habis dibagi 4 DAN logika


(rem(thn,100)~=0|rem(thn,400)==0) bernilai 1 (true),

maka command setelah if akan dijalankan. Perlu diperhatikan bahwa logika


(rem(thn,100)~=0|rem(thn,400)==0)

akan bernilai 1 bila thn bukan tahun abad (kelipatan 100); ataupun kalau tahun abad haruslah kelipatan 400. Sekarang kita bisa coba:
>> iskabisat(2005), iskabisat(1972) ans = 0 ans = 1

Fungsi ini hanya bisa mengolah masukan skalar. Lalu bagaimana kalau diinginkan masukan berupa vektor atau matriks?
% Fungsi untuk mengetahui tahun kabisat atau tidak % iskabisat.m function hasil = iskabisat(thn) % thn : merupakan masukan bilangan bulat positif % hasil = 1 jika kabisat, 0 jika tidak if sum(sum(thn<1900 | thn>2500))~=0 disp('Tahun yang valid: 1900 - 2500'); hasil=[]; return end hasil = rem(thn,4)==0 & ... (rem(thn,100)~=0|rem(thn,400)==0);

Sekarang kita bisa coba untuk menentukan tahun kabisat antara 1980 hingga 1990.
>> iskabisat(1980:1990) ans = 10001000100

Sementara itu, untuk menyimpan M-file, Anda bisa lakukan dengan menu: File Save atau FileSave As; ataupun dengan mengklik ikon yang ada. Namun demikian, sebenarnya Anda juga bisa menuliskan M-file dengan sebarang editor teks, seperti MS Word, Notepad, dll.; yang penting Anda menyimpan file tersebut dengan ekstensi *.m. Cat :
Ketika membuat fungsi dengan M-file, nama file harus sama dengan nama fungsi yang dideklarasikan dalam sintaks function ... Aturan penamaan M-file sama dengan penamaan variabel! TUGAS:

Buatlah suatu program untuk menampilkan segitiga Pascal. Pengguna harus memasukkan jumlah level segitiga yang ingin ditampilkan melalui command input. Apabila pengguna menginginkan segitiga 4 level maka akan tampil keluaran : 1 11 121 1331 Beri nama program ini dengan prog_pascal.m

CATATAN :

Tulis ulang kembali percobaan di lab lengkap dengan hasilnya serta tugasnya (Tulis Tangan) dengan Format 4, 4, 3, 3 Coretan Maximal 3 dalam satu laporan

Tugas tidak boleh sama

Asistensi I paling lambat Rabu dan Asistensi ke II paling lambat Kamis (Yang Terlambat ndak usah kumpul laporan..Oke..!!!)

Yang Tidak Mau ikut Aturan ndak usah kumpul laporan dengan konsekuensi TANGGUNG SENDIRIOKE.!!!

For i=3:4 for