Apa Itu Stack pada Bahasa Pemograman C++ | Pawang SMart

Apa Itu Stack pada Bahasa Pemograman C++

Pengertian Stack Bahasa C++

Stack (tumpukan) dapat diartikan sebagai list yang operasi penghapusan dan penyisipannya dapat dilakukan di satu ujung, atau dapat diartikan sebagai suatu kumpulan data yang seolah-olah ada data yang diletakkan diatas data lainnya.



Terdapat 2 (dua) operasi utama yang dapat dikerjakan dalam stack : push dan pop.
Operasi push  yaitu operasi menambahkan elemen pada urutan terakhir(paling atas).
Operasi pop yaitu operasi mengambil sebuah elemen data pada urutasn terakhir dan menghapus elemen tersebut dari stack.




Operasi-operasi tambahan yang dapat dilakukan pada stack adalah :

1. Megecek apakah stack penuh (isFull) : operasi ini dilakukan untuk melakukan pengecekan apakah      isi stack penuh atau tidak.
2. Mengecek apakah stack kosong (isEmpty) : operasi ini dilakukan untuk melakukan pengecekan
    apakah isi stack kosong atau tidak.
3. Membersihkan stack (clear) : operasi ini dilakukan untuk mengosongkan isi stack.
4. Mencetak isi stack (print) : operasi ini dilakukan untuk menampilkan isi dari stack.

Contoh Program Stack Bahasa C++


#include<stdio.h>
#include<conio.h>
#include<iostream.h>

struct stack
{
     int data[5];
   int atas;
};
stack tumpuk;

void main()
{
     clrscr();
   int pilihan, baru, i;

   tumpuk.atas=-1;
   do
   {
     clrscr();
      cout<<"1. PUSH DATA"<<endl;
      cout<<"2. POP DATA"<<endl;
      cout<<"3. PRINT DATA"<<endl<<endl;
      cout<<"MASUKKAN PILIHAN : ";
      cin>>pilihan;

      switch (pilihan)
      {
           case 1 :
           if(tumpuk.atas==5-1)
            {
                cout<<"TUMPUKAN PENUH";
               getch();
            }
            else
            {
                cout<<"MASUKKAN DATA : ";
                cin>>baru;
                tumpuk.atas++;
               tumpuk.data[tumpuk.atas]=baru;
                     }
            break;

         case 2 :
           if(tumpuk.atas==-1)
            {
                cout<<"TUMPUKAN KOSONG";
               getch();
            }
            else
            {
               cout<<"DATA YANG AKAN DI POP = "<<tumpuk.data[tumpuk.atas]<<endl;
                tumpuk.atas--;
               getch();
            }
            break;

         case 3 :
           if(tumpuk.atas==-1)
            {
                cout<<"TUMPUKAN KOSONG";
               getch();
            }
           else
            {
                cout<<"DATA - "<<endl;
               for(i=tumpuk.atas; i>=0; i--)
               {
               cout<<tumpuk.data[i]<<ends;
               }
               getch();
            }
            break;

         default :
           cout<<"TIDAK ADA DALAM PILIHAN";
            break;
      }

   }
   while((pilihan>=1) && (pilihan<=3));
   getch();
}

1 komentar:

Miliana delete September 13, 2019 at 10:54 AM

jadi tahu deh sekarang pengertiannya makasih kak

EMI