Minggu, 27 Juli 2025

C++ SAMPLE CODE 3

 #include <iostream>

using namespace std;


class Rekt{

   friend int Luas(const Rekt &a); //fungsi friend Luas()


   int x,y; // private secara default


   public:

      Rekt(int L, int W){x = L, y = W;} //fungsi konstruktor

}; //akhir dari kelas Rekt 


int Luas (const Rekt &b) //definisi dari fungsi friend

{

   return b.x*b.y; //operator resolusi skop tidak diperlukan

}; 


int main()

{

   Rekt R1(5,6), R2(3,4) ; //deklarasi atas dua objek R1 dan R2


   cout<<"Luas Dari R1 = "<<Luas(R1)<<"\n";

   cout<<"Luas dari R2 = "<<Luas(R2)<<"\n";


   return 0 ;

}

================================

#include <iostream>

using namespace std;


class Rekt{

   friend int Luas(const Rekt &a); //sebuah fungsi friend

   int x,y; //private secara default


   public:

      Rekt(int L, int W){x = L, y = W;} //fungsi konstruktor

      friend double Biaya(const Rekt &a, double);

      //fungsi friend kedua

}; //akhir dari kelas Rekt


int Luas(const Rekt &b) //definisi dari fungsi Luas()

{

   return b.x*b.y;

}


double Biaya(const Rekt &b, double s) //definisi dari fungs Biaya()

{

   return b.x*b.y * s;

}


int main()

   double A = 4.5, B = 5.2; // A dan B untuk data untuk fungsi Biaya()

   Rekt R1(10,5), R2(20,5) ; // R1, R2 adalah dua objek


   cout<<"Luas dari R1 = "<<Luas(R1)<<"\n";

   cout<<"Luas dari R2 = "<<Luas(R2)<<"\n";


   cout<<"Biaya = "<<Biaya(R1,A)<<"\n";

   cout<<"Biaya = "<<Biaya(R2,B)<<"\n";


   return 0 ;

}

=====================================

#include <iostream>

using namespace std;


class Persegi; //pra-deklearasi dari kelas

class Rekt { //kelas Rekt

   int x,y; //private secara default


   public:

   Rekt(int A, int B) {x = A, y = B;}


   int Luas()

   {return x*y;}


   friend void Tampil(Rekt R, Persegi S); //fungsi friend untuk Rekt

}; //akhir dari kelas Rekt


class Persegi { //kelas Persegi

   int sisi; //private secara default


   public:

      Persegi (int C){sisi = C;}


      int Luas ()

  {return sisi*sisi;}


      friend void Tampil(Rekt R, Persegi S); //fungsi friend untuk Persegi

}; //akhir dari kelas Persegi


void Tampil(Rekt R, Persegi S) //definisi dari fungsi friend 

{

   cout<<"Luas dari Rektangular = "<<R.Luas()<<endl;

   cout<<"Luas dari Persegi = "<<S.Luas()<< endl;

}


int main()

{

   Rekt R1(10, 5);

   Persegi S1(10);


   Tampil(R1, S1);


   return 0;

}

======================================

#include <iostream>

using namespace std;


class Kubik {

   friend class Lukis; //deklarasi dari kelas friend 


   public:

      void sisi2(int , int, int);

      int Luas();

      int volume();

      int x, y, z;

}; //akhir dari kelas Kubik


void Kubik::sisi2(int L, int W, int H)

{x = L, y = W,z = H; } //pengaturan sisi-sisi dari Kubik


int Kubik::Luas() //definisi dari Luas()

{return 2*(x*y +y*z +z*x);}


int Kubik::volume() //definisi dari volume()

{return x*y*z ;}


class Lukis{ //deklarasi dari kelas friend Lukis

   private:

      int R;


   public:

      Lukis() {R = 1;} //konstruktor default

      Lukis(int S) {R = S;} //konstruktor parametris


  Kubik C; // C adalah objek dari kelas Kubik

      int Luas (){return C.Luas ();}

      int biaya(int R , Kubik C )

  {return R* C.Luas ();}

}; //akhir dari kelas Lukis


int main()

