Perbandingan dan Logika Serta Penggunaan Scilab Dalam Operasi Matematika (Tugas)

04 October 2022 16:57:53 Dibaca : 1316

Tugas 1

Nama                        : Sri Purwandaningsih Waluya

NIM                           : 411421016

Kelas/Prodi               : B/Pendidikan Matematika

Mata Kuliah               : Komputasi dan Pemograman

Dosen Pengampuh   : Agusyarif Rezka Nuha, S.Pd., M.Si

  • Operator-operator Perbandingan

Operasi perbandingan ialah operasi yang dioperasikan secara elemen dengan elemen sehingga operasi ini hanya dapat dilakukan terhadap antara skalar dengan skalar atau vektor/matrik, atau antara dua buah matrik/vektor yang berdimensi sama. Operator perbandingan dipakai untuk membandingkan 2 buah nilai, apakah nilai tersebut sama besar, lebih kecil, lebih besar, dst. Hasil dari operator perbandingan ini adalah boolean true atau false.

Berikut contoh dari operasi perbandingan.

Operasi perbandingan biasanya digunakan sebagai ekspresi yang diuji dalam suatu statement conditional if else atau sebagai ekspresi yang digunakan untuk mengontrol proses literasi dalam suatu statement penilaian while.

  • Operasi Logika

Suatu operasi logika digunakan untuk menentukan nilai logika yang diperoleh oleh kombinasi logika atau (or), logika dan (and) dari dua objek boolean, atau untuk melakukan operasi negasi (not) terhadap suatu objek boolean. Operasi logika adalah operasi yang bersifat elemen dengan elemen. Objek-objek yang diuji dalam suatu operasi logika dapat berupa suara ekspresi perbandingan maupun berupa suara konstanta boolean.

Operator-operator Logika 

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

 

  • Sedangkan dalam perulangan while dapat dilihat pada contoh dibawah ini.

  • Suatu operasi logika dapat diterapkan pada obyek-obyek numerik. pada hal ini, angka nol dianggap sebagai konstanta 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.

 

 

  • Fungsi-fungsi Logika

A. Fungsi And

Fungsi n adalah fungsi untuk operasi logika berikut ini dan berikut ini sintak dari fungsi n. Dapat dilihat pada contoh dibawah ini.

B. Fungsi Or

Berikut adalah contoh penggunaan dari fungsi or.

  • BAB 11 "Perulangan dan Kondisional" 

Scilab menyediakan beberapa statemen yang dapat dipakai untuk mengontrol alur eksekusi terhadap serangkaian statemen. Statemen-statemen tersebut diantaranya  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-statemenend

Dimana var ialah 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.

Berikut ini adalah contoh dari perulangan for yang menggunakan vektor inkremental i:j sebagai ekspresi yang digunakan untuk mengontrol suatu perulangannya.

Kemudian contoh perulangan for yang menggunakan vektor inkremental i:j:k sebagai ekspresi perulangannya dapat dilihat sebagai berikut :

Selain berupa suatu vektor inkremental, ekspresi yang dipakai 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-statemenend

Pada sebuah perulangan yang menggunakan suatu vektor sebagai ekspresi perulangannya maka jumlah perulangannya ialah sebanyak jumlah elemen vektor dimana pada setiap langkah perulangan ke-i nilai variabel iterasinya adalah nilai elemen ke-i, dapat dilihat pada contoh dibawah ini.

 

Lalu terdapat suatu perulangan yang menggunakan suatu matrik sebagai ekspresi perulangannya, maka jumlah perulangannya ialah sebanyak jumlah kolom matrik dan pada setiap langkah perulangan ke-i nilai variabel iterasinya adalah vektor kolom ke-i, perhatikan contoh dibawah.

 

Lalu 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, lhat lah contoh dibawah ini.

 

Statemen perulangan for juga dapat diletakkan di dalam sebuah statemen perulangan yang lain, dapat dilihat pada contoh dibawah 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.

Penggunaan statemen for sebaiknya hanya digunakan ketika statemen yang berbasis vektor sulit atau tidak dapat digunakan, dapat dilihat pada perhitungan dibawah ini.

,

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-statemenend

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 denganENTER, do, simbol koma (,) atau simbol titik-koma (;).

Contoh operasi perulangan dengan statemen while:

 

  • 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.

 

  • Continue

Jika dalam suatu blok perulangan, penggunaan statemen continue akan mengakibatkan 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 dari penggunaan statemen continue:

// 5 bilangan acak genap

 

  • If-Else

Statemen if–else digunakan untuk mengontrol apakah suatu blok statemen akan dieksekusi atau tidak. Bentuk paling sederhana dari statemen ini yaitu:if ekspresi then    blok-statemenend

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 (;).

Berikut penggunaan statemen if:

 

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

Penggunaan statemen if - else dapat kita lihat dibawah ini:

 

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 pertamaelseif ekspresi_2 then   blok-statemen kedua. . .else  blok-statemen ke-nend

 

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.

Penggunaan statemen if-elseif-else sebagai berikut:

 

  • 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. Sedangkan bentuk umum  dari statemen select-case adalah yaitu:

select ekspresi    case ekspresi_1 then         blok-statemen pertama    case ekspresi_2         blok-statemen kedua . . . else         blok-statemen ke-nend

 

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 Perulangan dan Kondisional - 171 akan dieksekusi. Blok else bersifat opsional dan dapat tidak digunakan jika tidak diperlukan.

Contoh penggunaan select-Case:

 

Dalam suatu operasi kondisional, jika ekspresi yang diuji mempunyai nilai diskrit maka penggunaan statemen select-case adalah lebih cocok dibandingkan dengan statemen ifelseif-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 untuk memudahkan 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. Gambar berikut ini adalah tampilan dari jendela editor teks SciNotes.

SciNotes menyediakan fitur-fitur menarik yang sangat berguna pada waktu pembuatan atau pengeditan suatu file skrip atau fungsi. Fitur-fitur tersebut antara lain sebagai berikut:

  • Penggunaan warna-warna tertentu untuk memperjelas sintaksis suatu statemen.
  • Indentasi secara otomatis pada saat penulisan suatu blok statemen perulangan atau kondisional.
  • Dapat memperbaiki indentasi pada statemen-statemen yang diblok.
  • Autocompletion terhadap operator atau kata-kunci.
  • Pencarian dan penggantian terhadap suatu kata atau frasa yang terdapat di dalam file yang sedang dibuka.

 

  • BAB 13 "Skrip"

Skrip adalah sebuah file teks yang di dalamnya terdapat statemen-statemen Scilab. Pada saat suatu skrip dijalankan maka statemen-statemen yang terdapat di dalamnya akan dieksekusi seolah-olah statemen-statemen tersebut diketikkan pada Jendela Scilab.

  • Pembuatan Skrip       

Pada dasarnya suatu file skrip dapat dibuat dengan menggunakan sembarang program editor teks, seperti notepad. Namun cara terbaik dalam pembuatan sebuah file skrip yaitu dengan program editor teks SciNotes karena program tersebut merupakan teks editor yang disediakan oleh Scilab untuk memudahkan pembuatan sebuah file skrip atau file fungsi. SciNotes dapat dijalankan melalui jendela Scilab melalui menu Application SciNotes.

Sebuah skrip yang telah selesai dibuat dengan teks editor SciNotes dapat disimpan dengan menggunakan menu File Save. Meskipun dapat digunakan sembarang ektensi, namum sebuah file skrip sebaiknya disimpan dengan ekstensi sce .

  • Cara Menjalankan Suatu Skrip

Statemen-statemen yang terdapat di dalam sebuah skrip yang sedang dibuka pada jendela SciNotes dapat dijalankan melalui menu Execute. Apabila skrip [fibo.sce] pada Contoh 1 dieksekusi melalui menu Execute File with no Echo maka tampilan berikut ini akan muncul pada Jendela Scilab.

Sebuah file skrip yang tersimpan pada sebuah direktory dapat dieksekusi dengan statemen exec(file_skrip) dimana file_skrip adalah nama filenya. Apabila filenya tersimpan pada direktori kerja maka argumen file_skrip cukup dinyatakan dengan menggunakan nama filenya saja, seperti contoh di bawah ini:-->exec('fibo.sce');

Namun jika filenya tidak tersimpan pada direktori kerja maka argumen file_skrip harus berupa nama file skrip dan nama direktorinya, seperti yang contoh di bawah ini:-->exec('D:\Skrip dan Fungsi\fibo.sce');Apabila di belakang statemen exec(file_skrip) tidak ditambahkan tanda titik-koma (;) maka statemen-statemen yang terdapat di dalam skrip yang dieksekusi akan ditampilkan pada jendela Scilab.

  • Contoh (Deret Fibonacci)

 Dibawah ini merupakan sebuah skrip [fibo.sce] untuk menentukan sejumlah 5 suku awal dari deret Fibonacci. Dan lakukan eksekusi melalui menu Execute File With no Echo. 

 

 

  • Contoh (Deret Bilangan Prima)  

 

 

  • 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. Hal ini karena jika ditemukan kesalahan dalam perhitungan atau dalam penulisan statemen dalam file skrip maka perbaikan kesalahannya hanya dilakukan terhadap statemen-statemen yang salah saja. Seandainya perhitungannya dilakukan melalui jendela Scilab maka semua statemennya harus ditulis ulang kembali disertai dengan perbaikan pada statemen-statemen yang salah. Keuntungan lainnya yaitu sebuah file skrip dapat digunakan sebagai dokumentasi dari suatu perhitungan yang telah dilakukan.

Sayangnya untuk suatu perhitungan dengan data yang berbeda maka harus dilakukan pengeditan terlebih dahulu terhadap file skripnya dan setelah itu melakukan eksekusi untuk melihat hasil perhitungannya. Untuk kondisi semacam ini penggunaan skrip menjadi tidak praktis dan sebaiknya digunakan file fungsi. Penjelasan rinci mengenai file fungsi diberikan pada bab selanjutnya.

 

  • BAB 14 "Fungsi"

Suatu fungsi adalah sekumpulan statemen yang merepresentasikan sebuah komputasi tertentu. Suatu fungsi dapat dibuat dalam bentuk sebuah file teks (file-fungsi) atau dibuat secara langsung pada jendela Scilab.

  • File-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-statemenendfunction

Dimana func_name adalah nama fungsi, in1, in2 adalah argumen-argumen input kemudian out1, out2 adalah argumen-argumen output. Pada fungsi yang tidak mempunyai argumen input penggunaan tanda kurung kiri dan kurung kanan, ( ), bersifat opsional. Pada fungsi-fungsi yang mempunyai argumen output tunggal penggunaan kurung-siku kiri dan kurung-siku kanan, [ ], bersifat opsional. Aturan penamaan fungsi adalah sama seperti aturan penamaan suatu variabel.

 

Berikut ini beberapa hal yang sebaiknya dilakukan pada saat pembuatan sebuah fungsi.

  • Pada bagian awal sebuah fungsi, dimasukkan beberapa baris komentar yang berisi tentang tujuan komputasi dari fungsi.
  • Variabel-variabel yang terdapat di dalam suatu fungsi harus mudah dimengerti.
  • Terdapat penjelasan singkat tentang variabel-variabel yang digunakan.
  • Menuliskan baris komentar pada bagian awal dari suatu blok statemen yang cukup panjang maupun pada blok-statemen untuk perhitungan yang cukup sulit.
  • Menggunakan baris kosong untuk memisahkan suatu blok-statemen dengan blok-statemen lainnya.
  • Menggunakan indentasi pada blok-statemen perulangan dan kondisional.
  • Menggunakan spasi dan tanda kurung dalam penulisan suatu ekspresi matematika sehingga ekspresinya mudah dibaca dan dipahami.

 

  • 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. File-fungsi yang tersimpan pada suatu direktori tertentu dapat dieksekusi dengan statemen exec(nama_file), dimana nama_file adalah nama dari file-fungsi. Jika file-fungsi tersimpan pada direktori kerja maka argumen nama_file cukup dengan nama filenya saja, seperti pada contoh di bawah ini:

-->exec('trig_derajat.sci');

Namun jika file-fungsi tidak tersimpan pada direktori kerja maka argumen nama_file harus ditulis dengan nama file-fungsi beserta nama direktorinya.-->exec('D:\Skrip dan Fungsi\trig_derajat.sci’);

Jika di belakang statemen exec(nama_file) tidak ditambahkan tanda titik-koma maka semua statemen yang terdapat di dalam file-fungsi akan ditampilkan pada jendela Scilab. Sebuah file-fungsi juga dapat dieksekusi melalui menu File Execute yang terdapat pada jendela Scilab.Setelah dilakukan eksekusi terhadap file-fungsi, fungsi-fungsi yang terdapat di dalamnya dapat dijalankan seperti halnya fungsi-fungsi yang telah terpasang di dalam Scilab.

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

 

  • Contoh 2. Beberapa fungsi trigonometri dengan argumen sudut dalam satuan derajat [trig_derajat.sci].

 

  • 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. Fungsi-fungsi yang dibuat dengan cara ini akan tersimpan secara otomatis di dalam ruang kerja sehingga dapat langsung digunakan tanpa perlu dipanggil terlebih dahulu seperti pada sebuah file-fungsi. Fungsi-fungsi yang dibuat secara langsung pada jendela Scilab hanya bersifat sementara dan akan hilang ketika program Scilab ditutup.

  • Pembuatan Fungsi dengan Blok Statemen Function-Endfunction

Sintaks pembuatan suatu fungsi baru secara langsung pada jendela Scilab dengan menggunakan blok statemen function-endfunction adalah sama seperti sintaks penulisan suatu fungsi dalam sebuah file-fungsi.

  • Dibawah 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.

Semua statemen yang terdapat di dalam blok_statemen harus ditulis diantara tanda kutip tunggal (') atau tanda kutip-ganda (") dan untuk memisahkan statemen yang berbeda dapat digunakan tanda koma (,) atau titik-koma (;).

  • Berikut ini contoh-contoh pembuatan suatu fungsi dengan menggunakan perintah deff.

 

  • Variabel Lokal dan Variabel Global 

1. Variabel Lokal

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.

  • Berikut ini contoh ilustrasi mengenai variabel lokal.

 

2. Variabel Global

Variabel global adalah variabel yang tersimpan baik di dalam fungsi maupun di dalam ruang kerja. Sebuah variabel dapat dibuat sebagai variabel global dengan menggunakan fungsi global yang mempunyai sintaks sebagai berikut:   global('var1', 'var2', ..., 'varn')   global var1 var2 ... varn

dimana var1, var2, varn adalah nama-nama variabel global. Untuk merubah nilai suatu variabel global dari dalam sebuah fungsi maka kita juga harus menambahkan fungsi global ke dalam fungsi.

  • Berikut ini contoh ilustrasi 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 adalah implementasi statemen-statemen untuk fungsi faktorial.

 

 

  • BAB 15 "Input dan Output"
  • Memasukan Data dengan Fungsi Input

Selain melalui baris perintah, suatu data juga dapat dimasukan dengan fungsi input dengan sintaks sebagai berikut.

x = input("teks")

x = input ("teks", "string")

Dimana teks adalah keterangan tentang data yang akan dimasukan. Jika data yang dimasukan berupa string maka "string" harus digunakan sebagai argumen kedua pada fungsi input.  Argumen "string" dapat disingkat dengan karakter tunggal "s".

  • Menampilkan Nilai Suatu Variabel dengan Fungsi Disp

Selain dengan cara menuliskan nama variabelnya pada baris perintah, nilai dari suatu variabel var juga dapat ditampilkan pada Jendela Scilab dengan fungsi disp(var), dapat diberikan contoh sebagai berikut:

  • Menampilkan Nilai Suatu Variabel dengan Fungsi Disp

Selain dengan cara menuliskan nama variabelnya pada baris perintah, nilai dari suatu variabel var juga dapat ditampilkan pada Jendela Scilab dengan fungsi disp(var), seperti yang ditunjukkan pada beberapa contoh di bawah ini.