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. Selamat mencoba.



Artikel Terkait

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