Code stack di C++ untuk membalikkan input bilangan dan huruf

source kode

// program membalikkan kata dan angka yang di inputkan oleh user.

#include <iostream>
#include <windows.h>
#include <stdio.h>
#include <conio.h>
#define  maxstack 200                        // library untuk jumlah batas kata dengan 200
using namespace std;

struct STACK                               //membuat jenis data abstrak stack
{

int top;
char data [maxstack];                       //pendeklarasian untuk mnginputkan suatu kalimat stack dengan maks 200

};

char data [maxstack];
struct STACK stackbaru;

bool isfull()                                //fungsi untuk mengetahui apakah stack dalam kondisi terisi (mengunkan boolean)

{

    if (stackbaru.top == maxstack -1)
return true;                                 //jika kondisi stack penuh maka benar
    else
return false;
}

bool isempty()                               // fungsi stack apakah dalam kondisi kosong

{

if (stackbaru.top == -1)
return true;
else
return false;
}

void push (char data)                   //fungsi untuk proses push

{


if (isfull()== false)
{
stackbaru.top++;                        // user input data dengan variabel data dimana data tersebut akan di simpan di stack baru yang paling atas
stackbaru.data[stackbaru.top]= data;     //increment,yang bermaksud jika pengingputan data lagi maka akan ersimpan diatas data sebelumnya

}
else                                            //jika stack dalam kondisi penuh
{
cout<<"\nmaaf Stack penuh";
}

}

void pop()                                     //mengambil isi stack

{

while (isempty() == false)  //jika kondisi stack tidak kosong

{
cout<<stackbaru.data[stackbaru.top];    //akan menampilkan data di stack dimana data berada paling atas

stackbaru.top--;    //increment, jika user memilih menu pop lagi maka program akan menampilkan data di bawah data yg telah terambil sebelumnya

}

}

void print()    //mencetak stack

{
system ("cls");
    cout<<"\n    ->   Data awal penginputan anda yaitu                 :";
    for (int i=0;i<=stackbaru.top; i++)    //diulang sebanyak data yang tersimpan di data

    {
    cout<<stackbaru.data[i];
    }

}

void clear()
{
stackbaru.top = -1;
}

int main()

{

char kata [200];     //menampung inputan
cout<<endl;
cout<<"-------------------------------------------------------------"<<endl;
cout<<"-------------- PROGRAM MEMBALIKKAN ANGKA DAN HURUF------------"<<endl;
cout<<"-------------------------------------------------------------"<<endl;
cout<<endl;
cout<<"    ->   Input Data : ";
gets(kata);
cout<<endl;
    for(int i=0; kata[i]; i++)
{
push(kata[i]);
}

print ();
cout<<endl;
cout<<"    ->   Data Kata Huruf dan Angka yang dibalik Menjadi   : ";
pop();
cout<<"\n";

}

Sampe disini kodingnya. Untuk bisa mengcopy kode diatas, disable javascript di browser yang anda gunakan. Selamat mencoba.

Terimakasih telah membaca artikel ini, semoga bermamfaat. Komentar yang membangun dan bersifat positif anda sangat diharapkan.