{

   Kubik C1 ; //C1 adalah objek dari kelas Kubik

   C1.sisi2 (5,6,5 );


   Lukis P1 ; //P1 adalah objek dari kelas Lukis

   int k = 4;


   cout<<"Volume dari C1 = "<<C1.volume()<<"\n";

   cout<<"Luas permukaan dari C1 = "<<C1.Luas()<<"\n";


   cout<<"Biaya pelukisan P1 = "<<P1.biaya(k, C1)<<"\n";


   return 0 ;

}

=====================================

#include <iostream>

using namespace std;


class List

{

   private:

      int x,y; //x = jumlah item, y = harga per tem


   public:

      void Setdata(int a, int b) //fungsi publik untuk mengakses x, y

  {

cout<<"Masukkan jumlah item: "; cin>>a;

         cout<<"Masukkan harga per item: "; cin>>b;

         x = a, y = b; 

  }


      void Tampil1()

  {cout<<"Jumlah item = "<<x<<endl;}


      void Tampil2()

  {cout<<"Harga per item = "<<y<<endl;}


      void Tampil3()

  {cout<<"Biaya dari "<<x<<" buah item dengan harga "<<y<<" per item = "<<x*y<<endl;}

}; //akhir dari kelas List


void main()

{

   List L1;

   List *ptr; //pointer ke List 

   ptr = &(List) L1; //menugaskan alamat dari objek kelas


   int i,j;

   (*ptr).Setdata(i,j); //nilai-nilai ditugaskan oleh user

   

   ptr -> Tampil1(); // (*ptr) dan ptr-> ekivalen

   ptr -> Tampil2();

   (*ptr).Tampil3();

}

====================================

#include <iostream>

using namespace std;


class List{

   private:

      int x, y, z;


   public:

      void Tampil1()

  {cout<<"Selamat datang ke pasar ini"<<endl;}


      void set_harga(int a, int b, int c)

  {x = a, y = b, z = c;}


      void Tampil2()

  { 

         cout<<"Harga dari item1 = "<<x<<endl;

         cout<<"Harga dari item2 = "<<y<<endl;

         cout<<"Harga dari item3 = "<<z<<endl; 

  }

}; //akhir dari kelas List


void main()

   List L1;

   List *ptr; //pointer ke List

   ptr = &(List) L1; //penugasan alamat dari L1 kepada pointer


   ptr -> set_harga(6, 8, 10); //fungsi yang berelasi dengan L1

   ptr -> Tampil1();


   cout<<"Daftar Harga 1"<<endl;

   ptr ->Tampil2();


   List L2; //L2 adalah objek kedua dari kelas

   *ptr++; //penginkremenan pointer ke L1 menghasilkan pointer ke L2.


   ptr -> set_harga(32,27,38); //fungsi yang berelasi dengan L2.

   ptr -> Tampil1();


   cout<<"Daftar Harga 2"<<endl;

   ptr -> Tampil2();

}

===============================================

#include <iostream>

using namespace std;


class List{

   private:

      int x, y, z;


   public:

      List (int a, int b, int c) {x = a, y = b, z = c;} //konstruktor


      void Tampil()

  {

         cout<<"Harga dari item 1 = "<<x<<endl;

         cout<<"Harga dari item 2 = "<<y<<endl;

         cout<<"Harga dari item 3 = "<<z<<endl; 

  }

}; //akhir dari kelas List


void main()

   int n = 0;


   List L1 (12, 15, 27);

   cout<<"List "<<++n<<endl;

   List *ptr = &L1; //(*ptr) dan ptr-> ekivalen

   ptr -> Tampil();


   cout<<"\nList"<< ++n <<"\n";

   List L2(30, 54, 60);

   ptr = & L2 ;

   (*ptr).Tampil();

}

==========================================================

#include <iostream>

using namespace std;


class Rekt {

   int x, y; //private secara default


   public:

      void set_sisi(int L, int W){x = L, y = W;}

      int Luas() //definisi dari fungsi Luas()

  {

         return x*y;

  }

}; //akhir dari kelas Rekt


int main()

   Rekt R1, R2, R3;

   void (Rekt:: *ptrSet)(int,int) = & Rekt :: set_sisi;


   (R1.*ptrSet) (20,15);

   cout<<"Luas dari R1 = "<<R1.Luas()<<endl;


   (R2.*ptrSet) (20,30); //objek R2 memanggil fungsi dengan pointer

   cout<<"Luas dari R2 = "<<R2.Luas()<<endl;


   Rekt *ptr3 = &R3; // declaring pointer to object R3 of class


  (ptr3 ->*ptrSet)(16,10); //memanggil fungsi dengan pointer yang menunjuk ke objek

   cout<<"Luas dari R3 = "<<R3.Luas()<<endl;


   return 0 ;

}

==================================================

#include <iostream>

using namespace std;


class Rekt{

   friend int Luas(Rekt a); //fungsi friend 

   int x, y; //anggota-anggot data private secara default


   public:

      friend double biaya(Rekt a, double); //fungsi friend lain

      Rekt (int L,int W){ x = L,y = W;} //konstruktor

}; //akhir dari kelas Rekt


int Luas (Rekt b) //definisi dari fungsi Luas() menggunakan pointer

   int Rekt :: *ptrx = &Rekt :: x; //ptrx adalah pointer untuk x

   int Rekt :: *ptry = &Rekt :: y; //ptry adalah pointer untuk y

   Rekt *ptrb = &b; //ptrb adalah pointer yang menunjuk ke b


   return b.*ptrx * b.*ptry;

};


double biaya(Rekt b , double m)

{

   return b. x* b. y * m;

}


int main()

   double n = 4.5;


   Rekt R1(5,6), R2(3,4);


   cout<<"Luas of R1 = "<<Luas(Rekt(R1))<<"\n";

   cout<<"Luas of R2 = "<<Luas(Rekt(R2))<<"\n";

   cout<<"biaya for R1 = "<<biaya(Rekt(R1),n)<<"\n";


   return 0 ;

}

==================================================

#include <iostream>

using namespace std;


class List{

   private:

      int x, y, z;


   public:

      int Alfa;

      List (int a, int b, int c) {x = a, y = b, z = c;} //konstruktor

}; //akhir dari kelas List


void main()

{

   List L1(10, 20, 30);

   int *pAlfa; //pointer ke suatu integer


   L1. Alfa = 50;

   pAlfa = & L1.Alfa; //penugasan nilai kepada pointer


   cout<<"Alfa = "<<*pAlfa<< endl;

   cout<<"Alamat dari Alfa = "<<pAlfa<< endl;


   pAlfa--; //mendekremen pointer untuk mendapatkan z

   cout<<"Data z dari L1 = "<<*pAlfa <<endl;

   cout<<"Alamat dari z = "<<pAlfa<<endl;


   pAlfa--; //mendekremen pointer untuk mendapatkan y

   cout<<"Data y dari L1 = "<<*pAlfa <<endl;

   cout<<"Alamat dari y = "<<pAlfa<<endl;

   

   pAlfa--; //mendekremen pointer untuk mendapatkan x

   cout<<"Data x dari L1 = "<<*pAlfa <<endl;

   cout<<"Alamat dari x = "<<pAlfa<<endl;

}

==========================================

#include <iostream>

using namespace std;


class List{

   private:

      int x, y, z;


   public:

      int s;

      List(int a, int b, int c) {x = a, y = b, z = c;} //konstruktor

}; //akhir dari kelas List


void main()

{

   List L1( 10, 20 , 30); ;

   L1.s = 40;

   int *ptrL1 ;


   ptrL1 = (int*)& L1 ;

   cout<<"Nilai dari x = "<<*ptrL1<<endl;

   cout<<"Alamat dari x = "<<ptrL1<<endl;


   ptrL1++;

   cout<<"Data y dari L1 = "<<*ptrL1<<endl;

   cout<<"Alamat dari y = "<<ptrL1<<endl;


   ptrL1++;

   cout<<"Data z dari L1 = "<<*ptrL1<<endl;

   cout<<"Alamat dari z = "<<ptrL1<<endl;


   ptrL1 ++;

   cout<<"Data s dari L1 = "<<*ptrL1<<endl;

   cout<<"Alamat dari s = "<<ptrL1<<endl;

}

===========================================

#include <iostream>

using namespace std;


class Kubik {

   public:

      Kubik(int L, int W, int H){this ->x=L, (*this).y=W, this->z=H;}

      //fungsi di atas adalah konstruktor


      int luas_permukaan();

