Contoh Program Stack C++


Apa itu Stack dalam C++?

 Stack adalah sebuah kumpulan data dimana data yang diletakkan di atas data  yang lain. Dengan demikian stack adalah struktur data yang menggunakan konsep LIFO(Last In First Out). Dengan demikian, elemen terakhir yang disimpan dalam stack menjadi elemen pertama yang diambil. Dalam proses komputasi, untuk meletakkan sebuah elemen pada bagian atas dari stack, maka dilakukan operasi push. Dan untuk memindahkan dari tempat yang atas tersebut, maka dilakukan operasi pop.

Contoh Source code Programnya :

#include <iostream>
#include <conio.h>
#define maxstack 200

using namespace std;

struct STACK       
{
    int top;
    char data[maxstack];
};

char dta[maxstack];
struct STACK stackbaru;

bool isfull()       
{
    if (stackbaru.top == maxstack-1)
  return true;
    else
  return false;
}

bool isempty()     
{
    if (stackbaru.top == -1)
  return true;
    else
  return false;
}
void push(char dta)
{
    if (isfull() == false)
    {
        stackbaru.top++;
  stackbaru.data[stackbaru.top]=dta;
    }
    else
    {
        cout << "\nMaaf Stack penuh";
    }
}

void pop()           
{
    while (isempty() == false)
    {
            cout<<stackbaru.data[stackbaru.top];
            stackbaru.top--;
    }
}

void print()       
{
 system ("cls");
    cout<<"\nKalimat awal : ";
    for (int i=0; i<=stackbaru.top; i++)
    {
        cout<<stackbaru.data[i];
    }
}

void clear()
{
    stackbaru.top = -1;
}
int main()
{
    char kata[200];

    cout<< "Masukkan kalimat : ";
 gets(kata);
 cout << endl;
    for(int i=0; kata[i]; i++)
 {
        push(kata[i]);
 }
print();
cout << endl;
cout<<"Dibalik jadi : ";
pop();
cout<<"\n";

}




Hasil Program terdapat di atas artikel ini ↑.
Maaf apabila terdapat kesalahan dan kekurangan pada penyampaian, terimakasih :)