ARSIP BULANAN : October 2022

Perbandingan dan logika dalam scilab

04 October 2022 17:56:00 Dibaca : 341

Nama duyi defi kaiha

Nim 411421015

Kelas /prodi B/ pendidikan matematika

A. Operasi Perbandingan

          Nilai dari dua obyek dapat dibandingkan dengan menggunakan operator-operator sepertiyang terdapat pada tabel di bawah ini.

                     

            Operasi perbandingan adalah operasi yang dioperasikan secara elemen-dengan-elemensehingga operasi ini hanya dapat dilakukan terhadap antara skalar dengan skalar atauvektor/matrik, atau antara dua buah matrik/vektor yang berdimensi sama. Output dari operasi perbandingan adalah sebuah obyek Boolean. Apabila ekspresi yang diuji pada suatu operasi perbandingan mempunyyai nilai logika benar outputnya adalah obyek Boolean T (true, benar) namun kjika ekspresi yang diuji mempunyai nilai logika salah maka outputnya adalah obyek Boolean F (false, salah).

Berikut ini beberapa contoh operasi perbandingan.

     Operasi perbandingan biasanya digunakan sebagai ekspresi yang diuji dalam suatustatemen kondisionalif-elseatau sebagai ekspresi yang digunakan untuk mengontrolproses iterasi dalam suatu statemen perulangan while.

          Berikut ini adalah contoh penggunaan operasi perbandingan yang terdapat di dalam suatu blok kondisional if-else

 

         Penggunaan operasi perbandingan pada suatu blok perulangan while dapat dilihta pada contoh di bawah ini.

     

B. Operasi Logika

       Suatu operasi logika digunakan untuk nilai logika yang dihasilkan oleh kombinasi logika atau (or), logika dan (and) dari dua obyek Boolean, atau untuk melakukan operasi negasi (not) terhadap suatu obyek Boolean. Operasi logika adalah operasi yang bersifat elemen dengan elemen. Obyek-obyek yang diuji dalam suatu operasi lagika dapat berupa suatu ekspresi perbandingan maupun berupa suatu konstanta Boolean. Tabel dibawah ini adalah daftar dari operator-operator logika yang terdapat di dalam scilab. Konstanta-konstanta Boolean yang terpasang di dalam Scilab dapat dilihat pada tabel berikutnya.

 

 

 Nah berikut ini beberapa contoh operasi logika

 

            Suatu operasi logika seringkali digunakan sebagai ekspresi yang diuji dalam suatustatemen kondisionalif-elseatau sebagai ekspresi yang digunakan untuk mengontrolproses iterasi dalam suatu statemen perulangan while.

Berikut ini contoh operasi logika yang terdapat di dalam suatu statemen kondisional if.

Contoh ini adalah perhitungan untuk menentukan bilangan prima yang nilainya lebih kecil dari 20.

Contoh suatu operasi logika yang terdapat di dalam suatu statemen perulangan while adalah sebagai berikut.

           Suatu operasi logika juga dapat diterapkan terhadap obyek-obyek numerik. Pada kasus ini, angka nol akan diangkap sebagai kosntanta boolean salah (F) dan sembarang angka lainnya selain angka nol akan dianggap sebagai konstanta boolean benar (T). Berikut ini contoh operasi logika terhadap obyek-obyek numerik.

 

C. Fungsi-Fungsi Logika

        Selain menyediakan beberapa operator logika, di dalam scilab juga terpasang dua fungsi logika yaitu and dan or. Kedua fungsi tersebut dapat digunakan untuk melakukan operasi logika dan serta logika atau terhadap elemen-elemen suatu matrik/vektor boolean.

And

Fungsi and adalah fungsi untuk operasi logika dan. Berikut ini sintak sari fungsi and:

            B = and(A) atau B = and(A, ‘*’)

            B = and(A,1) atau B = and(A,’r’)

            B = and(A,2) atau B = and(A,’c’)

    Dimana A adalah suatu matriks boolean. Output dari fungsi and adalah konstanta boolean T jika semua elemen matrik yang diuji mempunyai nilai benar dan konstanta boolean F jika terdapra sebuah elemen matrik yang diuji yang mempunyai nilai salah.

