Anda di halaman 1dari 39

BAB I

TUJUAN DAN LANDASAN TEORI

1.1. Tujuan
Adapun tujuan dari pembuatan tugas mengenai materi exception
handling bagi mahasiswa adalah diharapkan mampu mengimplementasikan
Exception Handling.

1.2. Landasan Teori


Exception handling adalah penangan error yang terjadi pada sebuah
program. Exception handling akan mendeteksi error yang terjadi secara
otomatis. Exception handling dalam pemrograman Csharp, Java dan C++
menggunakan keyword “try-cactch”.
Dalam pembuatan sebuah program sering muncul error (kesalahan)
dan bug, yang sering disebut dengan istilah eksepsi (exception). Prioritas
utama bagi seorang programmer yang berpengalaman adalah membuat
program yang terbebas dari kesalahan pada saat runtime(waktu program
dijalankan).
Hal ini bukanlah merupakan hal yang mudah karena disini kita harus
pandai dalam menentukan kemungkinan-kemungkinan yang akan
menyebabkan terjadinya error pada program kita. Dengan begini kita
sebagai programmer harus dapat mencegah terjadinya error pada program,
sehingga meskipun hal itu terjadi, maka error tersebut tidak akan
menghambat jalannya program. Proses seperti inilah yang disebut dengan
penjebakan error atau yang lebih dikenal dengan istilah "exception
handling".
Jarang sekali sebuah program dibuat dapat berjalan dengan sukses
pada saat pertama sekali dijalankan. Kesalahan sering terjadi pada saat
perancangan atau pemrograman. Kesalahan tersebut dikategorikan menjadi
tiga bagian, yaitu :
1. Syntax errors – mengakibatkan kesalahan kompilasi.
2. Sematic errors – program menghasilkan keluaran yang tidak sesuai
dengan harapan.
3. Runtime errors – kebanyakan mengakibatkan terminasi program
secara tidak normal atau bahkan sistem crash.

Berikut ini merupakan contoh runtime error.


1. Pembagian bilangan dengan nol.
2. Akses elemen yang berada di luar indeks array.
3. Menggunakan nilai negatif untuk ukuran array.

Setiap program dapat berada dalam suatu kondisi yang tidak normal –
Error conditions. Program yang ‘baik’ harus dapat menangani kondisi ini.
Exception merupakan suatu keadaan yang disebabkan oleh runtime error
dalam program. Memungkinkan kesalahan ditangani tanpa harus
‘mengotori’ program (dengan rutin yang menangani kesalahan).
Memungkinkan pemisahan penanganan kesalahan dengan program utama
(main business logic).

Suatu fungsi dapat memberi tanda suatu kesalahan dengan melempar


suatu exception – throws. Fungsi pemanggil dapat menyerahkan kendali ke
exception handler dengan menangkap (catching) exception – try, catch.
Berikut ini merupakan blok try – catch.

try
{
instruksi yang berpotensi menghasilkan exception
}
catch(tipe_exception e)
{
instruksi untuk menangani exception
}
BAB II
PEMBAHASAN

2.1. Program Hitung Gajih Karyawan Bank

Gambar 2.1. Coding Program Hitung Gajih Karyawan Bank Sebelum


Exception Handling

Program hitung gajih karyawan bank ini berfungsi untuk menghitung


seberapa besar gajih yang di dapat oleh karywan bank dalam 1 bulan kerja.
Program ini khusus untuk menghitung gajih dari CS dan Teller. Pada
program ini memiliki ketentuan yaitu karyawan bank CS memiliki gajih
pokok sebesar Rp.3.500.000 dan upah lembur sebesar Rp.25.000 per
jamnya. Karyawan bank Teller memiliki gajih pokok sebesar Rp.3.300.000
dan upah lembur sebesar Rp.20.000 per jamnya.
Potongan coding di atas belum menggunakan exception handling dan
jika di analisa maka program tersebut dapat ditambahkan exception
handlingnya. Program tersebut jika dijalankan dan pada jabatan di
masukkan bukan CS maupun Teller maka program tersebut hanya di
instruksikan kembali ke titik awal atau mereset ulang. Berikut adalah
simulasinya.

