#include #include #define MAXSIZE 10 int stack[MAXSIZE]; int top; void main() { void push(int); int pop(); int pil=1,i,num,j; clrscr(); while(pil == 1) { clrscr(); printf("MAIN MENU\n"); printf("1. Tambah elemen stack\n"); printf("2. Hapus elemen dari stack\n"); printf("3. Tampilkan stack\n"); printf("4. Keluar\n"); printf("Pilih"); scanf("%d",&pil); switch(pil) { case 1: printf("\nMasukkan data : "); scanf("%d",&num); push(num); break; case 2: pop(); printf("\nStack telah di hapus"); break; case 3: printf("\nStack %d \n", stack[top]); printf("\nIsi Stack selengkapnya:\n"); while(top!=NULL){ printf("%d \n", stack[top--]); } break; case 4: exit(0); break; default: printf("Salah pilih"); } printf("\nUlang??\n( 1 untuk ulang, angka lain untuk keluar) "); scanf("%d", &pil); } } void push(int y) { if(top>MAXSIZE) { printf(" STACK FULL"); return; } else { top++; stack[top]=y; } } int pop() { int a; if(top<=0) { printf("STACK EMPTY"); return 0; } else { a=stack[top]; top--; } return(a); }