Modul Praktikum Pak 2022
Modul Praktikum Pak 2022
Disiapkan oleh:
Prof. Dr. Ir. Lilik Sutiarso, M.Eng
Andri Prima Nugroho, Ph.D.
Makbul Hajad, Ph.D
2022
Kata Pengantar
Puji syukur ke hadirat Allah SWT, yang telah memberikan rahmat-Nya sehingga Modul
Praktikum Pemrograman dan Aplikasi Komputer untuk Mahasiswa Program Studi Teknik
Pertanian, Departemen Teknik Pertanian dan Biosistem, Fakultas Teknologi Pertanian,
Universitas Gadjah Mada ini dapat dapat terwujud dengan baik.
Modul praktikum ini dibuat sebagai pedoman dalam melakukan kegiatan Praktikum
yang merupakan kegiatan penunjang mata kuliah Pemrograman dan Aplikasi Komputer pada
Program Studi Teknik Pertanian, Departemen Teknik Pertanian dan Biosistem, Fakultas
Teknologi Pertanian, Universitas Gadjah Mada. Modul praktikum ini diharapkan dapat
membantu mahasiswa dalam mempersiapkan dan melaksanakan praktikum dengan lebih
baik, tera- rah, dan terencana. Pada setiap topik telah ditetapkan tujuan pelaksanaan
praktikum dan semua kegiatan yang harus dilakukan oleh mahasiswa serta teori yang
mendasari secara singkat untuk memperdalam pemahaman materi.
Penyusun menyakini bahwa dalam pembuatan Modul Praktikum Pemrograman dan
Aplikasi Komputer ini masih jauh dari sempurna. Oleh karena itu penyusun mengharapkan
kritik dan saran yang membangun guna penyempurnaan ini dimasa yang akan datang.
Penyusun mengucapkan terima kasih kepada semua pihak yang telah membantu proses
penyusunan modul ini.
Penyusun
Daftar Isi
BAB 1 Pendahuluan 5
2. 1. Perlunya belajar programming? 5
2. 2. Kreativitas dan motivasi 6
2. 3. Memahami konsep pemrograman 6
2. 4. Bahasa Program Python 6
2. 5. Mengapa memilih Python? 7
2. 6. Terminologi: Interpreter dan Compiler 9
2. 7. Instalasi program Python 10
2. 8. Memulai Pemrograman Python 12
2. 9. Kemungkinan kesalahan 14
2. 10. Latihan 15
BAB 2 Komponen Pemrograman 16
2. 1. Value dan Types 16
2. 2. Variables 17
2. 3. Statements 18
2. 4. Operators dan Operands 18
2. 5. Expressions 19
2. 6. Order of Operations 19
2. 7. Modulus Operator 20
2. 8. String Operations 20
2. 9. Input oleh user 20
2. 10. Komentar 22
2. 11. Latihan 22
BAB 3 Eksekusi Kondisional 24
3.1. Ekspresi Boolean 24
3.2. Operator logika 24
3.3. Eksekusi kondisi 25
3.4. Eksekusi pilihan 25
3.5. Kondisi berantai 26
3.6. Kondisional Bersarang 27
3.7. Debugging 28
3.8. Latihan 28
BAB 4 Bekerja dengan Fungsi 29
4.1. Memanggil Fungsi 29
4.2. Fungsi yang tersedia di Python 29
4.3. Fungsi untuk konversi 30
4.4. Fungsi matematika 30
4.5. Membuat fungsi baru 31
4.6. Definisi dan penggunaan 32
4.7. Alur eksekusi 33
4.8. Parameter dan argumen 33
4.9. Mengapa menggunakan fungsi? 34
4.10. Latihan 35
BAB 5 Pengenalan Aplikasi Matlab 36
5.1. Definisi Matlab 36
5.2. Pemrograman dengan Matlab 36
5.3. Variabel dan Operator 40
5.4. Array dan Matriks 44
▪ Matriks Khusus 46
5.5. Grafik 49
5.6. Visualisasi 2D dan 3D 54
BAB 6 M-File & Statement Control 57
6. 1. M-File 57
6. 2. Statement Control 61
BAB 1 Pendahuluan
2. 1. Perlunya belajar programming?
Salah satu komptensi mahasiswa Teknik Pertanian dan Biosistem adalah sebagai
sistem analis, yaitu kemampuan untuk menganalisis suatu kondisi atau permasalahan yang
ada di lapangan dan memformulasikan sebuah solusi atau tahapan penyelesaian
permasalahannya berdasarkan ilmu pengetahuan yang mendasarinya (fisika, biologi,
matematika, mekanika, dll.). Sesuai dengan penjelasan sebelumnya, output dari tahap
pemecahan masalah adalah algoritma, dan akan ditulis dalam Bahasa pemrograman
tertentu dan untuk dapat melaksanakan penyelesaian permasalahan secara komprehensif,
skill pemrograman diperlukan, setidaknya dapat menyusun logika dan menerapkan dalam
penyelesaian menggunakan bahasa pemrograman. Tren penelitian terkini di era revolusi
Industri 4.0 (RI 4.0), bidang Teknik Pertanian mengarah kepada era Cyberphysical system,
semua hal yang berkaitan dengan teknologi Cloud dan komputasi cerdas berbasis
Kecerdasan Buatan (Artificial Intelligence). Sehingga untuk mendukung penelitian dan
penyelesaian permasalahan dibidang ini diperlukan kemampuan abstraksi dan mewujudkan
dalam solusi permasalahan yang dapat diselesaikan dengan aplikasi berbasis komputer.
Oleh karena itu, pembelajaran pemrogaman komputer wajib diikuti dengan status mata
kuliah wajib yang diberikan pada semester awal.
Pemrograman menjadi salah satu proses pembuatan kode program yang nantinya akan
dieksekusi oleh program dengan bahasa tertentu. Ada dua skill penting yang perlu dimiliki
untuk bisa melakukan pemrograman yaitu:
1. Menguasai bahasa pemrograman, dalam modul ini adalah Python. Anda harus
menguasai vocabulary dan grammar nya agar bisa menyusun sebuah kalimat
dalam bahasa Python yang baik dan benar, serta menyusun kalimat yang urut dan
bisa dipahami secara logis.
2. Mampu membuat cerita “Tell a story”. Menggabungkan kata dalam sebuah
kalimat, dan kalimat disusun menjadi sebuah paragraf yang sesuai dengan
ide/gagasan urutan penyelesaian permasalahan.
Python didistribusikan dengan beberapa lisensi yang berbeda dari beberapa versi.
Lisensi Python tidak bertentangan baik menurut definisi Open Source maupun General
Public License (GPL). Interpreter Python dapat diperoleh diwebsite resminya di
http://www.python.org.
Sejarahnya, Python dikembangkan oleh Guido van Rossum pada tahun 1990 di CWI,
Amsterdam sebagai kelanjutan dari bahasa pemrograman ABC. Versi terakhir yang
dikeluarkan CWI adalah 1.2. Tahun 1995, Guido pindah ke CNRI sambil terus melanjutkan
pengembangan Python. Versi terakhir yang dikeluarkan adalah 1.6. Tahun 2000, Guido dan
para pengembang inti Python pindah ke BeOpen.com yang merupakan sebuah perusahaan
komersial dan membentuk BeOpen PythonLabs. Python 2.0 dikeluarkan oleh BeOpen.
Setelah mengeluarkan Python 2.0, Guido dan beberapa anggota tim PythonLabs pindah ke
DigitalCreations.
Saat ini pengembangan Python terus dilakukan oleh sekumpulan pemrogram yang
dikoordinir Guido dan Python Software Foundation. Python Software Foundation adalah
sebuah organisasi non-profit yang dibentuk sebagai pemegang hak cipta intelektual Python
sejak versi 2.1 dan dengan demikian mencegah Python dimiliki oleh perusahaan komersial.
Saat ini distribusi Python sudah mencapai versi 2.6.1 dan versi 3.0.
Nama Python dipilih oleh Guido sebagai nama bahasa ciptaannya karena kecintaan
guido pada acara televisi Monty Python’s Flying Circus. Oleh karena itu seringkali
ungkapan-ungkapan khas dari acara tersebut seringkali muncul dalam korespondensi antar
pengguna Python. Logo Python dapat dilihat pada Gambar 1.2.
Hal yang membedakan Python dengan bahasa lain adalah dalam aturan penulisan kode
program. Bagi programmer di luar Python, anda akan berurusan dengan aturan indentasi,
tipe data, tuple, dan dictionary. Python memiliki kelebihan tersendiri dibandingkan
dengan bahasa lain terutama dalam hal penanganan modul, ini yang membuat beberapa
programmer menyukai bahasa Python. Selain itu Python merupakan salah satu produk
yang Opensource, Free, dan multiplatform.
Python adalah bahasa tingkat tinggi yang dimaksudkan agar relatif lebih mudah bagi
manusia untuk membaca dan menulis, dan bagi komputer untuk membaca dan memproses.
Bahasa tingkat tinggi lainnya termasuk Java, C ++, PHP, Ruby, Basic, Perl, JavaScript, dan
banyak lagi. Perangkat keras aktual di dalam Central Processing Unit (CPU) tidak
memahami bahasa tingkat tinggi ini. CPU memahami bahasa yang kami sebut bahasa
mesin. Bahasa mesin sangat sederhana dan terus terang sangat melelahkan untuk menulis
karena diwakili semua dalam nol dan 1 yang (biner) sebagai berikut:
Penerjemah bahasa pemrograman ini terbagi dalam dua kategori umum: (1)
Interpreter dan (2) Kompiler.
Interpreter membaca kode sumber program seperti yang ditulis oleh programmer,
memparsing kode sumber, dan menafsirkan instruksi dengan cepat. Python adalah juru
bahasa dan ketika kita menjalankan Python secara interaktif, kita dapat mengetikkan baris
Python (sebuah kalimat) dan Python memprosesnya segera dan siap untuk kita
mengetikkan baris lain dari Python.
Beberapa baris Python memberi tahu Python bahwa Anda ingin mengingat beberapa
nilai untuk digunakan nanti. Kita perlu memilih nama variabel untuk mengingat nilai itu
dan kita bisa menggunakan nama simbolis itu untuk mengambil nilainya nanti. Kami
menggunakan istilah variabel untuk merujuk pada label yang kami gunakan untuk merujuk
ke data yang disimpan ini.
Jika Anda memiliki sistem Windows, seringkali program bahasa mesin yang dapat
dieksekusi ini memiliki akhiran ".exe" atau ".dll" yang merupakan singkatan dari
"executable" dan "dynamic link library". Ekstensi tersebut adalah hasil dari kompilasi oleh
Compiler yang mana akan dieksekusi sebagai sebuah file tunggal atau biner. Di Linux dan
Macintosh, tidak ada suffix yang secara unik menandai file sebagai executable. Jika Anda
membuka file yang dapat dieksekusi dalam editor teks, itu akan terlihat benar-benar gila
dan tidak dapat dibaca sebagai berikut:
Tidak mudah membaca atau menulis bahasa mesin, jadi akan lebih mudah apabila
kita menggunakan bahasa Interpreter dan kompiler yang memungkinkan kita untuk
menulis dalam bahasa tingkat tinggi seperti Python atau C.
Perangkat lunak Python dapat diperoleh secara gratis dari berbagai sumber. Sumber
utamanya adalah di situs python.org. Untuk sistem operasi berbasis Linux dan Mac OS,
Python sudah terpasang sebagai bawaan dari sistem operasinya. Jika Anda ingin
menggunakan versi terbaru maka Anda harus memasangnya sendiri dengan mengunduh
instalasinya di python.org.
Proses instalasi Python pada Windows dapat dilakukan melalui langkah-langkah
sebagai berikut:
3. Unduh Installer Python 3 (versi terbaru). Buka jendela browser dan arahkan
ke halaman Unduh untuk Windows di python.org. Di bawah tajuk di bagian atas yang
bertuliskan Python Rilis untuk Windows, klik tautan untuk Rilis Python 3 Terbaru -
Python 3.x.x. (Pada tulisan ini, yang terbaru adalah Python 3.7.7.) Pilih ke bawah
dan pilih penginstal yang dapat dieksekusi Windows x86-64 untuk 64-bit atau
penginstal yang dapat dieksekusi Windows x86 untuk 32-bit. (Lihat di bawah.)
Untuk instalasi di Linux dan Mac, atau sistem operasi yang lain dapat dilihat di
referensi online https://realpython.com/installing-python. Apabila Instalasi berhasil,
tampilan di Windows dapat dilihat pada Gambar 1.4.
Memulai pemrograman Python baik versi desktop maupun versi online adalah dengan
mencoba menuliskan perintah di Terminal/Console yang muncul saat anda mengeksekusi
Python pertama kali. Saat program dibuka yang muncul adalah sebagai berikut:
Perintah >>> adalah cara penerjemah Python untuk bertanya kepada Anda, "Apa
yang ingin Anda lakukan selanjutnya?" Python siap untuk berkomunikasi dengan Anda.
Yang perlu Anda ketahui adalah bagaimana berbicara bahasa Python. Anda dapat
menuliskan kode setelahnya.
Python akan menampilkan apapun yang ada di antara tanda petik tersebut. Apabila
bisa muncul seperti yang tertulis diatas, maka anda berhasil membuat program Python yang
pertama.
Gambar 1.6 Tampilan kode program dan eksekusi di editor dan console
Hal yang sangat berbeda dari bahasa Python dengan bahasa pemrograman lainnya
adalah masalah block dari kode. Bahasa pemrograman C misalnya menggunakan tanda
kurung kurawal “{” untuk menyatakan blok. Semen- tara itu Python menggunakan
indentation untuk menyatakan satu blok. Contoh penggunaan blok adalah sebagai berikut:
Disarankan untuk menggunakan tab atau spasi sebanyak empat (4) buah untuk
indentation tersebut. Untuk editor online apabila menemukan kasus seperti itu sudah secara
otomatis akan indent (menjorok). Hasil tampilan apabila dieksekusi di IDE online dapat
dilihat pada Gambar 1.7.
Gambar 1.7 Tampilan indent dan hasil perhitungan di IDE Online
2. 9. Kemungkinan kesalahan
2. 10. Latihan
14. Sebutkan tiga macam tipe kesalahan dalam pemrograman dan jelaskan
bagaimana cara memperbaikinya!
BAB 2 Komponen Pemrograman
2. 1. Value dan Types
Nilai (Value) adalah salah satu hal dasar yang bekerja dengan program, seperti huruf
atau angka. Nilai-nilai yang telah kita lihat sejauh ini adalah 1, 2, dan “Hello TPB!”.
Nilai-nilai ini milik berbagai jenis: angka 2 adalah bilangan bulat, dan "Hello TPB!" adalah
string, disebut demikian karena mengandung "string" huruf. Anda dapat mengidentifikasi
string/angka dengan cara melihat tipenya.
Cobalah beberapa script berikut di console pyton anda:
Kita bisa mengecek tipe dari kedua input diatas sebagai berikut:
Kita dapat juga menggunakan format desimal untuk angka dengan ketelitian
dibelakang koma sebagai berikut:
Namun, hati-hati terhadap penggunaan tanda petik (“”) untuk angka, terlihat seperti
angka namun sebenarnya string. Contohnya sebagai berikut:
Keduanya dalah string walaupun apabila di cetak hasilnya angka yang sama dengan
integer di kode pertama.
2. 2. Variables
Salah satu fitur paling kuat dari bahasa pemrograman adalah kemampuan untuk
memanipulasi variabel. Variabel adalah nama yang merujuk ke nilai.
Cobalah membuat pernyataan penugasan dengan variabel baru dan memberi mereka
nilai sebagai berikut:
Selanjutnya adalah coba dipanggil variabel yang sudah anda buat tersebut
Tahap berikutnya kita bisa mengecek tipe dari masing- masing nilai yang disimpan
sebagai berikut:
Programmer umumnya memilih nama untuk variabel mereka yang bermakna dan
mendokumentasikan apa variabel digunakan. Nama variabel bisa panjang sembarang.
Mereka dapat berisi huruf dan angka, tetapi mereka tidak dapat memulai dengan angka.
Adalah legal untuk menggunakan huruf besar, tetapi ide yang baik untuk memulai nama
variabel dengan huruf kecil.
Karakter garis bawah (_) dapat muncul dalam sebuah nama. Ini sering digunakan
dalam nama dengan banyak kata, seperti my_name atau suhu_lingkungan. Nama variabel
dapat dimulai dengan karakter garis bawah, tetapi kita biasanya menghindari melakukan ini
kecuali kita menulis kode perpustakaan untuk digunakan orang lain. Jika Anda memberi
variabel nama ilegal, Anda akan diberi peringatan bahwa ada kesalahan sintaksis:
76trombones ilegal karena diawali dengan angka. lebih @ adalah ilegal karena
mengandung karakter ilegal, @. Tapi apa yang salah dengan class?
Ternyata class itu adalah salah satu kata kunci yang sudah di gunakan di Python.
Interpreter menggunakan kata kunci untuk mengenali struktur program, dan mereka tidak
dapat digunakan sebagai nama variabel. Beberapa kata kunci yang ilegal digunakan karena
sudah dipakai oleh Python antara lain sebagai berikut:
2. 3. Statements
Stetements atau Pernyataan adalah unit kode yang dapat dijalankan oleh bahasa
Python. Kami telah melihat dua jenis pernyataan: cetak menjadi pernyataan dan tugas
ekspresi. Saat Anda mengetik statements dalam mode interaktif, penerjemah mengeksekusi
dan menampilkan hasilnya, jika ada.
Sebuah skrip biasanya berisi urutan pernyataan. Jika ada lebih dari satu pernyataan,
hasilnya muncul satu per satu saat pernyataan dieksekusi.
2. 6. Order of Operations
Ketika lebih dari satu operator muncul dalam ekspresi, urutan evaluasi tergantung
pada aturan prioritas. Untuk operator matematika, Python mengikuti konvensi matematika.
Akronim PEMDAS adalah cara yang berguna untuk mengingat aturan:
▪ Parenthesis - Tanda Kurung memiliki prioritas tertinggi dan dapat digunakan
untuk memaksa ekspresi untuk mengevaluasi dalam urutan yang Anda inginkan.
Karena ekspresi dalam tanda kurung dievaluasi terlebih dahulu, 2 * (3-1) adalah
4, dan (1 + 1) ** (5-2) adalah 8. Anda juga dapat menggunakan tanda kurung
untuk membuat ekspresi lebih mudah dibaca, seperti pada ( menit * 100) / 60,
bahkan jika itu tidak mengubah hasilnya.
▪ Eksponensial memiliki prioritas tertinggi berikutnya, jadi 2 ** 1 + 1 adalah 3,
bukan 4, dan 3 * 1 ** 3 adalah 3, bukan 27.
▪ Multiplication – perkalian dan Divisi memiliki prioritas yang sama, yang lebih
tinggi dari Addition - Penambahan dan Substraction - Pengurangan, yang juga
memiliki prioritas yang sama. Jadi 2 * 3- 1 adalah 5, bukan 4, dan 6 + 4/2 adalah
8, bukan 5.
▪ Operator dengan prioritas yang sama dievaluasi dari kiri ke kanan. Jadi ungkapan
5-3-1 adalah 1, bukan 3, karena 5-3 terjadi pertama dan kemudian 1 dikurangi
dari 2.
Apabila ragu, selalu letakkan tanda kurung di ekspresi Anda untuk memastikan
perhitungan dilakukan sesuai urutan yang Anda inginkan.
2. 7. Modulus Operator
Operator modulus bekerja pada bilangan bulat dan menghasilkan sisanya ketika
operan pertama dibagi dengan yang kedua. Dalam Python, operator modulus adalah tanda
persen (%). Sintaksnya sama dengan untuk operator lain.
Cobalah untuk mengetikkan kode berikut di console Python, perhatikan hasilnya.
2. 8. String Operations
Operator + bekerja dengan string, namun tanda ini bukan tambahan dalam arti
matematika. Sebaliknya ia melakukan penggabungan, yang berarti bergabung dengan
string dengan menghubungkan mereka ujung ke ujung.
Sebagai contoh, ketikkan pada console anda sebagai berikut.
Operator * juga bekerja dengan string dengan mengalikan konten string dengan
integer. Sebagai contoh:
Supaya program dapat lebih interaktif, terkadang perlu menuliskan perintah atau
pertanyaan sebelum user memasukkan nilai atau variabel. Kita dapat memasukan
string/karakter didalam fungsi input() misalkan sebagai berikut:
Pada penulisan pertanyaan pengantar terdapat karakter \n di akhir pertanyaan, ini
digunakan untuk ganti baris/line break. Oleh karena itu, saat user memasukkan nilai yang
diinginkan akan pindah baris dan mudah utk dipahami.
Apabila kita menginginkan input yang dimasukkan oleh user adalah berupa angka
bulat/integer, kita dapat gunakan perintah konversi dengan fungsi int().
2. 10. Komentar
Saat membuat kode program yang semakin besar akan mengarah pada urutan yang
komplek dan semakin sulit utk dipahami. Oleh karena itu diperlukan sebuah
komentar/catatan pada kode program yang ditulis. Komentar ini tidak dieksekusi oleh
program namun memudahkan programmer/pengembang untuk memahami alur algoritma
dan bagaimana memodifikasinya untuk pengembangan atau pemeliharaan.
Komentar/comments ditulis diawali dengan tanda # dan biasanya mendahului blok kode
program yang dijelaskan. Komentar bisa juga diletakkan setelah kode agar menghemat
baris. Contoh komentar sebagai berikut:
Contoh penggunaan Komentar pada penulisan kode program sebagai berikut: ketiklah
kode berikut pada Script/bukan di console, jalankan dan bagaimana hasilnya.
2. 11. Latihan
1. Buatlah kode program untuk menghitung jarak tempuh yang menggunakan input
user berupa nilai kecepatan rata-rata dan waktu tempuh!. Gunakan nama variable
dan disertai dengan komentar untuk memudahkan dokumentasi.
2. Buatlah kode program yang dapat mengkonversi suhu masukan dari user dari
Celsius ke Farenheit dan mencetak hasil luarannya!
3. Buatlah kode program yang menggunakan input/masukan dari user untuk
menghitung volume tabung dan menampilkan hasilnya!. Silakan memilih nama
variabel dan tambahkan komentar (comments) seperti contoh pembuatan script
yang sudah pernah dicontohkan diatas.
BAB 3 Eksekusi Kondisional
3.1. Ekspresi Boolean
Ekspersi boolean adalah ekspresi yang menghasilkan nilainya hanya benar (TRUE)
atau salah (FALSE). Contoh berikut ini menggunakan operator ==, yang merupakan
pembandingan dua kondisi yang akan menghasilkan nilai benar apabila keduanya sama
atau salah apabila kebalikannya.
True dan False adalah nilai spesial yang masuk dalam kelas bool; dan bukan
merupakan String.
bernilai benar (True) apabila ada salah satu sisi yang bernilai True, jadi apabila ada angka
dapat habis dibagi 2 atau 3.
Untuk penggunaan lebih lanjut, diingat kembali Tabel Kebenaran, untuk
masing-masing and, or, dan not.
Ekspresi boolean setelah pernyataan if disebut dengan kondisi yang mana ada syarat
yang harus dipenuhi. Setelah syarat, diakhiri dengan tanda titik dua (:) dan pindah baris
serta indent untuk perintah eksekusi yang akan dijalankan apabila syarat terpenuhi.
Diagram alirnya dapat dilihat pada Gambar 3.1. Apabila kondisi logika adalah True, maka
pernyataan yang di indent akan dieksekusi, apabila tidak maka pernyataan yang di indent
akan dilewati saja.
elif adalah kependekan dari else if, yang umum dipakai di bahasa pemrograman
lainnya. Sama dengan kondisi sebelumnya, pasti hanya ada satu pilihan yang dieksekusi.
Tidak ada batasan untuk banyaknya elif apabila ada statement else, harus diletakkan yang
paling belakang.
Diagram alir untuk logika if then elseif dapat dilihat pada Gambar 3.3. Pada setiap
kondisi, akan dicek satu persatu apabila yang pertama False, akan dilanjutkan pada opsi
selanjutnya sampai dengan opsi terakhir. Apabila ada lebih dari satu syarat kondisi yang
True, maka yang dieksekusi adalah yang pertama kali ditemui.
Gambar 3.3 Diagram alir logika if then elseif
Diagram alir untuk kondisi bersarang dapat dillihat pada Gambar 3.4. dengan pilihan
yang pertama kali muncul paling atas adalah apakah x dan y nilainya sama, dan opsi sarang
yang muncul adalah apabila nilainya lebih besar/kecil di langkah pengecekan selanjutnya.
Penggunaan kondisi bersarang memang lebih memudahkan dalam menysun logika
secara terstruktur, namun perlu waktu untuk memahami dan mengembangkan lebih lanjut
apabila ada penambahan kondisi dalam proses pengembangan programnya.
3.8. Latihan
1. Apakah kegunaan penggunaan ekspresi boolean?, buatlah satu contoh
program sederhana yang menerapkan ekspresi ini!
2. Sebutkan operator logika yang biasa digunakan dalam pemrograman!, apa
saja sifat-sifatnya
3. Apakah yang dimaksud dengan kondisi berantai? Buatlah satu contoh
program sederhana untuk kondisi berantai!
4. Apakah yang dimaksud dengan kondisi bersarang? Buatlah contoh
program sederhana untuk kondisi bersarang!
5. Apa yang dimaksud dengan debugging? Apa yang harus diperhatikan saat
melakukan debugging?
BAB 4 Bekerja dengan Fungsi
4.1. Memanggil Fungsi
Dalam konteks pemrograman, sebuah fungsi adalah urutan nama dari pernyataan
yang mendukung sebuah proses komputasi. Apabila kita mendefinisikan sebuah fungsi,
kita sudah memberikan nama dan urutan pernyataan. Sehingga pada langkah selanjutnya,
kita cukup memanggil fungsi tersebut dengan nama yang sudah pernah dipanggil
sebelumnya.
Contoh sebelumya kita pernah menggunakan dan memanggil sebuah fungsi bawaan
dari Python yaitu type() sebagai berikut
Nama fungsinya adalah type. Ekspresi yang ada di dalam kurung merupakan argumen
yang akan menjadi masukan untuk fungsi tersebut. Argumen adalah sebuah nilai atau
variabel yang akan dilewatkan kedalam sebuah fungsi sebagai input fungsi terbut.
Hasilnya, untuk fungsi type, adalah tipe dari argumen yang dituliskan.
Secara umum dapat kita katakan bahwa sebuah fungsi mengambil argumen dan
mengembalikan hasilnya sebagai nilai kembalian (return value).
Fungsi max berfungsi untuk mencari angka terbesar atau karakter yang dilewatkan di
inputannya, sedangkan fungsi min kebalikannya, yaitu mencari nilai/karakter terkecil.
Fungsi len adalah fungsi untuk menghitung jumah karakter apabila input berupa string,
namun apabila berupa numerik, akan dihitung jumlah item yang ada di argumen.
Dengan mengetahui beberapa contoh fungsi yang ada bawaan Pyhton, maka kita bisa
menghindari penggunaan nama yang sama, misalkan sudah digunakan oleh Pyhton secara
umum.
Fungsi int dapat mengkonversi nilai floating-point ke dalam integer (bilangan bulat),
namun apabila tidak bulat, fungsi ini akan dipotong menjadi bagian.Fungsi float
mengkonversi integer dan string ke nilai floating-point
Untuk instalasi di komputer/PC Mac hasilnya berbeda dapat dilihat pada hasil sebagai
berikut:
Objek dari modul ini terdiri dari fungsi dan variabel yang didefinisikan di modul.
Untuk mengakses sebuah fungsi, kita harus secara spesifik menyebutkan nama fungsinya,
dipisahkan dengan titik (dot). Format ini dinamakan dot notation atau notasi titik. Contoh
pemanggilan dan penggunaan objek matematik adalah sebagai berikut:==
Contoh diatas menunjukkan bagaimana mencari nilai sinus dari radians. Nama
variabel menggunakan nama yang sama dengan fungsi trigonometri (cos, tan, dll.). Untuk
mengkonversi dari derajat ke radians, dibagi 360 dan dikalikan dengan 2π:
Ekspresi math.pi mendapatkan nilai variabel phi dari modul math. Nilai dari memiliki
pendekatan nilai π dengan akurasi 15 digit. Contoh yang lain adalah sebagai berikut:
Contoh diatas adalah penggunaan trigonometri, hasil akar dari dua dibagi dengan dua.
def adalah kata kunci yang mengindikasikan bahwa ini adalah definisi dari fungsi.
Nama fungsi yang dipilih adalah print_lirik. Rule dari fungsi adalah sama dengan nama
fungsinya. Kurung kosong menunjukkan bahwa tidak perlu ada argumen yang digunakan
sebagai input. Script diatas bisa dituliskan di Script.py atau langsung di eksekusi di
console. Jika mendefinisikan sebuah fungsi di console, akan muncul tanda (…) setelah
tanda (:) yang menandakan bahwa pendefinisian belum selesai. Contohnya sebagai berikut
Jika kita sudah mendefinisikan sebuah fungsi diawal, kita dapat menggabungkan
dengan fungsi yang lain. Contoh menggabungkan fungsi dengan pengulangan.
Sehingga saat kita panggil fungsi ulang_lirik, hasilnya adalah sebagai berikut:
Latihan 4.1. Buat dalam file text tampil_lirik.py, dan ketiikan kode berikut, dan
jalankan.
Latihan 4.2. Pindahlah fungsi untuk memanggil lirik, ulang_lirik(), ke baris paling
atas, sehingga akan dipanggil sebelum didefinisikan. Jalankan program dan lihat apa
pesan error yang anda peroleh?
Latihan 4.3. Ubah kembali penempatan baris untuk memanggil fungsi ke baris akhri
seperti sedia kala, jalankan program anda, dan apa yang terjadi? Apakah ada pesan
error?
Latihan 4.3. Ketiklah script kode berikut pada file latihan_fungsi.py dan jalankan,
cobalah mengganti nilai pada argumen fungsi yang dipanggil
Latihan 4.4. Ketiklah script kode berikut pada file latihan_fungsi2.py dan jalankan,
cobalah mengganti nilai masukannya, bagaimana hasilnya?
4.10. Latihan
Kita dapat belajar Matlab melalui berbagai macam cara seperti dari buku maupun
internet. Banyak situs di internet yang menyediakan tutorial tentang matlab. Seperti
tutorial dasar, toolboxes, simulink, dan sebagainya. Kita dapat menggunakan situs
http://www.mathworks.com. Untuk memperoleh informasi dan pengetahuan terkini tentang
matlab.
Home
Untuk melihat variabel yang aktif saat ini, kita dapat menggunakan perintah who.
Jendela ini berisi informasi tentang perintah yang pernah dituliskan sebelumnya. Kita
dapat mengambil kembali perintah dengan menekan tombol panah ke atas atau mengklik
perintah pada jendela histori, kemudian melakukan copypaste ke command window.
Gambar 5.4 Tampilan pada command history
Jendela ini berisi informasi tentang lokasi folder dimana file pekerjaan dapat
tersimpan atau dipanggil ke workspace dan digunakan dalam command window. File
pekerjaan dapat disimpan dalam bentuk .mat (variabel), atau .m (m-file/function)
Menu Plots
Menu ini berisi informasi tentang jenis plot yang dapat digunakan untuk membuat
grafik untuk (hanya untuk) data variable yang terdapat pada jendela workspace.
Gambar 5.6 Tampilan Menu Plots
Menu Apps
Menu ini berisi informasi tentang jenis aplikasi atau toolbox yang dapat digunakan
untuk berbagai fungsi seperti image processing, optimization, curva fitting, signal analysis
dll.
Variabel
Seperti bahasa pemrograman lainnya, MATLAB pun memiliki variabel, tetapi dalam
penulisannya, variabel di dalam MATLAB tidak perlu dideklarasikan, karena matlab
mampu mengenali tipe data dari variable dari isi variabel tersebut. Aturan penulisan
variabel pada MATLAB sama dengan aturan pada bahasa pemrograman lainnya, yaitu
bersifat case sensitive, diawali dengan huruf dan selanjutanya boleh menggunakan
gabungan huruf angka atau tanda garis bawah. MATLAB mampu mengenali sampai 31
karakter pertama, selanjutnya diabaikan.
Semua tipe data di MATLAB memiliki bentuk yang sama, yaitu array. Array
minimal berukuran 0x0 dan dapat bertambah menjadi array n x m dimensi dengan
sembarang ukuran. MATLAB mempunyai beberapa tipe data dasar (atau class), yaitu:
logical, char, numeric, cell, structure, java classes, function handles. Adapun variable
khusus pada matlab, yaitu :
i dan j i=j= √1
nargin Jumlah argumen input suatu fungsi
Operator
● Operator aritmatika
Operator Keterangan
+ Penjumlahan
- Pengurangan
: Langkah
● Operator relational
Operator Keterangan
== Sama dengan
● Operator logika
Operator Keterangan
Array
MATLAB menangani array secara intuitif. Untuk membuat array dalam MATLAB,
yang perlu dilakukan hanyalah mengetikkan kurung kotak kiri, memasukkan
elemen-elemen dengan dipisahkan oleh spasi atau koma, kemudian menutup array dengan
kurung kotak kanan. Berikut ini akan diberikan beberapa contoh assignment untuk array:
▪ Pengalamatan array
Contoh:
artinya bahwa nilai array yang diisikan dengan angka dari 4 sampai 9
dengan penambahan 1 (default). Penambahan dapat bernilai sebarang,
bahkan dapat juga negatif, seperti
contoh berikut :
d) Memisahkan elemen dengan titik koma membuat elemen berada dalam
baris yang berbeda, seperti contoh berikut:
Matrix
▪ Matriks Khusus
Matriks Nol
>> zeros(n,m)
Contoh :
>> zeros(4,5)
ans =
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
0 0 0 0 0
Matriks Satu
>>ones(n,m)
Contoh:
>> ones(2,3)
ans =
1 1 1
1 1 1
Matriks Identitas
Bentuk umum :
Matriks yang memiliki hasil jumlah yang sama pada elemenelemen baris,
kolom dan diagonalnya.
Bentuk umum:
>>magic(n)
Contoh:
>> magic(3)
ans =
8 1 6
3 5 7
4 9 2
Matriks Acak
Contoh :
>> rand(3,2)%untuk bilangan real
ans =
0.9501 0.4860
0.2311 0.8913
0.6068 0.7621
Matriks yang didefinisikan oleh user
1 2 3
7 8 9
Plot
Fungsi plot digunakan untuk menggambar grafik 2D dengan skala linear pada
kedua sumbunya.
Contoh:
keterangan :
● ‘text’: nama judul dan label,
● ’fontsize’: perintah pengaturan huruf,
● ’size’: ukuran huruf
● ’fontname’: jenis huruf
● ’name’: nama huruf
Berikut ini adalah tabel simbol-simbol untuk tipe garis dan warna kurva:
Plot3
Bar
Fungsi bar digunakan untuk menampilkan data yang berbentuk vector maupun matriks.
Grafik bar digunakan untuk menampilkan sekumpulan data selama kurun waktu terentu
dan cocok untuk menampilkan data dalam bentuk diskrit.
Bar3
Pie
Fungsi pie digunakan untuk menampilkan data secara prosentase, dimana setiap elemen
data akan dibandingkan
dengan penjumlahan seluruh data yang ada. Grafik pie dapat disajikan dalam bentuk 2
dimensi maupun 3 dimensi.
Stem
Fungsi stem cocok digunakan untuk menampilkan data dalam bentuk diskrit.
Grafik 2D
● Grafik Polar, mencetak fungsi perkalina sin dan cos dalam bentuk polar.
Grafik 3D
● Grafik Mesh, mencetak bentuk grafik mesh dari fungsi "peaks" yang telah
disiapkan didalam MATLAB.
● Grafik Surface, mencetak grafik permukaan dari fungsi "peaks" dengan pola
warna "jet" yang telah didefinisikan didalam MATLAB.
● Grafik Contour, mencetak kontur dari fungsi "peaks".
6. 1. M-File
Program M-file
M-File merupakan sederetan perintah matlab yang dituliskan secara berurutan sebagai
sebuah file. Nama file yang tersimpan akan memiliki ekstensi .m yang menandakan bahwa
file yang dibuat adalah file matlab. M- file dapat ditulis sebagai sebuah script atau dapat
pula ditulis sebagai sebuah fungsi yang menerima argument atau masukan yang
menghasilkan output.
Function M-File
Contoh :
Jika kita akan menggunakan fungsi tersebut, maka pada command window kita
tuliskan :
Beberapa fungsi yang dapat dipakai dalam Matlab untuk menyelesaikan beberapa
masalah dapat diringkas dalam penjelasan berikut:
Latihan 2.
Carilah Fungsi dari sintak berikut:
2 Demo
3 help input
4 help disp
5 Pwd
6 d=pi
7 eps
8 Realmin
9 Realmax
10 n/0
11 round(d)
12 floor(d)
13 0/0
14 format rat
15 exp(5)
e=input(‘nilai
16
e=’)
17 disp(‘nilai yang anda masukkan : ’);e
18 format bank
19 100/8
f=’belajar
20
pemrograman’
21 double(f)
22 char(f)
6. 2. Statement Control
Pernyataan Iteratif
contoh:
● Iterasi WHILE…END
Iterasi WHILE memiliki bentuk umum pernyataan yang dapat ditulis dalam iterasi
tunggal dan ganda. Kelebihan penggunaan pernyataan ini adalah adanya suatu prasyarat
khusus terhadap jalannya program. Dengan demikian program akan mengalami “self
process” dengan merujuk kedalam prasyarat yang telah ditetapkan. Kapan proses berulang
itu berhenti dan kapan pula telah mencapai hasil yang optimal, prasyarat akan menjadi
signifikan keberadaannya.
contoh :
Bentuk umum pernyataan ini dapat ditulis dalam iterasi tunggal atau iterasi ganda.
Artinya untuk iterasi tunggal pernyataan yang diulang hanya terdiri dari satu kelompok
sedangkan iterasi ganda pernyataan yang diulang terdiri dari beberapa kelompok.
contoh:
Statemen CONTINUE dan BREAK digunakan pada statemen kontrol FOR atau
WHILE. Fungsi CONTINUE adalah melanjutkan ke iterasi berikutnya tanpa menjalankan
statemen yang ada di bawah kondisi CONTINUE. Sedangkan BREAK, digunakan untuk
menghentikan proses iterasi tanpa melanjutkan perulangan.
Contoh:
No. Program Keterangan
Clc
for i=1:10
1 x=sin(i*pi/180) end
x
Clc
for i=1:10 x(i)=sin(i*pi/180)
2 end
x
Clc
3 for i=1:10
x=sin(i*pi/180)
Clc
for i=1:10 for
j=1:5
4 z(I,j)=i^2+j^2 end
end
z
Clc A=input(‘A=’);
B=rem(A,2);
switch B
case 1
5 disp(‘ganjil’) case 2
disp(‘genap’) end
Clc A=input(‘A=’);
B=rem(A,2);
if B==1 disp(‘ganjil’)
6 else disp(‘genap’)
end
7 hitungan=0;
x=1:
while (1+x)>1
x=x/2
hitungan=hitungan+1 end