Deskripsi ketiga macam sintaks dari fungsi logika and adalah sebagai berikut:

1. And(A) atau and(A,’*’): fungsi and dioperasikan terhadap semua elemen matrik.

2. And(A,1) atau and(A,’r’): fungsi and dioperasikan terhadap elemen-elemen pada setiap vektor kolom yang menyusun matrik A.

3. And(A,2) atau and(A,’c’): fungsi and dioperasikan terhadap elemen-elemen pada setiap vektor baris yang menyusun matrik A.

Berikut ini contoh penggunaan fungsi and.

 

Or

Fungsi or adalah fungsi untuk logika atau. Sintak dari fungsi or adalah sebagai berikut:

      B = or(A) atau B = or(A,’*’)

      B = or(A,1) atau B = or(A,’r’)

      B = or(A,2) atau B = or(A,’c’)

           Dimana A adalah suatu matrik boolean. Output dari fungsi or adalah konstanta boolean T jika terdapat sebuah elemen matrik yang diuji mempunyai nilai benar dan konstanta boolean F jika semua elemen matrik yang diuji yang mempunyai nilai salah.

 

Deskripsi ketiga macam sintaks dari fungsi logika or adalah sebagai berikut:

1. or(A) atau or(A,’*’): fungsi or dioperasikan terhadap semua elemen matrik.

2. or(A,1) atau or(A,’r’): fungsi or dioperasikan terhadap elemen-elemen pada setiap kolom yang menyusun matrik A.

3. or(A,2) atau or(A,’c’): fungsi or dioperasikan terhadap elemen-elemen pada setiap vektor baris yang menyusun matrik A.

Contoh penggunaan fungsi or adalah sebagai berikut.

 

Fungsi-Fungsi Pengujian

Tabel 10.4 adalah daftar dari beberapa fungsi yang dapat digunakan untuk berbagai macam operasi seperti memeriksa eksistensi sebuah variabel, menguji tipe dan nilai dari elemen-elemen matrik dan lain sebagainya. Output yang dihasilkan oleh fungsi-fungsi tersebut adalah konstanta boolean T (true, benar) atau konstanta boolean F (false, salah) tergantung pada hasil pengujiannya.

 Berikut ini ilustrasi penggunaan dari fungsi-fungsi pengujian.

 Informasi yang dihasilkan oleh suatu fungsi pengujian kadangkala diperlukan sebagai kondisi yang diuji di dalam sebuah statemen kondisional, seperti yang ditunjukkan pada contoh di bawah ini.

 

 

BAB 11

Perulangan dan Kondisional

 Scilab menyediakan beberapa statemen yang dapat digunakan untuk mengontrol alur eksekusi terhadap serangkaian statemen. Statemen-statemen tersebut yaitu for, while, if– else dan select–case, break dan continue.

For

Statemen for digunakan untuk melakukan eksekusi secara berulang (iterasi) dalam jumlah tertentu terhadap suatu blok-statemen. Bentuk umum statemen ini adalah sebagai berikut:

for var = exp blok-statemen

end

Dimana var adalah variabel perulangan dan exp adalah ekspresi yang digunakan untuk mengontrol suatu perulangan for. Ekspesi perulangan biasanya berupa sebuah vektor inkremental, j:k atau j:d:k.

Contoh perulangan for yang menggunakan vektor inkremental i:j sebagai ekspresi yang digunakan untuk mengontrol suatu perulangannya adalah sebagai berikut:

Contoh perulangan for yang menggunakan vektor inkremental i:j:k sebagai ekspresi perulangannya adalah sebagai berikut :

Selain berupa suatu vektor inkremental, ekspresi yang digunakan untuk mengontrol suatu perulangan for juga dapat berupa sebuah vektor atau matrik sembarang. Misalkan V adalah sebuah vektor atau matrik yang digunakan sebagai ekspresi perulangan maka statemen perulangannya secara umum dapat dinyatakan sebagai berikut:

for var = V

blok-statemen

end

Pada sebuah perulangan yang menggunakan suatu vektor sebagai ekspresi perulangannya maka jumlah perulangannya adalah sebanyak jumlah elemen vektor dimana pada setiap langkah perulangan ke-i nilai variabel iterasinya adalah nilai elemen ke-i, seperti yang diperlihatkan pada contoh di bawah ini.

Kemudian pada suatu perulangan yang menggunakan suatu matrik sebagai ekspresi perulangannya maka jumlah perulangannya adalah sebanyak jumlah kolom matrik dan pada setiap langkah perulangan ke-i nilai variabel iterasinya adalah vektor kolom ke-i, seperti yang diperlihatkan pada contoh berikut ini.

Statemen perulangan for juga dapat diletakkan di dalam sebuah statemen perulangan yang lain, seperti pada contoh di bawah ini.

 

Penggunaan statemen for pada sebagian besar contoh-contoh yang telah diberikan hanya sebagai ilustrasi saja untuk memperjelas penggunaan statemen for. Pada beberapa contoh di atas, statemen for dapat diganti dengan statemen lain yang berbasis vektor.

Pada perhitungan ini penggunaan statemen for tidak dapat dihindari dan digantikan dengan statemen lain yang berbasis vektor.

While

Statemen perulangan while digunakan untuk menangani suatu proses perulangan yang jumlah perulangannya tidak dapat ditentukan secara pasti. Bentuk umum dari statemen perulangan while adalah sebagai berikut:

while ekspresi then

 blok-statemen

end

Blok statemen yang terdapat di dalam sebuah blok perulangan while akan dieksekusi secara berulang selama ekspresi yang diuji masih bernilai benar, proses perulangan akan dihentikan jika ekspresi yang diuji bernilai salah. Kata-kunci then dapat diganti dengan ENTER, do, simbol koma (,) atau simbol titik-koma (;).Berikut ini sebuah contoh operasi perulangan dengan statemen while.

Contoh berikutnya yang menggambarkan penggunaan statemen perulangan while adalah sebagai berikut:

 

Break

Statemen break digunakan untuk menghentikan suatu proses perulangan secara paksa. Pada suatu perulangan yang bersarang, statemen break hanya akan menghentikan proses perulangan dimana statemen break berada.

Berikut ini contoh penggunaan statemen break:

Pada contoh ini, ekspresi logika yang diuji pada statemen while nilainya selalu benar (%t) sehingga statemen break digunakan untuk menghentikan proses perulangannya jika suatu kondisi tertentu telah dipenuhi.

Continue

Di dalam suatu blok perulangan, penggunaan statemen continue akan menyebabkan statemen-statemen yang terletak di bawahnya tidak akan dieksekusi dan prosesnya dilanjutkan ke langkah perulangan berikutnya. Statemen continue yang terletak di dalam suatu perulangan yang bertingkat hanya akan berpengaruh terhadap blok perulangan yang melingkupinya saja.

Contoh penggunaan statemen continue adalah sebagai berikut.

Penggunaan statemen continue di dalam suatu blok perulangan kadang dapat dihindari dengan menggunakan statemen-statemen lain yang ekuivalen. Sebagai contoh, perhitungan di atas dapat diselesaikan tanpa harus menggunakan statemen continue dengan statemen- statemen sebagai berikut.

Seperti yang terlihat pada contoh ini, blok statemen yang tidak menggunakan statemen continue lebih ringkas dan lebih mudah dibaca daripada blok statemen yang menggunakan statemen continue.

If-Else

Statemen if–else digunakan untuk mengontrol apakah suatu blok statemen akan dieksekusi atau tidak. Bentuk paling sederhana dari statemen ini adalah sebagai berikut:

if ekspresi then

 blok-statemen

end

Blok statemen yang terletak di dalam blok if hanya akan dieksekusi jika ekspresi yang diuji bernilai benar. Kata-kunci then dalam blok kondisional if-else dapat diganti dengan ENTER, tanda koma (,) atau tanda titik-koma (;).

Apabila terdapat dua alternatif pilihan untuk ekspresi yang diuji dalam blok kondisional maka blok kondisional if-else cocok untuk digunakan.

if ekspresi then

 blok-statemen pertama

else

 blok-statemen kedua

end

Pada blok kondisional if-else jika ekspresi yang diuji mempunyai nilai benar maka blok- statemen pertama yang akan dieksekusi namun jika ekspresi yang diuji bernilai salah maka blok-statemen kedua yang akan dieksekusi.

Contoh penggunaan statemen if - else adalah sebagai berikut:

Apabila ekspresi yang diuji dalam suatu blok kondisional yang mempunyai lebih dari dua macam pilihan maka bentuk kondisional yang sesuai adalah if-elseif-else yang mempunyai bentuk umum sebagai berikut:

if ekspresi_1 then

 blok-statemen pertama

elseif ekspresi_2 then

 blok-statemen kedua

. . .

else

 blok-statemen ke-n

end

Pada blok kondisional if-elseif-else, suatu blok-statemen akan dieksekusi jika ekspresi yang diuji untuk blok-statemen tersebut mempunyai nilai benar. Apabila semua ekspresi yang diuji tidak ada yang mempunyai nilai logika benar maka blok-statemen yang terdapat pada blok else yang akan dieksekusi. Blok else bersifat opsional dan dapat diabaikan apabila tidak diperlukan.

Berikut ini adalah contoh penggunaan statemen if-elseif-else:

Statemen kondisional juga dapat dibuat bersarang atau berada di dalam statemen kondisional yang lainnya, seperti yang ditunjukkan pada contoh di bawah ini.

Select-Case

Statemen kondisional select-case cocok untuk digunakan jika ekspresi yang diuji dalam blok kondisional mempunyai nilai diskrit, baik berupa suatu data integer maupun string. Bentuk umum dari statemen select-case adalah sebagai berikut:

select ekspresi

 case ekspresi_1 then

 blok-statemen pertama

 case ekspresi_2

 blok-statemen kedua

 . . .

 else

 blok-statemen ke-n

end

Pada blok kondisional select-case, jika ekspresi yang diuji mempunyai nilai yang sama dengan nilai ekspresi dari suatu case maka blok-statemen pada case tersebut yang akan dieksekusi. Namun jika nilai dari ekspresi yang diuji tidak ada yang sama dengan salah satu dari nilai ekspresi pada suatu case maka blok statemen yang terdapat pada blok else yang akan dieksekusi. Blok else bersifat opsional dan dapat tidak digunakan jika tidak diperlukan.

Berikut ini contoh penggunaan statemen select–case.

Dalam suatu operasi kondisional, jika ekspresi yang diuji mempunyai nilai diskrit maka penggunaan statemen select-case adalah lebih cocok dibandingkan dengan statemen if- elseif-else. Hal ini karena blok statemen kondisional yang dibuat dengan statemen select-case lebih mudah untuk dibaca dan mempunyai bentuk yang lebih elegan.

BAB 12

Editor Teks SciNotes

SciNotes adalah sebuah program editor teks yang disediakan oleh Scilab untukmemudahkan pembuatan atau pengembangan sebuah file skrip atau fungsi. SciNotes dapat dijalankan melalui menu Applications  SciNotes yang terdapat pada jendela konsol Scilab atau dengan menggunakan perintah editor atau scinotes.

Berikut ini adalah sebuah ilustrasi pembuatan sebuah fungsi dalam SciNotes.

Bab 13Skrip

Skrip adalah sebuah file teks yang di dalamnya terdapat statemen-statemen Scilab. Padasaat suatu skrip dijalankan maka statemen-statemen yang terdapat di dalamnya akandieksekusi seolah-olah statemen-statemen tersebut diketikkan pada Jendela Scilab.

Pembuatan Skrip

Contoh 1. (Deret Fibonacci). Berikut ini adalah sebuah skrip [fibo.sce] untuk menentukan sejumlah 12 suku awal dari deret Fibonacci.

 

 Cara Menjalankan Suatu Skrip

Statemen-statemen yang terdapat di dalam sebuah skrip yang sedang dibuka pada jendela SciNotes dapat dijalankan melalui menu Execute. 

Contoh 3. (Deret Bilangan Prima) Berikut ini adalah sebuah skrip untuk membuat deret bilangan prima yang nilainya lebih kecil dari suatu bilangan bulat n.

// Deret bilangan prima yang lebih kecil dari suatu bilangan bulat n

clear

mprintf("\n Deret bilangan prima yang lebih kecil")

mprintf(" dari suatu bilangan bulat n\n\n")

n = input(" Bilangan bulat n ? ");

Kelebihan dan Kelemahan Skrip

Penyelesaian suatu perhitungan yang relatif panjang melalui sebuah file skrip merupakan cara yang lebih baik dan efektif dibandingkan penyelesaiannya melalui jendela Scilab.

Bab 14

Fungsi

File-fungsi adalah sebuah file teks yang di dalamnya terdapat statemen-statemen Scilab dimana statemen-statemen tersebut harus diitulis dengan sintaks sebagai berikut.

function [out1, out2, ...] = func_name(in1, in2, ...)

 statemen-statemen

endfunction

Contoh 1. (Deret Fibonacci). N Suku-suku awal dari deret Fibonacci [Fibonacci.sci]

Penggunaan Fungsi-Fungsi yang Tersimpan pada Suatu File-Fungsi

Suatu fungsi yang terdapat dalam sebuah file-fungsi harus dieksekusi terlebih sebelum dapat digunakan. Untuk file fungsi yang terbuka pada jendela SciNotes, hal ini dapat dilakukan melalui menu Execute.

 Setelah dilakukan eksekusi terhadap file-fungsi, fungsi-fungsi yang terdapat di dalamnya dapat dijalankan seperti halnya fungsi-fungsi yang telah terpasang di dalam Scilab.

Membuat Suatu Fungsi Secara Langsung pada Jendela Scilab

Selain dalam bentuk file-fungsi, sebuah fungsi juga dapat dibuat secara langsung pada jendela Scilab dengan menggunakan blok statemen function-endfunction atau dengan menggunakan fungsi deff

Pembuatan Fungsi dengan Blok Statemen Function-Endfunction

Berikut ini ilustrasi pembuatan fungsi secara langsung pada jendela Scilab.

Pembuatan Fungsi dengan Fungsi Deff

Pembuatan sebuah fungsi baru secara langsung pada jendela Scilab dengan fungsi deff dapat dilakukan dengan menggunakan sintaks sebagai berikut:

deff("[out1,out2,...] = fname(in1,in2,...)", [blok_statemen])

dimana out1,out2 adalah argumen-argumen output, in1,in2 adalah argumen-argumen input dan blok_statemen adalah statemen-statemen untuk fungsi fname.

Variabel Lokal dan Variabel Global

Variabel-variabel yang terdapat di dalam suatu fungsi adalah variabel lokal. Variabel- variabel tersebut hanya akan ada selama proses eksekusi terhadap fungsi berlangsung dan tidak mempunyai pengaruh terhadap variabel-variabel yang telah tersimpan dalam ruang- kerja meskipun mempunyai nama yang sama.

Ilustrasi mengenai variabel lokal dapat dilihat pada contoh di bawah ini.

 

Berikut ini ilustrasi mengenai variabel global.

 

Fungsi Rekursif

Rekursi adalah proses pemanggilan sebuah fungsi terhadap dirinya sendiri. Suatu fungsi yang di dalamnya terdapat suatu proses rekursi disebut sebagai fungsi rekursif.

 

Berikut ini adalah statemen-statemen untuk membuat fungsi Fibonacci.

 

 

Pengontrolan Eksekusi Suatu Fungsi

Contoh 7. Pada contoh ini fungsi [secant.sci] yang terdapat pada Contoh 3 dimodifikasi dengan menyisipkan perintah return, error, warning dan abort ke dalamnya dan file hasil modifikasinya dinamakan [fsecant.sci].

Menyela Eksekusi Program dan Melakukan Debugging