Gambar 2.2. Output Program Hitung Gajih Karyawan Bank Sebelum


Exception Handling

Setelah di masukkan jabatan dengan Bos maka program akan


melakukan instruksi goto awal karena jabatan Bos tidak masuk dalam
algortima program. Program ini hanya menerima masukkan jabatan dengan
inputan CS atau Teller selain itu maka program akan mengulang program.
Pada kondisi inilah exception handling di perlukan dan menampilkan
sebuah pesan kepada pengguna program agar tau di mana titik kesalahan
dari penggunaan program. Jika tidak ada sebuah pesan error yang di
beritahukan kepada pengguna program maka pengguna akan bingung
dengan apa yang di sajikan oleh program.
Sesuai kondisi program di atas maka kami menambahkan sebuah
exception handling untuk memberikan sebuah pesan kepada pengguna
program jika pengguna program memasukkan jabatan selain CS atau Teller
dengan pesan “Maaf inputan jabatan salah, silahkan masukkan jabatan
dengan inputan CS atau Teller!”.
Pada inputan jam lembur juga perlu di tambahkan exception handling
karena secara logika jam lembur juga ada batasannya tidak mungkin dalam
1 bulan jam lembur bernilai besar. Sehingga kami membuat batasan inputan
jam lembur tidak boleh lebih dari 30 jam dalam 1 bulan. Jika pengguna
program menginputkan jam lembur lebih dari 30 jam maka program akan
menampilkan pesan “Maaf inputan jam lembur tidak valid, maksimal jam
lembur bernilai 30 jam!”. Berikut adalah coding program hitung gajih
karyawan bank sesudah menggunakan exception handling.

Gambar 2.3. Coding Program Hitung Gajih Karyawan Bank Sesudah


Exception Handling
Gambar 2.4. Output Program Hitung Gajih Karyawan Bank Sesudah
Exception Handling dengan Inputan Jabatan Salah

Gambar 2.5. Output Program Hitung Gajih Karyawan Bank Sesudah


Exception Handling dengan Inputan Lembur Salah

Gambar 2.6. Output Program Hitung Gajih Karyawan Bank Sesudah


Exception Handling dengan Inputan Secara Benar

2.2. Program Informasi Aktor Bennedict Cummberbatch

Gambar 2.7. Coding Program Informasi Aktor Bennedict


Cummberbatch Sebelum Exception Handling (1)
Gambar 2.7. Coding Program Informasi Aktor Bennedict
Cummberbatch Sebelum Exception Handling (2)

Program informasi aktor Bennedict Cummberbatch ini berfungsi


untuk menyampaikan informasi dari Bennedict Cummberbatch yang
merupakan seorang aktor handal yang dapat memainkan peran apa pun
dalam berbagai film. Pada program ini hanya menampilkan 3 informasi film
yang di perani oleh Bennedict Cummberbatch yaitu, pada Sherlock Holmes
Film, Bennedict Cummberbatch berperan sebagai Sherlock Holmes, pada
The Avengers Film, Bennedict Cummberbatch berperan sebagai Doctor
Strange dan yang terakhir pada The Imitation Game, Bennedict
Cummberbatch berperan sebagai Alan Turing.
Potongan coding di atas belum menggunakan exception handling dan
jika di analisa maka program tersebut dapat ditambahkan exception
handlingnya. Program tersebut jika dijalankan dan pada pilihan menu di
masukkan dengan nilai lebih dari 3 atau di masukkan dengan nilai bukan
angka misal di masukkan dengan nilai a maka program akan mengalami
stopped working. Berikut adalah simulasinya.

Gambar 2.8. Output Program Informasi Aktor Bennedict


Cummberbatch Sebelum Exception Handling
Gambar 2.9. Output Program Informasi Aktor Bennedict
Cummberbatch Mengalami Stopped Working

Setelah di masukkan pilihan menu dengan nilai lebih dari 3 atau di


inputkan dengan data yang bukan merupakan bilangan integer maka
program mengalami stopped working karena nilai pilihan menu yang lebih
dari 3 tidak masuk dalam algortima program dan pilihan menu ini
menggunakan tipe data integer sehingga nilai inputannya pun harus
merupakan bilangan integer dan bukan nilai yang bertipe string. Program ini
hanya menerima pilihan menu dengan inputan 1, 2 atau 3 selain itu maka
program akan mengalami stopped working.
Pada kondisi inilah exception handling di perlukan agar program tidak
mengalami stopped working dan menampilkan sebuah pesan kepada
pengguna program agar tau di mana titik kesalahan dari penggunaan
program. Jika tidak ada sebuah pesan error yang di beritahukan kepada
pengguna program maka pengguna akan bingung dengan apa yang di
sajikan oleh program.
Sesuai kondisi program di atas maka kami menambahkan sebuah
exception handling untuk memberikan sebuah pesan kepada pengguna
program jika pengguna program memasukkan pilihan menu dengan nilai
lebih dari 3 dengan pesan “Maaf inputan pilihan menu salah, silahkan
masukkan pilihan menu dengan inputan 1, 2 atau 3!” dan jika pengguna
program memasukkan pilihan menu dengan nilai bukan bertipe integer
dengan pesan “Maaf inputan pilihan menu salah, silahkan masukkan pilihan
menu dengan inputan 1, 2 atau 3 (angka)!”. Berikut adalah coding program
informasi aktor Bennedict Cummberbatch sesudah menggunakan exception
handling.
Gambar 2.10. Coding Program Informasi Aktor Bennedict
Cummberbatch Sesudah Exception Handling
Gambar 2.11. Output Program Informasi Aktor Bennedict
Cummberbatch Sesudah Exception Handling dengan Inputan Pilihan
Menu Lebih dari Angka 3

Gambar 2.12. Output Program Informasi Aktor Bennedict


Cummberbatch Sesudah Exception Handling dengan Inputan Pilihan
Menu Bukan Angka

Gambar 2.13. Output Program Informasi Aktor Bennedict


Cummberbatch Sesudah Exception Handling dengan Inputan Secara
Benar

2.3. Program Umur

Gambar 2.14. Coding Program Umur Sebelum Exception Handling


Gambar 2.15. Output Program Umur Sebelum Exception Handling

Gambar 2.16. Output Program Umur Sebelum Exception Handling

Tujuan dari program ini adalah untuk menampilkan hasil dari umur
anda apakah telah dewasa atau belum dewasa. Pada hasil output program
diatas saat kita ingin memasukan umur kita diatas 17 maka hasil nya akan
muncul anda dewasa dan kalau di bawah 17 anda belum dewasa. Coding
program umur dengan exception handling :

Gambar 2.17. Coding Program Umur Sesudah Exception Handling


Gambar 2.18. Output Program Umur Sesudah Exception Handling

Pada program ini akan ditambahkan exception handling, alasan nya


untuk dapat menampilkan hasil kesalahan pada saat output, pada baris
program ini terdapat try yang merupakan statemen yang mendeklarasikan
error, jika error maka error tersebut yang di lempar ke throw dan catch
statemen yang di gunakan untuk mengatasi error, yang merupakan variabel
untuk mendeklarasikan fungsi dari exception handling.
Perbedaan yang terdapat pada baris program yang sebelum dan
sesudah ada exception handling nya yaitu kalau kita menampilkan angka di
bawah 17 tahun pada program sebelum exception handling maka akan
muncul hasil belum dewasa, sedangkan kalau kita memasukan exception
handling dan angka yang di masukan 0 maka usia tersebut tidak boleh ada
angka 0 karena kelahiran atau umur mulai di hitung dari 1.

2.4. Program Kubus

Gambar 2.19. Coding Program Kubus


Gambar 2.20. Output Program Kubus

Program ini bertujuan untuk menghitung dari panjang sisi yang ada
pada kubus dimana akan menggunakan rumus dari kubus yaitu s*s*s. Pada
hasil output nya user atau pemakai akan di minta memasukan jumlah yang
ingin di hitung pada program kubus ini. Misal kita memasukan 2 maka hasil
nya yaitu 8 karena 2*2*2 adalah 8. Input program kubus dengan exception
handling

Gambar 2.21. Coding Program Kubus Exception Handling

Gambar 2.22. Output Program Kubus Exception Handling


Pada kubus ini di tambahkan exception handling yang bertujuan untuk
menampilkan kesalahan pada saat output program. Bagian yang merupakan
pendeklarasian dari exception handling merupakan try,throw dan catch yang
pada program ini terdapat di baris 11 sampai 23. Lalu pada output yang ada
exception handling nya kalau kita memasukan angka yang memiliki tanda
koma atau titik maka hasil output nya akan menampilkan hasil error (hasil
error karena tidak bisa pakai koma). Dan akan muncul hasil akhir dari kubus
dimana koma itu dihilangkan. misal kita memasukan panjang sisi nya 5.1,
maka yang ada koma tersebut akan muncul exception handling nya. Lalu 5
tersebut akan di hitung dengan 5*5*5 dan muncul lah hasil akhir 125.
Perbedaan output program yang ada exception handling dan tidak ada
exception handling nya yaitu , pada output exception handling akan muncul
hasil error atau kesalahan pada saat memasukan angka panjang sisi,
sedangkan pada output yang tidak menggunakan exception handling maka
akan muncul hasil dari panjang sisi tanpa ada nya error atau kesalahan
inputan.

2.5. Program menghitung luas lingkaran


Tanpa exception handling
#include <iostream>
using namespace std;
int main(){
float L, r;
const float phi = 3.14;
cout<< "Masukkan jari-jari lingkarang : ";
cin>> r;
L = phi*r*r;
cout<< "Luas Lingkaran adalah "<< L<<endl;
return 0;
}
Pada program ini menggunakan header iostream untuk proses input
dan output seperti cin untuk membacav ariaber yang di inputkan dan cout
untuk menampilkan hasil yang pada saat program dijalankan. Kemudian
pada bagian fungsi utama di deskripsikan variable l, r yang bertipekan float
(untuk bilangan real dan satu variable tetapan yaitu const float phi yang
bernilaikan 3,14 yang nantinya ketika program di eksekusi nilai variable
tersebut selalu konstanta (tetap). Perintah cout<<”masukan jari-jari
lingkaran “; adalah bentuk tampilan yang nantinya akan tampil pada saat
program dijalankan yang akan menjadi nilai dari pada r. l=phi*r*r; adalah
formula atau rumus yang mengolah nilai L adalah hasil dari phi (3,14) di
kalikan dengan nilai r (2) dan dikalikan lagi r(2). Kemudian nilai L tersebut
ditampilkan pada cout<<”luas lingkaran adalah “ dan sintaks terakhir
adalah return 0 yang artinya jika selesai di eksekusi maka program akan
mengembalikan ke 0.
Pada program ini tidak ada exception handling jika nilai yang kita
masukkan untuk jari-jari (r) maka program akan menampilkan nilai nol dan
jika kita memasukan nilai a maka program akan mengeluarkan nilai nol.
pada program ketika di compile tidak terjadi eror dalam program ini tidak
ada syntax error, linking error , maupun runtime error. Berikuthasil output
program.

Gambar 2.23. Inputan 0

Gambar 2.24. Inputan a

Dan berikut program diatas ketika diberikan exception handling :


#include <iostream>
using namespace std;
int main(){
float L, r;
const float phi = 3.14;
cout<< "Masukkan jari-jari lingkaran : ";
cin>> r;
try
{
if (r== 0)
{
throw r;
}
else
{
L = phi*r*r;
cout<< "Luas Lingkaran adalah "<< L<<endl;
}
}
catch (float e){
cout<<" jari jari tidak boleh dimasukan dengan nol/karakter huruf
!!";
}
return 0;
}

Pada program ini sama dengan program sebelumnya hanya saja


ditambahkan try yang memberikan perintah jika nilai jari jari (r) = 0 atau
pun karakter huruf maka akan menyampaikan eror dengan pemberian syntax
throw r; dan eror tadi akan di beritahukan dalam output ketikan program di
jalankan dengan memberikan syntax catch (float e) dan pesan erornya di
tampilkan dengan cout<<”jari-jari tidak boleh dimasikan nol/ karakter
huruf “;. Berikuthasil output ketika di jalankan dengan exception handling.

Gambar 2.25. Hasil Inputan 0

Gambar 2.26. Hasil Inputan Karakter a

Berikut hasil ketika nilai yang dimasukan sesuai dengan nilai yang tidak
dimuatkan dalam exception handling.

Gambar 2.27. Hasil Inputan r =2

2.6. Program Menghitung Cepat Rambat Gelombang


Berikut struktur program :
#include <iostream>
using namespace std;
int main()
{
cout<<"program menghitung cepat rambat gelombang \n";
float n , f, v;
const float pgelombang = 2;
const float t=60;
cout<<"masukan getaran sebanyak(n) : ";
cin>>n;
f=n/t;
v=pgelombang*f;
cout<<"hasil cepat rambatnya adalah :"<<v<<" m/s"<<endl;
cin.get();
}

Pada program ini dibuat untuk menyelesaikan suatu kasus dimana


mencari cepat rambat gelombang pada panjang gelombang yang sudah
ditetapkan nilai 2 meter dan dalamwaktu 60 s atau 1 menit dengan langkah
program akan mencari frekuensi gelombang dengan rumus jumlah getaran
gelombang dibagi dengan waktu (n/t) kemudian rumus untuk mencari cepat
rambat gelombang dengan rumus panjang gelombang dikali dengan frekunsi
(pglombang*f) pada progam ini menggunakan header iostream untuk
proses input dan output, menggunakan using namespace std yang berguna
ketika melakukan perintah tampilkan tanpa harus menuliskan std di depan
cout. Pada program ini di deskripsikan v, f, n dengan tipe data float yakni
bilangan real dimana v adalah cepat rambat gelombang, f adalah frekuensi
dan n adalah panjang gelombang. Dalam program ini juga di deskripsikan
constanta atau nilai tetap untuk pgelombang (panjang gelombang) dan t
(waktu dalam satuan s) dengan tetapan nilai yakni pglombang = 2 meter
dalam waktu 60 s. dalam program memiliki 2 langkah kerja untuk
mendapatkan cepat rambat gelombang peratama di deklarasikan rumus
frekuensi sama adalah hasil bagi antara jumlah getaran dan waktu (f=n/t).
Selanjutnya mencari cepat rambat gelombang dengan rumus frekuensi dikali
dengan panjang gelombang. (v= pglombang*f). Kemudian nilai dari v di
tampilkan dengan cout<<“hasil cepat rambatnya adalah ”<< v<<endl;
dan terakhir cin.get(); untuk mengembalikan progam ketika sudah di
eksekusi. Berikut hasil output program.

Gambar 2.28. Inputan 120 n


Gambar 2.29. Inputan 0

Gambar 2.30. Inputan a

Berikut program dengan menggunakan exception handling


#include<iostream>
using namespace std;
int main()
{
cout<<"program menghitung cepat rambat gelombang \n";
float n , f, v;
const float pgelombang = 2;
const float t=60;
cout<<"masukan getaran sebanyak (n) : ";
cin>>n;
try
{
if (n==0)
{
throw n;
}
else
{
f=n/t;
v=pgelombang*f;
cout<<"hasil cepat rambatnya adalah :"<<v<<" m/s"<<endl;
}
}
catch (float e)
{
cout<<"error !! jumlah getaran tidak boleh 0 atau pun
karakter\n";
}
cin.get();
}

Pada struktur program ini sama seperti program di atas yang ditambah
hanya exception handling yakni try { if n==0) artinya jika jumlah getaran
gelombang sama dengan 0 atau karakter huruf maka akan meberikan
exception yakni throw n; artinya nilai 0 atau karakter huruf maka akan
mengembalikan exception eror ketika run time dengan pemberitahuan pada
saat program di compile dan run akan memberikan pesan dengan catch
(float e) { cout<< “error!! Jumlah getaran tidak boleh 0 atau pun karakter “;
berikut hasil output program.

Gambar 2.31. Inputan n 120

Gambar 2.32. Inputan n 0


Gambar 2.33. Inputan Karakter a

Perbedaan ketika program dimasukan exception dan tanpa dimasukan


exception adalah progam akan memberikan pemberitahukan eror dan tidak
memberikan hasil ketika progam di jalankan dan sebaliknya program yang
tidak menggunakan exception handling maka program tidak memberikan
pesan eror ketika di jalankan.

2.7. Program Konversi Sudut CM ke Meter

Gambar 2.34. Coding Program Konversi Sudut Sebelum Menggunakan


Exception Handling

Gambar 2.35. Output Program Konversi Sudut Sebelum Menggunakan


Exception Handling

Tujuan dari program ini adalah untuk menampilkan hasil dari sudut
centi meter ke meter untuk mengetahui berapakah sudut sudut centi meter
bila di buat ke dalam meter. Pada hasil output program diatas saat kita
memasukan sudut 50 centi meter maka hasil di dalam meter adalah 0,5
meter.

Gambar 2.36. Coding Program Sesudah Menggunakan Exception


Handling

Gambar 2.37. Output Program Sesudah Menggunakan Exception


Handling

Pada program ini akan ditambahkan exception handling, alasan nya


untuk dapat menampilkan hasil kesalahan pada saat output, pada baris
program ini terdapat try yang merupakan statemen yang mendeklarasikan
error, jika error maka error tersebut yang di lempar ke throw dan catch
stastemen yang di gunakan untuk mengatasi error, yang merupakan variabel
untuk mendeklarasikan fungsi dari exception handling.
Perbedaan yang terdapat pada baris program yang sebelum dan
sesudah ada exception handling nya yaitu kalau kita menampilkan angka di
bawah 50 maka kita akan mendapatakan hasil dari sudut centi meter ke
meter , sedangkan kalau kita memasukan exception handling dan angka
yang di masukan lebih dari 50 maka akan menampilkan sudut tidak boleh
lebih dari 50.

2.8. Program Persamaan Kuadrat

Gambar 2.38. Coding Program Persamaan Akar Kuadrat

Gambar 2.39. Output Program Persamaan Akar Kuadrat

Program ini bertujuan untuk menghitung persamaan kuadrat dari akar-


akar dimana akan menggunakan rumus dari kubus yaitux1=((-
b)+(sqrt(D)))/(2*a) x2=((-b)-sqrt(D))/(2*a). Pada hasil output nya user atau
pemakai akan di minta memasukan jumlah yang ingin di hitung pada
program kubus ini. Misal kita memasukan 7, 8, 1 maka hasil nya yaitu X1 -
0,142857 dan X2 -1 karena 7/8/1 adalah -0,142857 dan -1.
Gambar 2.40. Coding Program Excetion Handling

Gambar 2.41. Output Program Exception Handling

Pada kubus ini di tambahkan exception handling yang bertujuan untuk


menampilkan kesalahan pada saat output program. Bagian yang merupakan
pendeklarasian dari exception handling merupakan try,throw dan catch yang
ada pada program di atas. Lalu pada output yang ada exception handling
nya kalau kita memasukan angka yang tidak ada persamamannya maka akan
mendapat hasil output errot atau “bukan persamaan kuadrat”.
Perbedaan output program yang ada exception handling dan tidak ada
exception handling nya yaitu , pada output exception handling akan muncul
hasil error atau kesalahan pada saat memasukan angka persamaan kuadrat,
sedangkan pada output yang tidak menggunakan exception handling maka
akan muncul hasil dari persamaan akar kuadrat tanpa ada nya error atau
kesalahan inputan.

2.9. Program Kalkulator

Gambar 2.42. Coding Program Kalkulator Sebelum Exception


Handling

Gambar 2.43. Output Program Kalkulator Sebelum Exception


Handling

Gambar 2.44. Output Program Kalkulator Sebelum Exception


Handling
Tujuan dari program ini adalah untuk menampilkan hasil dari
hitungan kalkulator apakah hasilnya benar atau salah. Pada hasil output
program diatas saat kita ingin memasukan angka 2 di tambah 2 maka hasil
nya akan muncul 4 dan berarti hitungan benar.

Coding program kalkulator dengan exception handling :

.
Gambar 2.45. Coding Program Kalkulator Sesudah Exception
Handling

Gambar 2.46. Output Program Kalkulator Sesudah Exception


Handling

Pada program ini ketika ditambahkan exception handling.adalah untuk


dapat menampilkan hasil kesalahan pada saat di output.pada program ini
terdapat try yang merupakan stastemen untuk menampilkan error.ketika
error error tersebut akan di lemparkan ke throw dan catch stastemen yang
bertujuan untuk mengatasi error,yang merupakan variabel untuk
mendeklarasikan fungsi dari exception handling.

2.10. Program Konversi Waktu

Gambar 2.47. Coding Program Konversi Waktu Sebelum Exception


Handling

Gambar 2.48. Output Program Konversi Waktu Sebelum Exception


Handling

Gambar 2.49. Output Program Konversi Waktu Sebelum Exception


Handling

Program ini adalah untuk menghitung menit dalam jumlah detik,yaitu


ketika memasukkan jumlah 2000 detik maka hasilnya adalah 33 menit 20
detik dan berarti menandakan program hasilnya adalah benar.
Coding program konversi waktu dengan exception handling.

Gambar 2.50. Coding Program Konversi Waktu Sesudah Exception


Handling

Gambar 2.51. Output Program Konversi Waktu Sesudah Exception


Handling

Pada program konversi waktu ini di tambahkan exception handling


yang bertujuan untuk menampilkan kesalahan atau error pada saat output
pada program ini. Bagian yang merupakan exception handling adalah try
throw dan catch.ketika menggunakan exception handling akan menampilkan
kesalahan pada output contoh ketika memasukkan detik dalam bentuk huruf
bukan angka maka exception handling akan menampilkan error pada output
tersebut yaitu nilai sekon tidak boleh nol ataupun karakter huruf.
Perbedaan output program yang ada exception handling dan tidak ada
exception handling nya yaitu , pada output exception handling akan muncul
hasil error atau kesalahan pada saat memasukan huruf di jumlah detiknya,
sedangkan pada output yang tidak menggunakan exception handling maka
akan muncul hasil dari jumlah detik dan menitnya tanpa ada nya error atau
kesalahan inputan.

2.11. Program Konversi Suhu


Program konversi suhu yang tidak memakai exception handling :

Gambar 2.52. Coding Program Suhu Tidak Memakai Exception


Handling

Gambar 2.53. Output Program Suhu Tidak Memakai Exception


Handling
Program konversi suhu memakai exception handling :

Gambar 2.54. Coding Program Suhu Memakai Exception Handling

Pada program ini akan ditambahkan exception handling, alasannya


untuk dapat menampilkan hasil kesalahan pada saat output, pada baris
program ini terdapat try yang merupakans tatemen yang mendeklarasikan
error ,jika error maka error tersebut yang di lempar ke throw dan catch
stastemen yang di gunakan untuk mengatasi error, yang merupakan variabel
untuk mendeklarasikan fungsi dari exception handling.
Perbedaan yang terdapant padabaris program yang sebelum dan
sesudah ada exception handling :
1. Yang tidak memakai exception handling ketika kita memasukan nilai
suhu dioutputnya maka dia akan menampilkan hasil yang kita
masukan dan perbedaan dengan yang memakai yaitu,
2. Yang memakai exception handling ketika kita memasukan nilai suhu
pada celcius lebih dari 100 maka akan memunculkan nilai yang
masukan error contohnya memasukan angka 101.
2.12. Program Kecepatan
Program kecepatan tidak memakai exception handling :

Gambar 2.55. Coding Program Kecepatan Tidak Memakai Exception


Handling

Gambar 2.56. Output Program Kecepatan Tidak Memakai Exception


Handling

Program ini bertujuan untuk menghitung kecepatan, dimana kita


memasukan jarak dan waktu dioutputnya. Pada hasil output nya user atau
pemakai akan di minta memasukan jumlah yang ingin di hitung pada
program kecepatan ini. Misalkan masukkan jarak yang di tempuh : 200, dan
waktu yang di tempuh : 6, Maka program tersebut akan menampilkan hasil
kecepatan pada jarak dan waktu yaitu 33.

Program kecepatan memakai exception handling :

Gambar 2.57. Coding Program Kecepatan Memakai Exception


Handling (1)
Gambar 2.58. Coding Program Kecepatan Memakai Exception
Handling (2)

Gambar 2.59. Output Program Kecepatan Memakai Exception


Handling

Bagian yang merupakan pendeklarasian dari exception handling


merupakan try, throw dan catch yang pada program initerdapat di baris 18
sampai 27. Lalu pada output yang ada exception handlingnya kalau kita
memasukan angka yang memiliki tanda koma atau titik maka hasil output
nya akan menampilkan hasil error (hasil error karena tidak bisa pakai
koma). Dan akan muncul hasil akhir dari kecepatan dimana koma itu
dihilangkan. Misal kita memasukan waktu yang ditempuh 1,5, maka yang
ada koma tersebut akan muncul exception handling nya 39.
BAB III
KESIMPULAN

Berdasarkan dari pembahasan yang telah dipaparkan sebelumnya, maka


dapat ditarik kesimpulan bahwa Exception merupakan sebuah peristiwa yang
menjalankan alur proses normal pada program. Peristiwa ini biasanya berupa
kesalahan (Error) dari beberapa bentuk. Ini disebabkan program kita berakhir
tidak normal. Exception dilemparkan selama eksekusi dari blok try dapat
ditangkap dan ditangani dalam blok catch.
Berikut ini adalah aspek kunci tentang sintak dari konstruksi try-catch :
1. Notasi blok bersifat perintah.
2. Setiap blok try, terdapat satu atau lebih blok catch.
3. Blok catch harus selalu muncul dalam konjungsi dengan blok try, dan
diatas urutan.
4. Blok try harus diikuti oleh paling sedikit satu blok catch.
5. Setiap blok catch mendefinisikan sebuah penanganan exception. Header
dari blok catch harus membawa satu argumen, dimana exception pada blok
tersebut akan ditangani. Exceptin harus menjadi class pelempar atau satu
dari subclassesnya
DAFTAR PUSTAKA

Arif. 2012. Class dan Operator Overloading.


https://arifbudiarti.wordpress.com/2012/03/27/class-dan-operator-
overloading/. Diakses pada 17 Mei 2019.
Dosen Teknik Informatika. 2019. Modul Praktikum Algoritma Pemrograman II.
Palangaka Raya. Teknik Informatika, Fakultas Teknik, Universitas
Palangka Raya.
Muhammad. 2016. Apa Itu Exception Handling Dalam C++ Berserta Contohnya
Lengkap. https://www.xcodeplus.net/2016/11/apa-itu-exception-
handling-dalam-c.html. Diakses pada 17 Mei 2019.
Rachmat. 2013. C++ – Konsep Overloading Terhadap Fungsi.
http://www.nblognlife.com/2013/12/c-lagi-konsep-overloading-
terhadap.html. Diakses pada 17 Mei 2019.
LAMPIRAN

Gambar 1. Coding Program Hitung Gajih Karyawan Bank Sesudah


Exception Handling
Gambar 2. Coding Program Informasi Aktor Bennedict
Cummberbatch Sesudah Exception Handling
Gambar 3. Coding Program Umur Sesudah Exception Handling

Gambar 4. Coding Program Kubus Sesudah Exception Handling


Gambar 5. Coding Program Konversi Satuan Sesudah Menggunakan
Exception Handling

Gambar 6. Coding Program Persamaan Kuadrat Sesudah Excetion


Handling
.
Gambar 7. Coding Program Kalkulator Sesudah Exception Handling

Gambar 8. Coding Program Konversi Waktu Sesudah Exception


Handling

Anda mungkin juga menyukai