Rabu, 30 Juli 2025

C++ SAMPLE CODE 12

 #include<iostream>

#include<vector>

# include <iterator>

using namespace std;


vector<int> V; //Deklarasi dari sebuah vektor dengan elemen-elemen int


int main()

{

   cout<<"Masukkan 5 integer: "<<endl;

   istream_iterator <int> readit(cin);  //input iterator


   /*Berikut adalah fungsi push_back() yang dipakai untuk menambahkan elemen-elemen

     di belakang sebuah vektor V.*/

   V.push_back (*readit++);

   V.push_back (*(readit++));

   V.push_back (*(readit++));

   V.push_back (*(readit++));

   V.push_back (*(readit));


   cout<<"Elemen-elemen dari V adalah: ";

   vector<int>:: iterator iter = V.begin();

   /*vector adalah nama kelas, iterator adalah katakunci. iter adalah nama iterator.

     Fungsi begin() menghasilkan iterator yang menunjuk ke elemen pertama dari V.

Kelas vector mendukung keberadaan iterator random (acak).*/

   

   while(iter != V.end())

   //end() menghasilkan iterator yang menunjuk ke tepat setelah elemen terakhir dari vektor

      cout<<*iter++ <<" "; //menampilkan nilai-nilai elemen dari vektor


   return 0;

}

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

#include<iostream>

#include<vector>

# include <iterator>

using namespace std;


vector<int> V;  //Deklarasi dari sebuah vektor dengan elemen-elemen int


int main()

{

   cout<<"Masukkan 5 integer: "<<endl;

   int hitung =0;

   while (hitung <=4)

   {

      istream_iterator <int> readit(cin); //input iterator

      V.push_back (*readit);

      ++hitung;

   }


   //Vektor dikonstruksi dengan menempatkan elemen-elemen di belakang vektor.

   cout<<"\nElemen-elemen dari V adalah: ";

   vector<int>:: iterator iter = V.begin(); // iterator didefinisikan

   //iter adalah nama iterator, yang akan dipakai untuk menjelajah vektor


   while(iter != V.end())

   {

      cout<< *iter <<" ";

      iter++;

   }


   return 0;

}

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

#include<iostream>

#include<deque>

#include <iterator>

using namespace std;


deque<int> Dek; //deklarasi deque dengan elemene-elemen int


int main()

{

   cout<<"Masukkan 4 buah integer: "<<endl;


   int hitung =0;

   while (hitung < 4)

   { 

      istream_iterator <int> readit(cin);

      Dek.push_back (*readit);

      ++hitung; 

   }


   int k=0;

   cout<<"\nElemen-elemen dari Dek adalah: ";

   while (k <4)

   {

      ostream_iterator <int> writeit(cout);

      * writeit= * (Dek.begin()+k );

      cout<<" ";

      k++;

   }


   return 0;

}

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

#include<iostream>

#include<list>

using namespace std;


list<char> Lc ; //deklarasi dari sebuah list dengan nama Lc dan bertipe char

list<int> Li (7,60); //deklarasi dari sebuah list dengan Li

//list ini memiliki 7 elemen int dengan tiap nilai 60


int main()

{

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

      Lc.push_back(65+i); //Menambahkan elemen-elemen di belakang list Lc


   cout<<"Elemen pertama dari Lc adalah "<<Lc.front()<<" dan elemen akhirnya adalah "

       <<Lc.back()<<endl; //menampilkan elemen pertama dan elemen akhir


   list<double>Ld(3,2.5); //List Ld mempunyai tiga elemen masing-masing dengan nilai 2.5


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

   {

      Ld.push_back( 5.5); //Menambahkan 3 elemen, dengan nilai 10.5, di belakang list

      Ld.push_front( 10.5);

   } //Menambahkan 3 elemen, dengan nilai 10.5, di depan list


   cout<<"Lc = ";

   list<double>::iterator itrd; //iterator untuk list double

   list<int>:: iterator itri; //deklarasi iterator untuk list int

   list <char>:: iterator itrc; //iterator untuk list char


   for(itrc= Lc.begin(); itrc!=Lc.end(); itrc++)

      cout << *itrc <<" "; //menampilkan elemen-elemen dari list Lc.


   cout<<"\nLi = ";

   for(itri= Li.begin(); itri!=Li.end(); itri++)

      cout<<*itri<<" "; // menampilkan elemen-elemen dari list Li.


   cout<<"\n Ld = ";

   for(itrd= Ld.begin(); itrd!=Ld.end(); itrd++)

      cout<<*itrd<<" "; //menampilkan elemen-elemen dari list Ld.


   cout<<"\nElemen pertama dari Ld = " <<*(Ld.begin())<<endl;


   cout<<"\nElemen ketiga dari Ld dari awal = "<<*(++(++ Ld.begin())) ;

   //kelas list tidak mendukung akses acak


   cout<<"\nElemen ketiga dari Ld dari akhir = "<< * (--(-- Ld.end()))<<endl;


   return 0;

}

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

#include<iostream>

using namespace std;

#include<map>

#include<string>


typedef map <string, int> Mint;

/*typedef digunakan untuk menghindari penulisan map<string, int> berulangkali.

Pada deklarasi, kunci adalah sebuah string dan nilai int.*/


int main()

{

   string Nama;

   int Skor;


   Mint Nilai; //Nilai adalah nama map


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

   {

      cout<<"Masukkan Nama: ";

  cin>>Nama;

  cout<<"Masukkan Skor: ";

      cin>>Skor;


  Nilai[Nama] = Skor;

   } //membuat pasangan-pasangan nilai


   Mint :: iterator iter; // deklarasi iterator


   for(iter = Nilai.begin(); iter != Nilai.end(); iter++)

      cout<<(*iter).first<<"\t"<<(*iter).second<<"\n";

      /*first adalah kunci dan second adalah nilai. Operator dot dipakai

    untuk memilih first dan second.*/


   return 0;

}

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

#include<iostream>

#include<stack>

using namespace std;


void main()

   stack<int> St1 ; //St1 dideklarasikan sebagai tumpukan integer

 

   for (int i =1; i< 7; i++) // konstruksi tumpukan oleh fungsi push()

      St1.push (10* i);


   //Elemen-elemen yang diisikan adalah 10, 20, 30, 40, 50, 60

   //Pada tumpukan, tatanannya adalah LIFO

   cout <<"Elemen teratas pada St1 = "<<St1.top()<<endl;


   cout<<"Ukuran dari tumpukan adalah = "<<St1.size()<<endl;


   cout<<"Elemen-elemen dari St1 adalah: ";

   while(!St1.empty()) //statemen untuk menampilkan elemen-elemen tumpukan

   {

      cout<<St1.top()<<" ";

      St1.pop() ; 

   } //menghapus elemen teratas

}

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

#include<iostream>

#include<stack>

#include <string>

using namespace std;


void main()

{

   stack<int> Ski ; //deklarasi tumpukan integer

   stack<char> Sch; //deklarasi tumpukan char

   stack<string> Skt ; //deklarasi tumpukan string


   string Nama[4]={"Jakarta", "Medan", "Surabaya", "Bandung"};

   char ch[4] = {'B', 'A', 'C', 'T'};

   int Array[5] = { 10, 40, 60,20,10 };


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

   {

      Ski.push (Array[i]); //menempatkan 4 elemen pada tumpukan Ski

      Sch.push (ch[i]); //menempatkan 4 elemen pada tumpukan Sch

      Skt.push (Nama[i]); //menempatkan 4 elemen pada tumpukan Skt

   } 


   cout <<"Elemen teratas pada Skt = "<<Skt.top()<<endl;

   cout <<"Elemen teratas pada Sch = "<<Sch.top()<<endl;

   cout <<"Elemen teratas pada Ski = "<<Ski.top()<<endl;


   cout<<"Ukuran dari tumpukan Skt adalah = "<<Skt.size()<<endl;


   cout<<"Elemen-elemen dari ketiga tumpukan adalah sebagai berikut: "<<endl;

   for (int j = 0;j < 4; j++)

   { 

      cout<<Skt.top()<<"\t"<< Sch.top()<<"\t"<<Ski.top()<<"\n";

      Skt.pop() ; //menghapus elemen teratas pada Skt

      Sch.pop(); //menghapus elemen teratas pada Sch

      Ski.pop(); //menghapus elemen teratas pada Ski

   }

}

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

#include<iostream>

#include<stack>

using namespace std;


#include <vector>


int main()

{

   stack <int, vector <int> > Tumpukan1, Tumpukan2, Tumpukan3;

   //Deklarasi tumpukan int

   //Kontainer yang digunakan adalah vektor


   int Array1[] = {12, 13, 14, 15, 16};

   int Array2[] = {40, 60, 20, 10, 50};


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

   {

      Tumpukan1.push (Array1[i]);

      Tumpukan2 .push (Array2[i]); 

   }

      

   Tumpukan3 = Tumpukan2; // Tumpukan2 ditugaskan kepada Tumpukan3


   cout<<"Ukuran dari Tumpukan3 adalah = "<<Tumpukan3 .size()<<endl;


   if ( Tumpukan2 == Tumpukan3 ) // relational == operator

      cout<< "Tumpukan3 dan Tumpukan2 sama.\n";

   else

      cout<<"Tumpukan3 dan Tumpukan2 tidak sama.\n";


   Tumpukan3.push(80); //menambahkan elemen lain pada tumpukan


   cout <<"Sekarang ukuran dari Tumpukan3 = "<<Tumpukan3.size()<<endl;


   for ( int j = 0;j < 6; j++) //untuk menampilkan elemen-elemen tumpukan

   {

      cout<<Tumpukan3.top()<<" " ; //menampilkan elemen teratas pada Tumpukan3

      Tumpukan3.pop(); // menghapus elemen teratas dari Tumpukan3

   }

   cout<<endl;


   return 0;

}

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

#include<iostream>

#include<queue>

using namespace std;


void main()

{

   queue <int> Q ;


   for (int i =1; i<7; i++)

      Q.push (10* i);


   //Pada antrian, tidak ada fungsi top(), tetapi yang dimiliki

   //adalah fungsi front().

   //Penampilan elemen-elemen dari depan antrian diilustrasikan

   //di bawah ini.


   cout<<"Elemen di depan antrian Q adalah = "<<Q.front()<<endl;


   cout<<"Ukuran dari antrian Q adalah = "<<Q.size()<<endl;


   cout<<"Elemen-elemen dari Q adalah: ";

   while(!Q.empty()) //statemen keluaran untuk antrian

   {

      cout<<Q.front()<<" ";

      Q.pop(); 

   }

   cout<<endl;

}

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

#include<iostream>

#include<queue>

using namespace std;


int main()

{

   queue<int> q2,q3 ;

   queue<double> q1;


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

   {

      q1.push (1.5*i);

      q2.push (i*i);

   }


   q3 = q2; //operator penugasan


   if( q2 == q3)

      cout<<"Sekarang antrian q2 dan q3 sama."<<endl;

   else

      cout<<"Sekarang antrian q2 dan q3 tidak sama."<<endl;


   cout<<"Elemen-elemen antrian q2 adalah: ";

   while(!q2.empty())

   {

      cout<<q2.front()<<" " ;

      q2.pop();

   }

   cout<<"\n";


   cout<<"Elemen-elemen antrian q3 adalah: ";

   while(!q3.empty())

   {

      cout<<q3.front()<<" " ;

      q3.pop();

   }

   cout<<"\n";


   if( q2 == q3)

      cout<<"Antrian q2 dan q3 sama."<<endl;

   else

      cout<<"Antrian q2 dan q3 tidak sama."<<endl;


   cout<<"menempatkan elemen lain, 10, ke dalam q3 \n";

   q3.push (10);


   cout<<"Elemen-elemen antrian q3 adalah: ";

   while(!q3.empty())

   {

      cout<<q3.front()<<" " ;

      q3.pop();

   }

   cout <<"\n";


   cout<<"Elemen-elemen antrian q1 adalah: ";

   while(!q1.empty())

   {

      cout<<q1.front()<<" " ;

      q1.pop();

   }

   cout <<"\n";


   return 0;

}

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

#include<iostream>

#include<queue>

using namespace std;


void main()

{

   priority_queue <int> PQ ; //deklarasi antrian prioritas

   int Array[6] = {10, 80, 90, 20, 40, 70};


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

      PQ.push (Array[i]);


   //pada antrian prioritas, tidak ada front(), tetapi yang ada top()

   cout<<"Elemen di atas (depan) antrian PQ = "<<PQ.top()<<endl;


   cout<<"Ukuran dari antrian PQ adalah = "<<PQ.size()<<endl;


   cout<<"Elemen-elemen dari PQ adalah: ";

   while(!PQ.empty())

   {

      cout<<PQ.top()<<" ";

      PQ.pop(); 

   }

   cout<<endl;

}

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