Pause

 Statemen pause akan menyela proses eksekusi yang sedang berlangsung di dalam sebuah fungsi atau skrip. Proses eksekusi akan dihentikan pada baris dimana statemen pause tersebut diletakkan. Statemen pause biasanya digunakan untuk dalam proses debugging terhadap suatu skrip atau fungsi

Contoh 8. File-fungsi [psecant.sci] yang terdapat pada contoh merupakan modifikasi dari file-fungsi [fsecant.sci] dengan menambahkan statemen pause di dalamnya.

 

Setbpt

Berbeda dengan pause, statemen setbpt hanya dapat digunakan terhadap sebuah fungsi. Pada penggunaan statemen setbpt tidak perlukan adanya penyisipan statemen tersebut ke dalam fungsi dan dijalankan pada jendela Scilab dengan sintaks sebagai berikut: etbpt(nama-fungsi, [nomer-baris]) dimana nama-fungsi adalah nama fungsi dan nomer-baris adalah nomer-nomer baris yang akan dipasang titik sela.

 

Jumlah Argumen Input dan Output

Jumlah argumen input dan output yang dipakai pada saat menjalankan sebuah fungsi dapat diketahui dengan fungsi argn yang mempunyai sintaks sebagai berikut:

[lhs,rhs] = argn()

lhs = argn(1)

rhs = argn(2)

dimana rhs dan lhs adalah jumlah argumen input dan output yang digunakan.

Penggunaan fungsi argn dapat dilihat pada fungsi fabc pada contoh di bawah ini.

Selanjutnya jika fungsi fabc dijalankan maka output yang muncul adalah sebagai berikut.

Menampilkan Baris Komentar yang Terdapat Pada Bagian Awal Suatu Fungsi

Pada bagian awal suatu fungsi biasanya terdapat beberapa baris komentar. Baris komentar tersebut dapat kita tampilkan dengan perintah sebagai berikut

head_comments("func")

Dimana func adalah nama fungsi. Sebelum perintah tersebut dijalankan maka kita harus memanggil fungsinya terlebih dahulu ke dalam ruang kerja Scilab.

Berikut ini adalah contoh-contoh penggunaan perintah head_comments.

Kelebihan Fungsi

Dibandingkan dengan skrip, fungsi mempunyai kelebihan sebagai berikut.

  • Fungsi mempunyai argumen input sehingga suatu fungsi dapat digunakan untuk melakukan perhitungan dengan berbagai macam data yang berbeda tanpa harusmelakukan perubahan terhadap statemen-statemen yang terdapat di dalamnya. Jikaskrip digunakan untuk melakukan perhitungan terhadap beberapa data yang berbedamaka harus dilakukan pengeditan terhadap file skripnya untuk merubah nilai inputnya
  • Semua variabel yang terdapat di dalam suatu fungsi bersifat lokal dan tidak akantersimpan pada ruang kerja, kecuali untuk variabel-variabel yang dinyatakan sebagaivariabel global. Di dalam skrip, semua variabel yang terdapat di dalamnya akantersimpan pada ruang kerja sehingga secara tidak sengaja dapat merubah nilai darivariabel yang telah tersimpan sebelumnya apabila mempunyai nama yang sama.

Contoh 11. (Metode Optimasi Golden Section). Metode golden section adalah salah satu metode yang populer untuk penyelesaian suatu persoalan optimasi nonlinier yang terdiri dari satu variabel. Berikut ini adalah statemen-statemen untuk metode golden section.

 

Bab 15

Input dan Output

Menampilkan Nilai Suatu Variabel dengan Fungsi Disp

 

Mencetak Nilai Variabel dengan Fungsi Print

 Membuka dan Menutup File Data

Misalkan data-data yang akan disimpan ke dalam file adalah sebagai berikut:

 

Menyimpan dan Membaca Data dengan Format Fortran

Mencetak Nilai Variabel dengan Fungsi Mprintf

Menyimpan dan Membaca Suatu Data Matrik

Menyimpan dan Membaca Data dengan Format Biner

 

 

 

 

Kategori

  • Masih Kosong

Blogroll

  • Masih Kosong