0% menganggap dokumen ini bermanfaat (0 suara)
176 tayangan66 halaman

Modul Praktikum Pak 2022

Modul ini membahas dasar pemrograman komputer dengan bahasa Python dan MATLAB untuk aplikasi di bidang teknik pertanian. Modul ini diharapkan dapat membantu mahasiswa dalam mempersiapkan dan melaksanakan praktikum pemrograman dengan lebih baik."

Diunggah oleh

uswatun karima
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
0% menganggap dokumen ini bermanfaat (0 suara)
176 tayangan66 halaman

Modul Praktikum Pak 2022

Modul ini membahas dasar pemrograman komputer dengan bahasa Python dan MATLAB untuk aplikasi di bidang teknik pertanian. Modul ini diharapkan dapat membantu mahasiswa dalam mempersiapkan dan melaksanakan praktikum pemrograman dengan lebih baik."

Diunggah oleh

uswatun karima
Hak Cipta
© © All Rights Reserved
Kami menangani hak cipta konten dengan serius. Jika Anda merasa konten ini milik Anda, ajukan klaim di sini.
Format Tersedia
Unduh sebagai PDF, TXT atau baca online di Scribd
Anda di halaman 1/ 66

MODUL PRAKTIKUM ONLINE

PEMROGRAMAN DAN APLIKASI KOMPUTER

DASAR PEMROGRAMAN KOMPUTER DENGAN BAHASA PYTHON DAN


MATLAB UNTUK APLIKASI BIDANG TEKNIK PERTANIAN

Disiapkan oleh:
Prof. Dr. Ir. Lilik Sutiarso, M.Eng
Andri Prima Nugroho, Ph.D.
Makbul Hajad, Ph.D

DEPARTEMEN TEKNIK PERTANIAN DAN BIOSISTEM


FAKULTAS TEKNOLOGI PERTANIAN
UNIVERSITAS GADJAH MADA

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.

Yogyakarta, 15 Agustus 2022

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?

Apakah kemampuan programming atau membuat kode progam diperlukan oleh


Mahasiswa Teknik Pertanian? Haruskah bisa coding?, Pada kondisi saat ini jawabanya
adalah PERLU dan sangat PENTING. Menulis atau menyusun kode program untuk
penyelesaian masalah dalam bidang Teknik Pertanian saat ini banyak dilakukan mengingat
semakin banyaknya tools-tools yang tersedia secara Open Source dan bahkan ada yang
Free. Penulisan kode program merupakan tahapan lanjut dari proses penyelesaian masalah
dengan Program dan Aplikasi Komputer.
Gambar 1.1 menunjukkan tahapan penyelesaian permasalahan dengan programming.
Tahap pemecahan masalah mengurai permasalahan menggunakan metode analisis sehingga
menghasilkan algoritma yang merupakan langkah-langkah penyelesaian masalah. Tahapan
selanjutnya adalah tahap implementasi, menterjemahkan algoritma kedalam bahasa
pemrograman untuk bisa diselesaikan dengan komputer sebagai mesin penghitungnya.
Solusi yang diperoleh akan dikembalikan lagi kepada masalah untuk diverifikasi apakah
sesuai dengan harapan. Apabila tidak sesuai, alur tahap pemecahan masalah diperbaiki
kembali sampai dengan mendapatkan solusi yang diharapkan.

Gambar 1.1 Tahapan penyelesaian permasalahan dengan 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.

2. 2. Kreativitas dan motivasi

Materi perkuliahan pemrograman dan aplikasi computer tidak sebatas


menuliskan kode program dan menjalankan, namun siswa diajak untuk berfikir kreatif
dengan melihat permasalahan-permasalahan yang ditemui di kehidupan sehari-hari terkait
dengan bidang Teknik Pertanian yang sekiranya dapat diangkat menjadi sebuah topik tugas
akhir. Penyelesaian permasalahan disusun menjadi sebuah algoritma yang selanjutnya akan
dituliskan dengan bahasa pemrograman yang sesuai dengan penggunaannya di lapangan.
Selain mengajak siswa untuk berfikir kritis dan kreatif, harapan selanjutnya adalah
siswa mampu menghasilkan sebuah teknologi berbasis RI 4.0 yang dapat memberikan
manfaat untuk memajukan bidang Pertanian di Indonesia. Penguasaan skill programming
dapat di tingkatkan lebih lanjut secara mandiri diluar perkuliahan dan praktikum sesuai
dengan minat dan kompetensi yang ingin dipertajam, misalnya untuk bahasa pemrograman
lain atau kerangka kerja yang lainnya.

2. 3. Memahami konsep pemrograman

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.

Setiap bahasa pemrograman memiliki vocabulary dan cara menyusun grammar


tersendiri, namun untuk urutan langkah penyelesaian permasalahan (algoritma) bisa jadi
sama dan yang lebih penting adalah kemampuan kita dalam menguraikan penyelesaian
masalah seperti yang diceritakan di 1.1.

2. 4. Bahasa Program Python

Python merupakan bahasa pemrograman dinamis yang mendukung pemrograman


berbasis objek. Python dapat digunakan untuk berbagai keperluan pengembangan
perangkat lunak dan dapat berjalan di berbagai platform sistem operasi. Saat ini skrip
python dapat dijalankan pada sistem berbasis : Windows, Linux / Unix, Mac OS X, OS/2,
Amiga.

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.

Gambar 1.2 Logo bahasa program Python

2. 5. Mengapa memilih Python?

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.

Beberapa fitur yang dimiliki Python adalah :


1. memiliki kepustakaan yang luas; dalam distribusi Python telah disediakan
modul- modul siap pakai untuk berbagai keperluan.
2. memiliki tata bahasa yang jernih dan mudah dipelajari.
3. memiliki aturan layout kode sumber yang memudahkan pengecekan, pembacaan
kembali dan penulisan ulang kode sumber. berorientasi obyek.
4. memiliki sistem pengelolaan memori otomatis (garbage collection, seperti java)
modular, mudah dikembangkan dengan menciptakan modul-modul baru; modul-modul
tersebut dapat dibangun dengan bahasa Python maupun C/C++.
5. memiliki fasilitas pengumpulan sampah otomatis, seperti halnya pada bahasa
pemrograman Java, python memiliki fasilitas pengaturan penggunaan ingatan
komputer sehingga para pemrogram tidak perlu melakukan pengaturan ingatan
komputer secara langsung.

Beberapa kelebihan bahasa Python antara lain :


1. Tidak ada tahapan kompilasi dan penyambungan (link) sehingga kecepatan perubahan
pada masa pembuatan system aplikasi meningkat.
2. Tidak ada deklarasi tipe sehingga program menjadi lebih sederhana, singkat, dan
fleksible.
3. Manajemen memori otomatis yaitu kumpulan sampah memori sehingga dapat
menghindari pencatatan kode
4. Tipe data dan operasi tingkat tinggi yaitu kecepatan pembuatan system aplikasi
menggunakan tipe objek yang telah ada
5. Mendukung pemrograman berorientasi objek
6. Pelekatan dan perluasan dalam C
7. Terdapat kelas, modul, eksepsi sehingga terdapat dukungan pemrograman skala besar
secara modular
8. Pemuatan dinamis modul C sehingga ekstensi menjadi sederhana dan berkas biner yang
kecil
9. Pemuatan kembali secara dinamis modul phyton seperti memodifikasi aplikasi tanpa
menghentikannya
10. Model objek universal kelas Satu
11. Konstruksi pada saat aplikasi berjalan
12. Interaktif, dinamis dan alamiah
13. Akses hingga informasi interpreter
14. Portabilitas secara luas seperti pemrograman antar platform tanpa ports
15. Kompilasi untuk portable kode byte sehingga kecepatan eksekusi bertambah dan
melindungi kode sumber
16. Antarmuka terpasang untuk pelayanan keluar seperti perangkat Bantu system, GUI,
persistence, database, dll

Beberapa kekurangan bahasa Python antara lain :


1. Beberapa penugasan diluar dari jangkauan Python, seperti bahasa pemrograman
dinamis lainnya, Python tidak secepat atau efisien sebagai statis, tidak seperti bahasa
pemrograman kompilasi seperti bahasa C.
2. Disebabkan python merupakan interpreter, python bukan merupakan perangkat bantu
terbaik untuk pengantar komponen performa kritis.
3. Python tidak dapat digunakan sebagai dasar bahasa pemrograman implementasi untuk
beberapa komponen, tetapi dapat bekerja dengan baik sebagai bagian depan skrip
antarmuka.
4. Python memberikan efisiensi dan fleksibilitas tradeoff by dengan tidak memberikannya
secara menyeluruh.
5. Python menyediakan bahasa pemrograman optimasi untuk kegunaan, bersama dengan
perangkat bantu yang dibutuhkan untuk diintegrasikan dengan bahasa pemrograman
lainnya.

2. 6. Terminologi: Interpreter dan Compiler

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.

2. 7. Instalasi program Python

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

4. Jalankan Installer. Setelah memilih dan mengunduh penginstal, jalankan


dengan mengklik dua kali pada file yang diunduh. Dialog akan muncul yang terlihat
seperti pada Gambar 1.3. Penting: Pastikan mencheck pada Add Python to PATH.
Gambar 1.3 Jendela instalasi Python

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.

Gambar 1.4 Tampilan awal jendela Python yang di install di desktop


Opsi lain apabila kesulitan dalam instalasi Python, dapat juga menggunakan versi
online, tentunya dengan fitur yang tidak selengkap versi desktop. Versi online dapat
diakses di https://repl.it/languages/python3. Tampilan versi online dapat dilihat pada
Gambar 1.5.
Gambar 1.5 Tampilan editor dan console Python secara online

2. 8. Memulai Pemrograman Python

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:

Sedangkan tampilan di versi online 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.

Menuliskan kode pertama


Sekarang kita dapat memulai pemrograman Python dengan menuliskan program
“hello world” (yang merupakan standar bagi belajar pemrograman). Ketikkan “print ...”
(dan seterusnya seperti di bawah ini).

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.

Menuliskan kode di Script


Mari kita lanjutkan dengan membuat program yang lebih panjang. Program Python
dapat disimpan di dalam sebuah berkas untuk kemudian dieksekusi belakangan. Buka
editor yang biasa dipakai, atau untuk versi online akan muncul pada jendela bagian kiri.
Ketikkan program hello world di atas di dalam editor Anda tersebut. Setelah itu simpan
berkas tersebut dengan nama “hello.py”. Biasanya berkas program Python ditandai dengan
akhiran (extension) “.py”. Tampilan versi online dapat dilihat pada

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

Programmer pemula seringkali beranggapan bahwa Python tidak memberikan ruang


untuk kesalahan, sehingga lebih disukai karena sederhana dalam proses penulisan kode dan
penggunaan vocabulary yang umum dipakai. Sementara Python sendiri untuk bisa
menjalankan sesuai dengan kebutuhan, perlu adanya latihan dan pembelajaran. Beberapa
kesalahan yang sering ditemui antaralain sebagai berikut:

Contoh kesalahan yang lain

Secara umum ada tiga macam tipe error atau kesalahan:


5. Kesalahan sintaksis (syntax error) Ini adalah kesalahan pertama yang akan
Anda buat dan yang paling mudah untuk diperbaiki. Kesalahan sintaksis berarti Anda
melanggar "tata bahasa" Python. Apabila menggunakan Integrated Development
Environemnt (IDE) seperti yang digunakan di versi Online, kesalahan pada Script akan
diberitahu di baris mana yang keliru.
6. Kesalahan logika (Logic Error). Kesalahan logika adalah ketika program Anda
memiliki sintaksis yang baik tetapi ada kesalahan dalam urutan pernyataan atau
mungkin kesalahan dalam bagaimana pernyataan terkait satu sama lain. Contoh
yang baik dari kesalahan logika dalam urutan penyelesaian permasalahannya.
7. Kesalahan semantik (Semantic Error). Kesalahan semantik adalah ketika
deskripsi Anda tentang langkah-langkah yang diambil secara sintaksis sempurna
dan dalam urutan yang benar, tetapi hanya ada kesalahan dalam program.
Program ini benar sekali tetapi tidak melakukan apa yang Anda inginkan.

2. 10. Latihan

Jawablah pertanyaan-pertanyaan berikut untuk memastikan anda memahami materi


pada BAB I ini:

8. Apakah pentingnya memiliki kemampuan programming untuk mahasiswa


Teknik Pertanian dan Biosistem?
9. Apa itu Program, Programming, dan Programmer?
10. Apakah perbedaan dari Compiler dan Interpreter?
11. Mana yang lebih anda sukai, Python dengan Instalasi di desktop/PC dengan
versi Online? Jelaskan dengan alasan yang rasional.
12. Bagaimana impresi anda setelah mencoba pemrograman Python?
13. Apa yang menurut anda keliru dari kode berikut? Tipe apa kesalahannya?

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:

and del from None True


as elif nonlocal try
global not while
assert else if or with
break except pass yield
import raise async
class False in return await
continue finally is
def for
lambda

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.

Contoh sebuah Script

Menghasilkan luaran sebagai berikut:

2. 4. Operators dan Operands


Operator adalah simbol khusus yang mewakili komputasi seperti penjumlahan dan
multiklikulasi. Nilai yang diterapkan operator disebut operan. Operator +, -, *, /, dan **
melakukan penambahan, pengurangan, perkalian, pembagian, dan eksponensial, seperti
dalam contoh berikut:

Cobalah script berikut dan berapa hasilnya


2. 5. Expressions
Ekspresi adalah kombinasi dari nilai, variabel, dan operator. Nilai dengan sendirinya
dianggap sebagai ekspresi, dan juga merupakan variabel, jadi berikut ini semua ekspresi
yang sesuai (dengan asumsi bahwa variabel x telah diberi nilai):
Tulislah ekspresi berikut di console Python anda, dan bagaimana hasilnya?

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:

2. 9. Input oleh user


Pada kasus sebuah program yang dijalankan, terkadang kita memerlukan variabel
atau nilai yang diinputkan oleh pengguna (user) melalui pengetikan di keyboard. Python
menyediakan fungsi bawaan yang dapat dipanggil untuk menerima input oleh user. Apabila
fungsi ini dipanggil, program akan berhenti sejenak dan menunggu respon user
memasukkan nilai dengan mengetik menggunakan keyboard. Selanjutnya apabila sudah
selesai, user menekan Enter atau Return di Mac/Linux.
Ketiikkan beberapa perintah sebagai berikut di console Python anda

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.

Operator == merupakan operator pembanding, yang lainnya antaralain:

Pastikan penulisan operator sesuai dengan kaidah pemrograman di Python. Kesalahan


yang seling terjadi adalah hanya menggunakan sama dengan satu (=) yang seharusnya dua
(==), serta terbalik dalam penulisan yang seharusya (<=) bukan (=>).

3.2. Operator logika


Logika operator yang biasa digunakan antaralain: AND, OR, dan NOT. Makna dari
penggunaan operator tersebut sama halnya makna tata bahasa dalam bahasa inggris.
Sebagai contoh sebagai berikut:
bernilai benar (True) apabila x lebih besar dari pada 9 dan kurang dari 10.

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.

3.3. Eksekusi kondisi


Dalam pembuatan kode program yang sesungguhnya, kita akan selalu berhadapan
dengan sebuah kondisi yang akan menentukan arah dari program yang disusun.
Conditional statement yang akan kita gunakan untuk menangani hal ini. Contoh
penggunaannya sebagai berikut:

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.

Gambar 3.1 Diagram alir logika if

3.4. Eksekusi pilihan


Pola berikutnya setelah penggunaan if adalah eksekusi pilihan (alternative execution),
apabila ada dua kemungkinan kondisi dan kondisi menentukan mana yang akan di
eksekusi. Contoh penulisan sintaks nya adalah sebagai berikut:
yang menentukan arah eksekusi adalah nilai x yang mana apabila x dibagi 2 hasilnya 0,
maka kita tahu bahwa x adalah bilangan genap. Apabila kondisi false, statemen yang
kedualah yang akan di eksekusi. Diagram alirnya dapat dilihat pada Gambar 3.2.
Karena kondisi dalam suatu syarat pasti menghasilkan True atau False, pasti hanya
akan ada satu pilihan yang dieksekusi. Sehingga alternatif eksekusi ini bisa juga disebut
percabangan (branches).

Gambar 3.2 Diagram alir logika if then else

3.5. Kondisi berantai


Terkadang ada lebih dari dua kemungkinan dalam suatu kondisi dan kita memerlukan
lebih dari satu percabangan. Salah satu cara untuk menangani hal ini adalah dengan kondisi
berantai. Contoh penerapannya adalah sebagai berikut, cobalah untuk menuliskan di script
dan dieksekusi.

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

3.6. Kondisional Bersarang


Suatu kondisi terkadang dapat juga bersarang di kondisi yang lain. Kita dapat
menyusun sebuah kondisi percabangan seperti halnya pohon yang mempunyai cabang dan
ranting. Contoh kode programnya sebagai berikut:

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.

Gambar 3.4 Diagram alir kondisi logika bersarang


3.7. Debugging
Debugging adalah proses dimana kita mencari kesalahan dalam bahasa pemrograman.
Saat menggunakan Python IDE, baik online maupun yang di Desktop/PC akan diarahkan
kesalahan pada baris yang keliru untuk segera diperbaiki. Dua hal yang perlu dipegang saat
program terjadi kesalahan yaitu:
▪ Apa error/kesahalan yang terjadi?
▪ Dimana error/kesalahan itu terjadi?
Apabila kesalahannya adalah syntax akan mudah dilihat karena warnanya biasanya
dapat terlihat, namun untuk Python adanya spasi dan tab/indent akan mempengaruhi proses
dan bisa mengarah pada error. Secara umum apabila ada kesalahan, respon dari program
akan memberitahukan kesalahan.

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

4.2. Fungsi yang tersedia di Python


Secara umum, banyak sekali fungsi yang tersedia di Python secara built-in, atau
sudah terpasang tanpa perlu langkah instalasi.
Cobalah beberapa fungsi di Python berikut ini:

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.

4.3. Fungsi untuk konversi


Python juga menyediakan built-in function, fungsi bawaan untuk mendukung
konversi dari tipe data satu ke tipe data lainnya. Fungsi int mengambil semua nilai yang
dimasukkan di argumen ke dalam sebuah integer, apabila bisa dan sesuai akan berhasil,
namun apabila tidak sesuai akan ada pesan error yang muncul.

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

Berikutnya adalah fungsi str yang mengkonversi ke sebuah string

4.4. Fungsi matematika


Python memiliki modul bawaan untuk menangani fungsi matematika yang sering
dipakai. Sebelum menggunakan modul ini, kita harus memanggilnya terlebih dahulu.
Statemen ini membuat sebuah objek modul bernama math. Jika kita print objek ini
kita akan mendapatkan informasi sebagai berikut:

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.

4.5. Membuat fungsi baru


Sampai disini kita sudah mengenal beberapa fungsi bawaan dari Python, selanjutnya
kadang kita memerlukan fungsi baru sesuai dengan tujuan penyelesaian masalah yang kita
temui di lapangan. Sebuah fungsi didefinisikan dengan nama tertentu dan dapat dipanggil
sama halnya dengan fungsi-fungsi yang sudah ada.
Berikut ini contoh penulisan fungsi baru:

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

Untuk mengakhiri dalam mendefinisikan sebuah fungsi, cukup mengosongkan baris


dan menekan enter.
Untuk memanggil fungsi yang sudah didefinisikan, cukup dengan menyebutkan nama
fungsinya, baik di script maupu di console.

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:

4.6. Definisi dan penggunaan


Dari keseluruhan praktik pembelajaran, membuat fungsi, menggabungkan fungsi,
selanjutnya adalah menyusun potongan-potongan fungsi tersebut kedalam satu kode
program yang utuh.

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?

4.7. Alur eksekusi


Setelah anda mempelajari bagaimana idealnya sebuah program dieksekusi dan peoses
penyusunan fungsi sebagai pendukungnya, kita dapat menentukan urutan dari
statemen-statemen yang akan dieksekusi yang disebut dengan urutan algoritmanya.
Eksekusi selalu dimulai dari baris awal sampai dengan baris akhir sesuai dengan
urutan. Definisi fungsi tidak mengganggu alur urutan program, dan hanya akan
berpengaruh apabila nama fungsinya dipanggil. Jadi sebanyak apapun definisi fungsi tidak
masalah, yang lebih utama adalah bagaimana alur eksekusinya.

4.8. Parameter dan argumen


Seperti yang pernah disajikan dalam contoh fungsi bawaan Python, fungsi tersebut
memiliki input argumen yang akan diolah lebih lanjut. Beberapa fungsi memerlukan lebih
dari satu argumen untuk bisa dijalankan.
Didalam fungsi, argumen diberi nilai dalam sebuah parameter, berikut ini contoh
fungsi yang memanggil argumen.

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.9. Mengapa menggunakan fungsi?


Dengan membagi program kedalam sebuah blok blok fungsi, akan memudahkan
dalam pengurutan alur progam dan lebih mudah untuk direplikasi. Adapun beberapa alasan
mengapa harus menggunakan fungsi adalah sebagai berikut:
▪ Membuat fungsi baru memberikan kesempatan untuk memberikan nama yang
sesuai dengan fungsi yang kita
inginkan, sehingga memudahkan dalam menyusun program besar nantinya.
▪ Menggunakan fungsi mengurangi penulisan kode yang berulang, sehingga akan
memperkecil ukuran kode progam yang di eksekusi. Selanjutnya, apabila ada
perubahan cukup diubah di fungsinya saja tanpa mengganti program utama.
▪ Membagi program utama menjadi fungsi akan memudahkan dalam debugging
atau mencari kesalahan suatu program, dan bisa fokus pada kesahalan yang
berbasis fungsi.
▪ Fungsi yang didesain bisa berjalan secara umum, dapat digunakan berulang kali.

4.10. Latihan

Latihan 4.5. Buatlah contoh penggunaan fungsi untuk menghitung/menyelesaikan


komputasi sesuai dengan permasalahan yang ingin anda angkat! Buat juga interaksi
user untuk memberikan input pada proses penghitungannya sehingga program yang
anda buat dapat berkalu global
BAB 5 Pengenalan Aplikasi
Matlab
5.1. Definisi Matlab
MATLAB (Matrix Laboratory) adalah bahasa tingkat tinggi dan interaktif yang
memungkinkan untuk melakukan komputasi secara intensif. MATLAB telah berkembang
menjadi sebuah environment pemrograman yang canggih yang berisi fungsi-fungsi
builtin untuk melakukan pengelolaan sinyal, al-jabar linear dan kalkulasi matematis
lainnya. MATLAB juga berisi toolbox yang berisi fungsi-fungsi tambahan untuk aplikasi
khusus. Penggunaan MATLAB meliputi bidang-bidang:

▪ Matematika dan Komputasi


▪ Pembentukan Algorithm
▪ Akuisisi Data
▪ Pemodelan, Simulasi dan Pembuatan Prototipe
▪ Analisis Data, Explorasi, dan Visualisasi
▪ Grafik Keilmuan dan Bidang Rekayasa

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.

5.2. Pemrograman dengan Matlab


Setelah melakukan instalasi MATLAB pada Komputer, perhatikan icon MATLAB
(gambar 5.1) pada tampilan desktop kemudian doubleclick pada icon tersebut. Selanjutnya
akan muncul tampilan seperti pada gambar berikut ini(Gambar 5.2).
Gambar 5.1 Icon MATLAB

Gambar 5.2 Tampilan awal MATLAB

Setelah melakukan instalasi MATLAB pada Komputer, perhatikan icon MATLAB


pada tampilan desktop kemudian doubleclick pada icon tersebut. Selanjutnya akan muncul
tampilan seperti pada gambar di atas.

Home

▪ Jendela Perintah (Command Window)


Pada command window, semua perintah MATLAB dituliskan dan dieksekusi. Kita
dapat menuliskan perintah perhitungan sederhana, memanggil fungsi, mencari informasi
tentang sebuah fungsi dengan aturan penulisannya (help), demo program, dan sebagainya.
Setiap penulisan perintah selalu diawali dengan prompt ‘>>’. Misal, mencari nilai sin 75o,
maka pada command window kita dapat mengetikkan:
▪ Jendela Ruang Kerja (Workspace)

Jendela ini berisi informasi penggunaan variabel di dalam memori MATLAB.


Misalkan kita akan menjumlahkan dua buah bilangan, maka pada command window kita
dapat mengetikkan.

Maka pada workspace akan menampilkan variable yang sedang


digunakan.

Gambar 5.3 Hasil yang tersimpan pada Workspace

Untuk melihat variabel yang aktif saat ini, kita dapat menggunakan perintah who.

▪ Jendela History (Command History)

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 Folder Kerja (Current Folder)

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)

Gambar 5.5 Tampilan file pada

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.

Gambar 5.7 Tampilan menu Apps

5.3. Variabel dan Operator

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 :

Variabel Khusus Nilai

ans Untuk hasil apapun

pi Perbandingan antara keliling


lingkaran dengan garis tengahnya

eps Bilangan terkecil sedemikian rupa sehingga bila


ditambahkan pada satu, penghasilkan bilangan lebih
besar dari satu pada suatu komputer

flops Jumlah operasi floating point

inf Tak berhingga, misalnya 1/0

Nan atau nan Bukan suatu bilangan, misalnya 0/0

i dan j i=j= √1
nargin Jumlah argumen input suatu fungsi

nargout Jumlah argumen output suatu fungsi

realmin Bilangan real positif terkecil yang dapat digunakan

realmax Bilangan real positif terbesar yang dapat digunakan

Operator

Pada MATLAB, operator diklasifikasikan menjadi tiga bagian, yaitu:

● Operator aritmatika

Operator aritmatika digunakan untuk mengerjakan komputasi numeric.

Operator Keterangan

+ Penjumlahan

- Pengurangan

* Perkalian (aturan matrix)

.* Perkalian masing-masing elemen


yang bersesuaian (aturan array)

/ Pembagian kanan (aturan matrix)

./ Pembagian kanan (aturan array)

\ Pembagian kiri (aturan matrix)

.\ Pembagian kiri (aturan array)

^ Perpangkatan (aturan matrix)


.^ Perpangkatan (aturan array)

: Langkah

● Operator relational

Operator relasional digunakan untuk membandingkan operand-operand secara


kuantitatif.

Operator Keterangan

== Sama dengan

~= Tidak sama dengan

< Kurang dari

> Lebih dari

<= Kurang dari sama dengan

>= Lebih dari sama dengan

● Operator logika

Operator Keterangan

& Akan menghasilkan nilai 1 jika kedua elemen


yang bersesuaian memiliki nilai true dan 0 untuk
lainnya

| Akan bernilai 1 jika salah satu


elemennya true

~ Komplen dari elemen yang


diinputkan

xor Akan bernilai 1 jika salah satu dari kedua elemen


mimiliki nilai berbeda dan bernilai 0 jika sama
5.4. Array dan Matriks

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

Dalam MATLAB elemen-elemen array diakses menggunkan subcript; misalnya x(1)


adalah elemen pertama x, x(2) adalah elemen kedua x, dan seterusnya.

Contoh:

a) » x=[2 4 6 8 10] dapat dilihat bahwa x(1)=2, x(2)=4, x(3)=6,


x(4)=8, x(5)=10

b) » x([1 3 5])=[0.2 0.5 0.7, maka x(1)=0.1,x(3)=0.5,


x(5)=0.7 dan x(i) untuk i=2,3,4 bernilai 0.

c) nilai array dapat juga diisikan sebagai berikut :

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:

▪ Menambahkan elemen array

▪ Mengakses sebagian elemen array

Dari contoh sebelumnya misalkan hanya diakses elemen ke 2 sampai ke empat

▪ Menghapus elemen array

Dapat dilihat contoh berikut :


a) Menghapus elemen terakhir dari array
b) Menghapus elemen pada index tertentu Misalkan z =[1
2 3 4 5 ] dan ingin dihapus z pada index ke 2 dan
4 maka:

Matrix

MATLAB menggunakan matriks sebagai dasar komputasinya. Secara garis besar


matlab membagi matriks menjadi 2 bagian, yaitu :

▪ Matriks Khusus

Matriks Nol

Matriks yang elemennya bilangan nol Bentuk umum


:

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

Matriks yang elemennya bilangan satu Bentuk umum


:

>>ones(n,m)
Contoh:
>> ones(2,3)
ans =
1 1 1
1 1 1

Matriks Identitas
Bentuk umum :

Matriks Bujur Sangkar Ajaib

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

Matriks yang memiliki nilai acak berdasarkan distribusi


statistic pada elemennya. Bentuk umum :

>>rand(n,m)%untuk bilangan real

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

Matlab juga menyediakan bentuk matriks yang didefinisikan


oleh user.
Contoh :

>> S=[1 2 3;7 8 9] S =

1 2 3
7 8 9

Tanda semicolon ‘;’ digunakan untuk memisahkan baris satu dengan


yang
lain.
5.5. Grafik
MATLAB mempunyai bermacam-macam fungsi untuk menampilkan grafik, dimana
setiap fungsi memiliki perbedaan dalam menskalakan garis sumbu. Setiap menerima
inputan dalam bentuk vector atau matriks, matlab akan menskalakan secara otomatis.

Plot

Fungsi plot digunakan untuk menggambar grafik 2D dengan skala linear pada
kedua sumbunya.
Contoh:

Hasil yang tampak adalah sebagai berikut:


Grafik dapat diberi judul (titles). Perintah untuk member judul dan
label adalah:
● title(‘text’,’fontsize’,’size’,’fontname’,’name’)
● xlabel(‘text’,’fontsize’,’size’,’fontname’,’name’)
● ylabel(‘text’,’fontsize’,’size’,’fontname’,’name’)
● zlabel(‘text’,’fontsize’,’size’,’fontname’,’name’)
● grid on (garis-garis skala)
● axis (skala sumbu x)

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

Fungsi plot3 digunakan untuk menampilkan grafik 3 dimensi. Plot3 memerlukan 3


argumen dengan bentuk plot3 (x,y,z), dimana x, y, z merupakan 3 bagian vector yang
sama panjang.
Hasil yang akan tampak sebagai berikut:

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.

Hasil yang tampak adalah sebagai berikut:


Matlab juga menyediakan dalam bentuk 3 dimensi, yaitu bar3. Misal grafik diatas
disajikan dalam bar3, maka kita ketik perintah berikut:

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.

Perintah diatas akan menghasilkan gambarsebagai berikut:

Stem

Fungsi stem cocok digunakan untuk menampilkan data dalam bentuk diskrit.

Perintah diatas akan menghasilkan gambarsebagai berikut:


5.6. Visualisasi 2D dan 3D
MATLAB memiliki beberapa bentuk grafik yang dapat dibuat dengan mudah dan
cara penggunaannya-pun sederhana. Berikut ini akan diberikan contoh-contoh untuk
menampilkan berbagai grafik berdasarkan kategori :

Grafik 2D

● Grafik garis, mencetak grafik chirp.

● Grafik Batang (Bar), mencetak kurva BELL.


● Grafik Tangga, mencetak Gelombang sinus dalam grafik tangga.

● Grafik ErrorBar, mencetak Grafik ErrorBar pada fungsi dengan kesalahan


secara acak.

● Grafik Polar, mencetak fungsi perkalina sin dan cos dalam bentuk polar.

● Grafik Stem, mencetak perkalian fungsi sin dengan eksponensial.

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

● Grafik Quiver, mencetak pola arah gerakan suatu nilai.


BAB 6 M-File & Statement
Control
Sama seperti bahasa pemrograman yang lain, MATLAB juga memiliki statemen
kontrol. Berikut adalah beberapa pembahasan statemen kontrol yang ada di Matlab:

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.

Contoh script sederhana dari matlab :

Function M-File

Function m-file berfungsi menerima argument input dan menghasilkan argument


output. Fungsi Ini dapat dipanggil langsung dari command window atau dari suatu m-file
yang berbeda. Aturan penulisan fungsi adalah sebagai berikut :
Fungsi di dalam MATLAB jika disimpan secara default akan tersimpan dengan nama
yang sama dengan nama fungsinya.

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:

Fungsi umum dan Fungsinya


variabel
Help untuk mengetahui petunjuk
pemakaian suatu fungsi
type file.m untuk menampilkan isi dari M-File
pwd untuk mengetahui subdirektori
aktif
dir untuk menampilkan isi direktori

save filename untuk menyimpan variabel dalam


file.mat
load filename : untuk memanggil data yang
disimpan dalam file.mat
clear : untuk menghapus variabbel
terdefinisi

pack untuk memampatkan pemakaian


memory lembar kerja

size(A) untuk mengetahui ordo matrik A

max(A) atau min(A) untuk mengetahui nilai terbesar dan terkecil


dari elemen matrik A

length(A) menginformasikan bilangan


terbesar dari ordo matrik A

clc membersihkan layar lembar kerja

disp (‘karakter’) menampilkan karakter (string)

num2str mengkonversi numerik menjadi


string
input meminta user memberikan input

pause menghentikan program sampai user menekan


<ENTER>

pause(n) berhenti selama n detik

Fungsi Matematis Fungsinya


abs(x) fungsi untuk menghasilkan nilai
absolut dari x
sign(x) fungsi untuk menghasilkan nilai -
1 jika x<0, 0 jika x=0 dan 1 jika
x>1
exp(x) untuk menghasilkan nilai
eksponensian natural, ex
log(x) untuk menghasilkan nilai
logaritma natural x, ln x
log10(x) untuk menghasilkan nilai
logaritma dengan basis 10, x 10
log
sqrt(x) untuk menghasilkan akar dari
nilai x, x
rem(x,y) untuk menghasilkan nilai modulus (sisa
pembagian) x terhadap y

Latihan 2.
Carilah Fungsi dari sintak berikut:

No. Sintak Fungsi


1 Intro

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

● Iterasi IF … ELSEIF … ELSE … END

Iterasi ini digunakan untuk memberikan syarat-syarat khusus terhadap sekelompok


pernyataan. Syarat-syarat khusus itu dikemukakan dengan dasar bahwa ada sesuatu yang
berlaku pada sekelompok pernyataan tertentu namun tidak berlaku untuk sekelompok
pernyataan lainnya, ada sesuatu yang dapat digunakan olehh sekelompok pernyataan
tertentu namun tidak untuk sekelompok pernyataan lainnya. Disinilah programmer harus
membatasi dengan beberapa syarat.
Syarat-syarat yang ditulis dapat berupa ekspresi string, misal “IF BUDI==LULUS”
atau ekspresi numeris, misal “IF A=<B” kemudian diikuti dengan sekelompok pernyataan
yang harus menggunakan informasi pertama. Kalau syarat itu dipenuhi maka sekelompok
pernyataan itu harus dilalui, namun bila tidak pernyataan itu harus dilewati untuk
mengerjakan pernyataan berikutnya. Bentuk umum iterasi ini:

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 :

● Iterasi FOR … END

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:

CONTINUE dan BREAK

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

Anda mungkin juga menyukai