Sabtu, 16 Februari 2013

Exception handling


Praktikum 1

#include <iostream>
using namespace std;
int main() {
  double X;
  try {
     cout<<"Masukkan sebuah bilangan bulat positif : ";
     cin>>X;

     if (X <= 0) {
       throw X;
     } else {
       cout<<"Nilai yang dimasukkan adalah : "<<X;
     }
  }


  catch (double E) {
     cout<<"Program telah menangkap eksepsi yang bernilai : ";
     cout<<E;
  }    

  return 0;
}



Praktikum 2

#include <iostream>

using namespace std;

void BAGI(double X, double Y) {
  double HASIL;
  if (Y != 0) {
     HASIL = X/Y;
     cout<<"Hasil bagi = "<<HASIL;
  } else {
     throw Y;
  }
}


int main() {

 
  double a, b;

  try {
     cout<<"Masukkan bilangan yang akan dibagi                 : ";
     cin>>a;
     cout<<"Masukkan bilangan pembagi                                                 : ";
     cin>>b;
     cout<<endl;

     BAGI(a, b);    
  }
  catch(double E) {
     cout<<"Kesalahan : Terjadi pembagian dengan "<<E;
  }

  return 0;
}
Praktikum 3

#include <iostream>

using namespace std;

template <class T> void LEMPAR( T X) {
  try {
    if (X) {
         throw X;
    }
  }
  catch (int E1) {
    cout<<"Menangkap eksepsi dengan tipe data int, yaitu : ";
    cout<<E1<<endl;
  }
  catch (double E2) {
    cout<<"Menangkap eksepsi dengan tipe data double, yaitu : ";
    cout<<E2<<endl;
  }
  catch (char E3) {
    cout<<"Menangkap eksepsi dengan tipe data char, yaitu : ";
    cout<<E3<<endl;
  }
  catch (char* E4) {
    cout<<"Menangkap eksepsi dengan tipe data char*, yaitu : ";
    cout<<E4<<endl;
  }
}

// Fungsi utama
int main() {

  LEMPAR(10);
  LEMPAR(25.03);
  LEMPAR('C');
  LEMPAR("C++");

  return 0;
}
Praktikum 4

#include <iostream>

using namespace std;

void BAGI(double X, double Y) {
  double HASIL;
  if (Y != 0) {
     HASIL = X/Y;
     cout<<"Hasil bagi = "<<HASIL;
  } else {
     throw Y;
  }
}

int main() {

    double a, b;

  try {
     cout<<"Masukkan bilangan yang akan dibagi                 : ";
     cin>>a;
     cout<<"Masukkan bilangan pembagi                                                 : ";
     cin>>b;
     cout<<endl;

     BAGI(a, b);       }
  catch(double E) {
     cout<<"Kesalahan : Terjadi pembagian dengan "<<E;
  }

  return 0;
}
Praktikum 5

#include <iostream>

using namespace std;

template <class T> void LEMPAR(T X) {
  try {
    if (X) {
       throw X;
     }
  }
  catch (...) {
     cout<<"Program menemukan sebuah kesalahan"<<endl;
  }
}

// Fungsi utama
int main() {

  LEMPAR(200);
  LEMPAR(13.3);
  LEMPAR('C');
  LEMPAR("Mengungkap Rahasia C++");
  return 0;
}

0 komentar:

Posting Komentar

© Bella Yulianita 2012 | Blogger Template by Enny Law - Ngetik Dot Com - Nulis