      int volume();


      void Tampil1() // Displays private data of object.

  {

         cout<<"x = "<<this->x<<", y = "<<this->y<<", z = "

             <<(*this).z <<endl;

  }


      void Tampil2()

  {cout << this<<endl;} //menghasilkan nilai dari this


   private:

      int x, y, z; //data private 

}; //akhir dari kelas Kubik


int Kubik::luas_permukaan() //definisi dari luas_permukaan()

{

   return 2*(x*y +y*z +z*x);

}


int Kubik::volume() //definisi dari volume()

{

   return x*y*z;

}


int main()

   Kubik C1(5,6,4), C2(7,8,5) ; //C1 dan C2 adalah objek dari Kubik


   C1.Tampil1();

   C1.Tampil2(); //nilai dari pointer this untuk C1


   cout<<&C1<<endl; //alamat dari C1

   C2.Tampil1();

   C2.Tampil2(); //nilai dari pointer this untuk C2

   cout<<&C2<<endl; //alamat dari C2


   cout<<"Volume dari Kubik C1 = "<<C1.volume()<<"\n";

   cout<<"Volume dari Kubik C2 = "<<C2.volume()<<"\n";


   cout<<"Luas permukaan dari C1 = "<<C1.luas_permukaan()<<"\n";

   cout<<"Luas permukaan dari C2 = "<<C2.luas_permukaan()<<"\n";


   return 0 ;

}

==============================================

#include <iostream>

using namespace std;


class Kubik{

   public:

      static int x; //x dideklarasikan static

      Kubik( int W ): y(W) {} //konstruktor


      static void Tampil() //fungsi statis

  {

         cout<<"Tinggi dari semua objek adalah = "<<z<<endl;

  }

      int luas_permukaan();

      int volume();


   private:

      int y;

      static int z; //variabel statis

}; //akhir dari kelas Kubik


int Kubik :: x = 10;

int Kubik :: z = 5;


int Kubik::luas_permukaan()

{

   return 2*(x*y +y*z +z*x);

}


int Kubik::volume()

{

   return x*y*z;

}


int main()

{

   Kubik C1(6), C2(3);


   cout<<"C1.x = "<<C1.x<<", C2.x = "<<C2.x <<endl;

   Kubik::Tampil(); //pemanggilan fungsi tanpa objek


   cout<<"Volume dari Kubik C1 " <<C1.volume()<<"\n";

   cout<<"Volume dari Kubik C2 = "<<C2.volume()<<"\n";


   cout<<"Luas permukaan dari C1 = "<<C1.luas_permukaan()<<"\n";

   cout<<"Luas permukaan dari C2 = "<<C2.luas_permukaan()<<"\n";


   return 0 ;

}

=========================================

#include <iostream>

using namespace std;


class Kubik {

   public:

      Kubik(int H):z(H) {} //konstruktor

      static int luas_dasar(){ return x*y;} //fungsi statis

      int luas_permukaan();

      int volume( );


   private:

      static int x , y; //x dan y dideklarasikan static

      int z ;

}; //akhir dari kelas Kubik


int Kubik :: x = 5; //anggota data statis

int Kubik :: y =8 ; //anggota data statis


int Kubik::luas_permukaan() //definisi dari luas_permukaan()

{

   return 2*(x*y +y*z +z*x);

}


int Kubik::volume() //definisi dari volume()

{

   return x*y*z;

}


int main()

{

   Kubik C1(5), C2(8) ;


   cout<<"Luas dasar dari semua objek = "<<Kubik::luas_dasar()<<endl;

   

   cout<<"Volume dari Kubik C1 " <<C1.volume()<<"\n";

   cout<<"Volume dari Kubik C2 = "<<C2.volume()<<"\n";


   cout<<"Luas permukaan dari C1 = "<<C1.luas_permukaan()<<"\n";

   cout<<"Luas permukaan dari C2 = "<<C2.luas_permukaan()<<"\n";


   return 0 ;

}

==============================================

#include <iostream>

using namespace std;


class List{

   private:

      double x ; // x = berat dalam kg, y = harga per kg

      double y;


   public:

      void set_data(double a, double b )

  {x = a; y = b;}


      void Tampil()

  {

         cout<<"Berat = "; cin>>x;

         cout<<"Harga = "; cin>>y;

         cout<<"Harga dari "<<x<<" kg dengan biaya "<<y<<" per kg = "<<x*y<<endl;

  }

};


void main()

{

   double i,j;


   List *ptr= new List ; //menggunakan operator new

   (*ptr).set_data(i,j);


   ptr -> Tampil(); //(*ptr) dan ptr-> ekivalen


   delete ptr;

}

=============================================

#include <iostream>

using namespace std;


class List {

   private:

      int x,y; //x = jumlah item, y = harga per item


   public:

      void set_data(int a, int b)

  {

         x = a;

         y = b;

  }


      void Tampil()

  {

         cout<<"Jumlah item = "; cin>>x;

         cout<<"Harga tiap item = "; cin>>y;

         cout<<"Biaya dari "<<x<<" buah item dengan harga "<<y<<" per item = "<<x*y<<endl;

  }

}; //akhir dari kelas List


void main()

{

   List *ptr= new List[3]; //pointer ke kelas List


   for (int k=0; k<3; k++)

   {

      cout<<"Untuk nomor item " <<k+1<<endl;

      int i=0,j=0; //user memasukkan data

      (*ptr).set_data(i,j);

      ptr -> Tampil();

   } // (*ptr) dan ptr-> ekivalen


   delete[] ptr;

}

======================================

# include <iostream>

using namespace std;


class Matriks

{

   private:

      int m, n;


   public:

      int** Ptr;

      Matriks (int B , int K)

  { 

         m = B, n = K ; // B untuk baris dan K untuk kolom

         Ptr = new int *[m];

         for(int i =0; i<m; i++)

            Ptr[i] = new int [n];

  }


      // Nil_E untuk nilai elemen

      void Baca_Elemen()

  { 

         cout<<"Masukkan elemen-elemen dari matriks "<<m<<"x"<<n<<": ";

         int Nil_E =0;


         for(int b =0; b< m; b++)

            for (int k =0; k<n;k++)

               cin>>Nil_E;

               Ptr[b][k] = Nil_E; 

  }


      void Tulis_Elemen()

  {

         for(int s=0; s<m; s++)

{

            for(int p=0; p<n; p++)

               cout<<Ptr[s][p]<<"\t ";

            cout<<endl;

}

  }

};


int main()

{

   Matriks A(3,3), B(3,3), K(3, 3), D(3,3), E(3,3);


   cout<<"Masukkan elemen-elemen dari matriks A dan B.\n";

   A.Baca_Elemen();

   B.Baca_Elemen();


   cout <<"Untuk matriks A, Anda memasukkan elemen-elemen berikut: \n";

   A.Tulis_Elemen( );


   cout <<"Untuk matriks B, Anda memasukkan elemen-elemen berikut: \n";

   B.Tulis_Elemen( );


   cout<<"A.Ptr[1][0] = " << A.Ptr[1][0]<< endl;

   for (int k = 0; k<3; k++ )

      for ( int p =0; p<3; p++)

  {

         K.Ptr[k][p] = A.Ptr[k][p] + B.Ptr[k][p]; //penjumlahan matriks

         D.Ptr[k][p] = A.Ptr[k][p] - B.Ptr[k][p]; //pengurangan matriks

  } 


  for(int J = 0; J<3; J++) //perkalian matriks

         for (int K=0; K<3; K++)

            E.Ptr[J][K] = 0;

            for (int S =0; S<3; S++)

               E.Ptr[J][K] += A.Ptr[J][S] * B.Ptr[S][K];

}


   //Statemen-statemen keluaran

   cout<<"Matriks K = Matriks A + Matriks B: "<<endl;

   cout<<"Elemen-elemen dari matriks K adalah berikut: "<<endl;

   K.Tulis_Elemen();


   cout<<"untuk matriks D = Matriks A - Matriks B :"<<endl;

   cout<<"Elemen-elemen dari matriks D adalah berikut: "<<endl;

   D.Tulis_Elemen();


   cout<<"untuk matriks E = Matriks A * Matriks B :"<<endl;

   cout<<"Elemen-elemen dari matriks E adalah berikut: "<<endl;

   E.Tulis_Elemen();


   return 0;

}


Tidak ada komentar: