Pengertian dasar dari exception
handling adalah penanganan kesalahan ketika program dijalankan. Eksepsi
adalah keadaan tidak normal yang muncul pada suatu bagian program pada saat
program dijalankan. Penanganan eksepsi pada bahasa C membawa pengelolaan
kesalahan program saat dijalankan kedalam orientasi object. Eksepsi adalah
object yang menjelaskan suatu keadaan eksepsi yang muncul pada suatu bagian
program.
Seringkali
pengguna melakukan kesalahan penginputan ketika menjalankan program. Bisa jadi
menginputkan type data yang tidak
sesuai dengan program, seperti contoh type
data int diberikan nilai string,
atau menginputkan nilai yang melebihi batasnya seperti contoh type data byte diberikan nilai lebih
dari 255. Maka perlu diberikan exception
handling.
Saat suatu
keadaan eksepsi muncul, suatu object
exception dibuat dan dimasukkan kedalam method
yang menyebabkan eksepsi. Method
tersebut dapat dipilih untuk menangani eksepsi berdasarkan tipe tertentu.
Method ini juga menjaga agar tidak keluar terlalu dini melalui suatu eksepsi,
dan memiliki suatu blok program yang dijalankan tepat sebelum suatu eksepsi
menyebabkan metodenya kembali ke pemanggil.
Penanganan eksepsi pada bahasa C
diatur dengan lima kata kunci yaitu : try,
catch, throw, throws dan finally. Pada dasarnya try digunakan untuk mengeksekusi suatu bagian program, dan jika
muncul kesalahan, sistem akan melakukan throw
suatu eksepsi yang dapat di catch berdasarkan tipe eksekusinya, atau dapat
diberikan finally dengan penanganan
default.
Try
Keyword ini
biasanya digunakan dalam suatu block program. keyword ini digunakan untuk mencoba
menjalankan block program kemudian mengenai dimana munculnya
kesalahan yang ingin diproses. Keyword ini juga harus dipasangkan dengan keyword catch atau keyword finally yang akan dibahas pada point kedua dan ketiga.
Catch
Jika anda sudah melihat contoh try maka secara tidak langsung anda sudah
memahami kegunaan dari keyword ini. Dalam java, keyword catch harus dipasangkan dengan try. Kegunaan keyword ini
adalah menangkap kesalahan atau bug yang terjadi dalam block try.Setelah menangkap
kesalahan yang terjadi maka developer dapat melakukan hal apapun pada block catch sesuai keinginan developer.
Di_C#
class Program
{
public static void Header()
{
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine(" TUGAS VI\n ");
Console.ForegroundColor = ConsoleColor.Red;
Console.WriteLine(" Exception Handling ");
Console.WriteLine(" ------------------------------------------------ ");
Console.ForegroundColor = ConsoleColor.Black;
Console.WriteLine(" | Abdul Kohar | 1110100535 | \n\n");
}
private static int Perkalian()
{
int hasil_Perkalian;
Console.WriteLine("Soal -> 10 X 12 ");
Console.Write("Input Hasil Perkalian = ");
hasil_Perkalian = Convert.ToInt32(Console.ReadLine());
return hasil_Perkalian;
}
private static int Pembagian()
{
int hasil_Pembagian;
Console.WriteLine("Soal -> 20 : 5 ");
Console.Write("Input Hasil Pembagian = ");
hasil_Pembagian = Convert.ToInt32(Console.ReadLine());
return hasil_Pembagian;
}
private static int Penjumlahan()
{
int hasil_Penjumlahan;
Console.WriteLine("Soal -> 250 + 200 ");
Console.Write("Input Hasil Penjumlahan = ");
hasil_Penjumlahan = Convert.ToInt32(Console.ReadLine());
return hasil_Penjumlahan;
}
private static int Pengurangan()
{
int hasil_Pengurangan;
Console.WriteLine("Soal -> 1000 - 450 ");
Console.Write("Input Hasil Pengurangan = ");
hasil_Pengurangan = Convert.ToInt32(Console.ReadLine());
return hasil_Pengurangan;
}
private static void Operasi_Perkalian(int perkalian)
{
bool report_1 = true;
while (report_1 == true)
{
try
{
while(perkalian!=120)
{
Console.WriteLine();
Console.WriteLine("Hasil Perkalian Salah = {0}",perkalian);
Console.WriteLine();
perkalian = Perkalian();
}
report_1 = false;
}
catch (Exception)
{
Console.WriteLine();
Console.WriteLine("Hasil Perkalian Salah = {0}",perkalian);
Console.WriteLine();
}
}
}
private static void Operasi_Pembagian(int pembagian)
{
bool report_2 = true;
while (report_2 == true)
{
try
{
while (pembagian!=4)
{
Console.WriteLine();
Console.WriteLine("Hasil Pembagian Salah = {0}",pembagian);
Console.WriteLine();
pembagian = Pembagian();
}
report_2 = false;
}
catch (Exception)
{
Console.WriteLine();
Console.WriteLine("Hasil Pembagian Salah = {0}",pembagian);
Console.WriteLine();
}
}
}
private static void Operasi_Penjumlahan(int penjumlahan)
{
bool report_3 = true;
while (report_3 == true)
{
try
{
while (penjumlahan!=450)
{
Console.WriteLine();
Console.WriteLine("Hasil Penjumlahan Salah = {0}",penjumlahan);
Console.WriteLine();
penjumlahan = Penjumlahan();
}
report_3 = false;
}
catch (Exception)
{
Console.WriteLine();
Console.WriteLine("Hasil Penjumlahan Salah = {0}",penjumlahan);
Console.WriteLine();
}
}
}
private static void Operasi_Pengurangan(int pengurangan)
{
bool report_4 = true;
while (report_4 == true)
{
try
{
while (pengurangan!=550)
{
Console.WriteLine();
Console.WriteLine("Hasil Pengurangan Salah = {0}",pengurangan);
Console.WriteLine();
pengurangan = Pengurangan();
}
report_4 = false;
}
catch (Exception)
{
Console.WriteLine();
Console.WriteLine("Hasil Pengurangan Salah = {0}",pengurangan);
Console.WriteLine();
}
}
}
public static void Main(string[] args)
{
Header();
Console.ForegroundColor = ConsoleColor.Blue;
Console.WriteLine(" Operasi Matematika ");
Console.WriteLine(" ------------------------------------------ ");
Console.WriteLine(" 1. Perkalian ");
Console.WriteLine(" 2. Pembagian ");
Console.WriteLine(" 3. Penjumlahan ");
Console.WriteLine(" 4. Pengurangan ");
Console.WriteLine();
int pil;
Console.Write("Pilihan = ");
pil=Convert.ToInt32(Console.ReadLine());
if (pil==1)
{
int perkalian;
perkalian = Perkalian();
Operasi_Perkalian(perkalian);
Console.WriteLine("Hasil Perkalian Benar");
}
else if (pil==2)
{
int pembagian;
pembagian = Pembagian();
Operasi_Pembagian(pembagian);
Console.WriteLine("Hasil Pembagian Benar");
}
else if (pil==3)
{
int penjumlahan;
penjumlahan = Penjumlahan();
Operasi_Penjumlahan(penjumlahan);
Console.WriteLine("Hasil penjumlahan Benar");
}
else if (pil==4)
{
int pengurangan;
pengurangan = Pengurangan();
Operasi_Pengurangan(pengurangan);
Console.WriteLine("Hasil Pengurangan Benar");
}
else
{
Console.WriteLine("Pilihan Not Founds");
}
Console.WriteLine();
Console.Write("Press any key to continue . . . ");
Console.ReadKey(true);
}
}
}
Di_Java
#include#include using namespace std; class Soal_Matematika { public : static int Perkalian() { int hasil_Perkalian; cout<<"Soal -> 23 X 12 "; cout< 48 : 12 "; cout< 123 + 712 "; cout< 1789 - 376 "; cout<

0 komentar:
Posting Komentar