Asisten :
Jo Kevin Nathaniel 11201046
Disusun Oleh :
Faizal Almin Nakul 05201027
Mei 2021
Dasar Teori
A. Mengangkat Kesalahan
Pada program, Python akan langsung menghentikan aplikasi yang dijalankan ketika error atau
kesalahan terjadi. Terdapat dua jenis kesalahan secara umum yaitu kesalahan sintaksis dan
kesalahan eksepsi. Kesalahan pada sintaksis terjadi ketika kita menuliskan program yang tidak
sesuai dengan aturan python sedangkan eksepsi terjadi pada saat kesalahan terjadi walaupun
secara sintaksis tidak terdapat kesalahan apapun.
Kita dapat mengangkat kesalahan pada program dengan menggunakan sintaks raise dan
assert agar pesan kesalahan lebih informatif bagi programmer.
Pada contoh sebelumnya, assert digunakan untuk menguji suatu kondisi dan raise untuk mengangkat
kesalahan dengan informasi yang berguna untuk programmer. Pada blok try dan except kita dapat
menangani suatu kesalahan yang diangkat oleh program. Sebagai contoh pada program penghitung
luas lingkatan, pengguna secara tidak sengaja memasukkan string yang berisi karakter berupa huruf
sehingga tidak dapat diproses lebih lanjut dan dapat menyebabkan program berhenti. Kesalahan
tersebut dapat kita tangkap menggunakan blok except dan diantisipasi berdasarkan fungsi / pernyataan
lain yang terdapat pada blok tersebut. Berikut aturan yang digunakan untuk menggunakan blok
penanganan kesalahan :
1
Source Code
No. Penerjemah_protein.py
2
No. faktorial.py
No. nama_program.py
3
4
Screenshot
PenerjemahProtein.py
Pada tampilan awal program TranslasiRNA, user diminta untuk menginput jenis kodon RNA yang
nantinya akan dibaca oleh computer untuk diproses
Selanjutnya program akan menampilkan kesalahan (jika ada) yang sudah diinput oleh user. Lalu
program mengalami perulangan sehingga user bisa memperbaiki kesalahan input nilai.
Selanjutnya program akan langsung menampilkan hasil translasi kode kodon RNA yang sudah diiput
oleh user menjadi nama protein yang sesuai.
5
Faktorial.py
Pada tampilan awal program Faktorial, user diminta untuk menginput angka yang diinginkan yang
kemudian akan dibaca oleh computer untuk diproses.
Selanjutnya program akan menampilkan kesalahan (jika ada) yang sudah diinput oleh user. Lalu
program mengalami perulangan sehingga user bisa memperbaiki kesalahan input nilai.
6
Selanjutnya, program akan langsung menampilkan hasil penjabaran faktorial yang sudah diinput oleh
user
• BilanganPrima.py
Pada tampilan awal program EvaluasiAritmatika, user diminta untuk menginput angka untuk
dilakukan pengecakan apakah angka tersebut termasuk bilagan prima atau tidak
Selanjutnya program akan menampilkan kesalahan (jika ada) yang sudah diinput oleh user. Lalu
program mengalami perulangan sehingga user bisa memperbaiki kesalahan input nilai.
Selanjutnya program akan langsung mencetak hasil dari pengecekan apakah suatu angka yang diinput
user merupakan bilangan prima atau tidak.
7
8
Pembahasan
Penerjemah_protein.py
No. Penjelasan
3 Me berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau nilai
4 Ph berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau nilai
5 Le berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau nilai
6 Se berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau nilai
7 Ty berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau nilai
8 Cy berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau nilai
9 Tr berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau nilai
10 STOP berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau
Nilai
11 RNA berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau nilai
12 Protein berfungsi sebagai variabel bertipe list untuk menampung sejmlah data atau
nilai
14 while berfungsi untuk melakukan pengulangan selama data bernilai true (benar)
16 Input berfungsi agar user bisa memasukkan nilai untuk variabel kata
17 for (outer loop) berfungsi untuk melakukan pengulangan selama data berada di suatu
range (pengulangan dilakukan pada variabel kata)
18, 22, .append() berfungsi untuk menarik kembali nilai yang ada didalam suatu variabel
24, 26, list
28, 30,
32, 34
20, 39 for (outer loop) berfungsi untuk melakukan pengulangan selama data berada di suatu
range (pengulangan dilakukan pada variabel RNA)
42 except berfungsi ketika terjadi kesalahan, maka akan ada pesan peringatan
9
23,25, elif berfungsi untuk menjalankan eksekusi kndisional jika kondisi sebelumnya
27,29, tidak
31,33, terpenuhi (eksekusi ini dilakukan pada variabel kodon tehadap variabel Ph, Le,
35 Se,Ty, Cy,Tr, dan STOP)
37,38, print() berfungsi untuk mencetak hasil output dari suatu data
43
Faktorial.py
No. Penjelasan
10
Bilangan_Prima.py
No. Penjelasan
2 while berfungsi untuk melakukan pengulangan selama data bernilai true (benar)
4 Input berfungsi agar user bisa memasukkan nilai untuk variabel num
6 except berfungsi ketika terjadi kesalahan, maka akan ada pesan peringatan
11 for (outer loop) berfungsi untuk melakukan pengulangan selama data berada di
suatu
range (pengulangan dilakukan untuk variabel i)
13-14 print() berfungsi untuk mencetak hasil output dari suatu data
16 else berfungsi mengeksekusi perintah ketika tidak ada kondisi yang terpenuhi
18 else berfungsi mengeksekusi perintah ketika tidak ada kondisi yang terpenuhi
11
Kesimpulan
Dari praktikum yang telah dilakukan ini,dapat disimpulkan bahwa penanganan masalah dalam suatu
program sangatlah diperlukan.Agar dapat memudahkan user mengetahui penyebab kesalahan yang
terjadi hingga program tersebut tidak dapat berjalan.Dengan menggunaka n try except,di dalam blok
try kita meletakkan baris program yang kemungkinan akan terjadi error. Kemudian jika terjadi error,
maka penanganannya diserahkan kepada blok except.Dengan menggunakan raise, jika terjadi error pada
saat program dijalankan,maka dapat dimunculkan eksepsi. Dalam praktikum ini jika didapatkan
argumen yang tipe datanya salah,maka digunakan ValueError.Dan untuk pernyataan assert yang gagal
maka digunakan AssertionError
Saran
Adapun tanggapan saya terhadap praktikum ini, asisten telah melakukan tugas dengan baik dalam
membimbing praktikan, namun terkadang penjelasan yang diberikan terkadang terlampau terlalu cepat
untuk saya karena saya baru pertama kali belajar. Mungkin jika memberi lebih banyak contoh (selain
yang tertera di modul) yang diberikan oleh asisten dapat membantu agar praktikum lebih mudah untuk
dipahami.
12