Sabtu, 19 Juli 2025

Pemrograman C++ BAB VI

 CONTOH 1 : ABSTRACTION

#include <iostream>

#include <conio>

#include <string>

#include <cstring>


class manusia

{

   public: virtual void datadiri(string nama, string alamat)=0;

   public: void sifat()

   {

       cout<<"Sifat Manusia itu adalah suka bekerja sama";

   }

};


class pekerjaan : public manusia

{

   public:

   void datadiri(string n,string a)

   {

       nama=n;

       alamat=a;

   }

 void kerja(string tempat);

 void display();


   private:

     string nama,alamat,lokasi;

};


void pekerjaan::kerja(string k)

{

     lokasi=k;

}


void pekerjaan::display()

{

   cout<<"Nama saya :"<<nama<<endl;

   cout<<"Tempat Tinggal :"<<alamat<<endl;

   cout<<"Pekerjaan saya adalah :"<<lokasi<<endl;

}



void main()

{

   pekerjaan lis;

   string nama,alamat,pekerjaan;


      cout<<"Informasi data pribadi"<<endl;

      cout<<endl;

      cout<<"Masukkan nama anda :";

      getline(cin,nama);

      cout<<"Masukkan alamat anda :";

      getline(cin,alamat);

      cout<<"Masukkan pekerjaan anda :";

      cin>>pekerjaan;


      cout<<endl;

      lis.datadiri(nama,alamat);

      lis.kerja(pekerjaan);

      lis.display();

      lis.sifat();

      getch();

}

=========================
CONTOH 2 : CLASS OBJECT
#include <iostream>
#include <conio>
#include <string>
#include <cstring>

class datadiri
{
      public:
      void setnama(string x);
      void setalamat(string x);
      void display();

     private:
     string nama,alamat;
};

void datadiri::setnama(string x)
{
      nama=x;
}

void datadiri::setalamat(string x)
{
      alamat=x;
}

void datadiri::display()
{
   cout<<"Data diri yang anda inputkan :"<<endl;
   cout<<"Nama :"<<nama<<endl;
   cout<<"Alamat :"<<alamat<<endl;
cout<<endl;
}


void main()
{
        datadiri lilis; /// cara pertama
        datadiri *dila=new datadiri();      /// cara kedua
        string x;
        cout<<"Informasi Tentang data Diri"<<endl;

   /// akses obyek dengan cara pertama
   cout<<"Masukkan nama :";
   getline(cin,x);
   lilis.setnama(x);

   cout<<"Masukkan alamat :";
   getline(cin,x);
   lilis.setalamat(x);

   cout<<endl;
   lilis.display();


   ///akses obyek dengan cara kedua
   cout<<"Masukkan nama :";
   getline(cin,x);
   dila->setnama(x);

   cout<<"Masukkan alamat :";
   getline(cin,x);
   dila->setalamat(x);

   cout<<endl;
   dila->display();

   getch();

}
================================
CONTOH 3 : CONSTRUCTOR DESTRUCTOR
#include <iostream>
#include <conio>
#include <string>
#include <cstring>

class mahasiswa
{
      private:
      string nama;
      double IPK;

   public:
      mahasiswa(string n,double ipk);  ///konstruktor;
      ~mahasiswa(); /// destruktor
      void display();
};


void main()
{
   mahasiswa a("Ririn",3.35);

   a.display();
 //   getch();
}


void mahasiswa::display()
{
    cout<<"Nama anda adalah :"<<nama<<endl;
    cout<<"IPK anda adalah :"<<IPK<<endl;
}


mahasiswa::mahasiswa(string n,double ipk)
{
   cout<<"Objek dibuat dan konstruktor dijalankan"<<endl;
   cout<<endl;
   nama=n;
   IPK=ipk;
}

mahasiswa::~mahasiswa()
{
    cout<<"Obyek akan dihancurkan, destruktor dijalankan"<<endl;
    getch();
}
====================================
CONTOH 4 : ENCAPSULATION\
#include <iostream>
#include <conio>
#include <string>
#include <cstring>


class pajak
{
    public:
      void setgaji(int g);
      void display();
  pajak();
  ~pajak();

    private:
      double getpajak();
      int gaji;
      double pajakmu;
};

pajak::pajak()
{
cout<<"begin"<<endl;
}

pajak::~pajak()
{
cout<<"destroy"<<endl;
getch();
}


void pajak::setgaji(int g)
{
     gaji=g;
}

double pajak::getpajak()
{
     double total;

     if(gaji>2000000)
     {
          total=gaji*0.15;
     }else
     {
          total=50000;
     }

   return total;
}

void pajak::display()
{
       pajakmu=getpajak();
       cout<<"Pajak yang anda bayar adalah "<<pajakmu<<endl;
}


void main()
{
   pajak dani;

   int gaji;
   cout<<"Program Untuk menghitung nilai pajak"<<endl;
   cout<<endl;

   cout<<"Masukkan jumlah gaji yang anda terima :";
   cin>>gaji;

   dani.setgaji(gaji);
   dani.display();


}
===============================================================
CONTOH 5 : INHERITANCE
#include <iostream>
#include <conio>
#include <string>

class mahlukhidup
{
       protected:
       string nama,sifat;

   public:
    void setmahluk(string n, string s)
   {
      nama=n;
      sifat=s;
   }
};


class hewan: public mahlukhidup
{
      public:
      void hewanku()
      {
cout<<"Nama hewan   :"<<nama<<endl;
cout<<"merupakan hewan :"<<sifat<<endl;
      }
};

class tumbuhan: public mahlukhidup
{
     public:
        void tumbuhanku()
      {
cout<<"Nama Tumbuhan :"<<nama<<endl;
cout<<"merupakan Tumbuhan :"<<sifat<<endl;
      }
};

void main()
{
    cout<<"Contoh Inheritance"<<endl;
    cout<<endl;
tumbuhan a;
              a.setmahluk("Mangga","Berbiji ganda");
              a.tumbuhanku();

    cout<<endl;
         hewan b;
         b.setmahluk("Singa","Karnivora");
         b.hewanku();

         getch();
}
===============================================
CONTOH 6 : POLIMORFISME
#include <iostream>
#include <conio>
#include <string>
#include <cstring>

class persegi
{
   public:
   virtual int proses(int s)
   {
       return s*s;
   }

   void luas(double s)
   {
      cout<<"Luasnya adalah :"<<s<<endl;
   }
};

class balok: public persegi
{
   public:
   virtual int proses(int s)
   {
       int luas=6*s*s;
       return luas;
   }

};

void main()
{
      cout<<"Contoh Program Polimorfisme "<<endl;
      cout<<endl;

      balok a;
      int sisi;
      double lu;

      cout<<"Masukkan panjang sisi :";
      cin>>sisi;

      lu=a.proses(sisi);
      a.luas(lu);
      getch();
}
===============================

Tidak ada komentar: