fbpx

Struktur Data : Implementasi Stack Menggunakan Array dalam Bahasa C

Deklarasi Stack

Deklarasikan stack STACK sebagai Array dengan ukuran N (kapasitas dari stack) dan TOP sebagai indeks array dari elemen paling atas stack tersebut

#include <stdio.h>
#include <stdlib.h>

#define N 10
int stack[N], top;


Fungsi Display, Push, dan Pop

Fungsi Display

void display(int stack[])
{
    if (top >= 0)
    {
        printf("Isi STACK : \n");
        for(int i = top; i>=0; i--)
        for(int i = top; i>=0; i--)
        {
            printf("\n%d", stack[i]);
        }
    }
    else
    {
        printf("STACK kosong \n");
    }

    printf("\n\n");
}

Fungsi Push

void push(int stack[], int item)
{
    if(top == N-1)
    {
        printf("\nSTACK penuh, tidak dapat ditambahkan item baru\n");
    }
    else
    {
        top++;
        stack[top]=item;
    }
}

Fungsi Pop

void pop(int stack[])
{
    if (top == -1)
    {
        printf("STACK sudah kosong\n");
    }
    else
    {
        int deleteditem = stack[top];
        top--;
        printf("%d telah terhapus\n", deleteditem);
    }
}

Source Code Lengkap

#include <stdio.h>
#include <stdlib.h>

#define N 10
int stack[N], top;

void display(int stack[])
{
    if (top >= 0)
    {
        printf("Isi STACK : \n");
        for(int i = top; i>=0; i--)
        for(int i = top; i>=0; i--)
        {
            printf("\n%d", stack[i]);
        }
    }
    else
    {
        printf("STACK kosong \n");
    }

    printf("\n\n");
}
void push(int stack[], int item)
{
    if(top == N-1)
    {
        printf("\nSTACK penuh, tidak dapat ditambahkan item baru\n");
    }
    else
    {
        top++;
        stack[top]=item;
    }
}
void pop(int stack[])
{
    if (top == -1)
    {
        printf("STACK sudah kosong\n");
    }
    else
    {
        int deleteditem = stack[top];
        top--;
        printf("%d telah terhapus\n", deleteditem);
    }
}

int main()
{
    top = -1;
    int choice = 0;
    do
    {
        printf("Masukkan Pilihan : \n");
        printf("1. Display\n");
        printf("2. Tambah (Push)\n");
        printf("3. Hapus(Pop)\n");
        printf("4. Exit\n");
        scanf("%d", &choice);
        switch(choice)
        {
        case 1:
            display(stack);
            break;
        case 2:
            printf("Masukkan item untuk ditambahkan :");
            int item = 0;
            scanf("%d", &item);
            push(stack, item);
            break;
        case 3:
            pop(stack);
            break;
        case 4:
            printf("\nKELUAR");
            break;
        default:
            printf("\nPilihan Tidak Valid");
        }
    }
    while(choice != 4);

    return 0;
}


Output


Materi Lengkap

Silakan baca juga beberapa artikel menarik kami tentang Stack, daftar lengkapnya adalah sebagai berikut.


Tonton juga video pilihan dari kami berikut ini

Bagikan ke teman-teman Anda

Contact Us

How to whitelist website on AdBlocker?

How to whitelist website on AdBlocker?

  1. 1 Click on the AdBlock Plus icon on the top right corner of your browser
  2. 2 Click on "Enabled on this site" from the AdBlock Plus option
  3. 3 Refresh the page and start browsing the site
error: Content is protected !!
Up