#include<iostream>

#include<algorithm>

#include<functional>

using namespace std;


bool Ganjil(int n) //definisi dari fungsi untuk nilai-nilai ganjil

{

   return n%2 ? true : false;

}


bool Genap(int m ) //definisi dari fungsi untuk nilai-nilai genap

{

   return !(m%2) ? true: false;

}


int main()

{

   int S[] = {5, 6, 8, 7, 4, 3, 8, 10, 11, 12};

   int n = count_if(S, S+10, Genap);


   /*count_if() adalah sebuah algoritma. Genap adalah alamat dari

     (pointer yang menunjuk ke) fungsi Genap(). Fungsi count_if diimplementasikan

jika elemen memenuhi fungsi Genap*/


   cout<<"Jumlah elemen genap pada S adalah = "<<n<<endl;


   int K = count_if(S, S+10, Ganjil);

   /*Ganjil adalah alamat dari

     (pointer yang menunjuk ke) fungsi Ganjil(). Fungsi count_if diimplementasikan

jika elemen memenuhi fungsi Ganjil*/


   cout<<"Jumlah elemen ganjil pada S adalah = "<<K<<endl;


   return 0;

}

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

#include<iostream>

#include<algorithm>

using namespace std;


template <class T>

class LBS { // LBS = Lebih Besar atau Sama dengan

   private :

      T x;

   public :

      LBS (T A){x = A;} //konstruksi fungsi

      bool operator() (T y)

  {return y >= x ? true :false;}

}; // akhir kelas


int main()

   LBS <int> lbs(30); //lbs dideklarasikan sebagai objek dari LBS untuk int

   LBS <double> lbs2(25.0); //lbs2 adalah objek untuk double 25.0


   int S[] = {10, 20, 30, 36, 44, 60, 70};

   double SD[] = {3.5, 27.5, 22.6, 56.7, 80.0, 90.7, 65.5, 35.5};


   //count_if() adalah sebuah algoritma

   int m = count_if(S, S+7, lbs); //di sini lbs adalah predikat


   cout<<"Jumlah elemen dengan S >= 30 adalah = "<<m<<endl;


   int n = count_if(SD, SD+8, lbs2); //di sini lbs2 adalah predikat


   cout<<"Jumlah elemen dengan SD >= 25.0 adalah = "<<n<<endl;


   return 0;

}

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

#include<iostream>

#include<algorithm>

#include<functional> //file header untuk predikat-predikat pustaka

using namespace std;


int main()

{

   int S[8] = {5, 6, 8, 7, 4, 3, 8, 9};

   char ch [] = {'A', 'Z', 'C', 'M', 'G', 'K', 'T'};


   sort(S, S+8, less<int>()); //menata dengan urutan menaik


   sort(ch, ch+7, greater<int>()); //menata dengan urutan menurun


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

      cout<<S[i]<<" ";

   cout <<endl;


   for (int j =0; j< 7 ; j++)

      cout << ch[j]<<" ";

   cout<<endl;


   return 0;

}

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

#include<iostream>

#include<algorithm>

#include<functional>

using namespace std;


template <class T>

struct LbhBesar: binary_function< T, T, bool> {

   bool operator ()(const T & x, const T& y) const

   { 

      return ( x >y );

   }

};


int main()

{

   int S[10] = {5, 6, 8, 7, 4, 3, 8, 9, 12, 14};

   

   int n = count_if( S, S +10, bind2nd(LbhBesar<int>(), 7));


   cout<<"Jumlah elemen yang lebih besar dari 7 adalah: "<<n<<endl;


   return 0;

}

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

#include<iostream>

#include<algorithm>

using namespace std;

#include<functional>


int main()

{

   int S[] = {5, 6, 8, 7, 8, 3, 8, 10, 8, 12};


   int n = count_if(S, S+10, bind2nd(greater<int>(),7));

   cout<<"Jumlah elemen yang lebih besar dari 7 adalah: "<<n<<endl;


   int m = count_if(S, S+10, bind2nd(less<int>(),10));

   cout<<"Jumlah elemen yang lebih kecil dari 10 adalah: "<<m <<endl;


   return 0;

}


Tidak ada komentar: