Contoh Program Stack C++ |
Hai Sobbat Blogger.. huft gx bosen- bosenya saya memposting tentang pemrograman C++, Hehehehehe.... kali ini saya akan memberikan contoh Program Stack di 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. 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 kita melakukan push. Dan untuk memindahkan dari tempat yang atas tersebut, kita melakukan pop.
Yahhh langsung saja berikut codingannyaa....
#include "iostream"#include "conio.h"#define maksElemen 10//konstantausing namespace std;struct tumpukan{short int isi[10];//isiint pos;//posisi dri stack};short int kosong(tumpukan &t)//periksa bahwa elemen stack kosong{short int kos;if(t.pos>0){kos=0;//blm kosongcout<<endl<<"belum kosong";}elsekos=1;//sudah kosongreturn(kos);}void posisi(tumpukan t)//melihat posisi top stack{if(kosong(t)!=1)//jika tdk kosong{cout<<endl<<"top sekarang pada indek = "<<t.pos;cout<<" dan elemennya adalah "<<t.isi[t.pos-1];}}void pop(tumpukan &t,short int &j){if(kosong(t)==1)//periksa stackcout<<endl<<"stack sudah kosong !";else{cout<<endl<<kosong(t)<<"stack blm kosong.";cout<<endl<<t.isi[t.pos-1]<<" telah di pop!";t.pos=t.pos-1;j=t.pos;}}short int full(tumpukan &t)//periksa bhwa elemen stack sdah penuh{short int penuh;if(t.pos<maksElemen)penuh=0;//blm penuhelsepenuh=1;//sdah penuhreturn (penuh);}void push(tumpukan &t, short int x, short int j){if(full(t)==1)//periksa stackcout<<endl<<"stack telah PENUH !";else{cout<<endl<<"stack blm PENUH !!";t.pos=j;t.isi[j-1]=x;cout<<endl<<t.isi[j-1]<<" telah di PUSH!!";}}void main(){tumpukan t; short int n,i,x,komen;//n tdk lbih dri 10char pil;//memasukkan bil bulatt.pos=0; komen=0; i=1; t.isi[t.pos]=0;while(!(komen==1)){cout<<endl<<"1. PUSH dan 2.POP, mau pilih yang mana?";cin>>pil;switch(pil){case'1': posisi(t);//lihat posisi top satackcout<<endl<<"Bilangan ke-"<<i<<"="; cin>>x;push(t,x,i);i++;break;//pemanggilan prosedur PUSHcase'2': posisi(t);//lihat posisi top satackpop(t,i);break;//pemanggilan prosedur pop}//end casecout<<endl<<"Tekan 1 untuk asphalt 8 :D..!!tekan: ";cin>>komen;}//end while_getch();}
berikut SS nya...
#SemogaBermanfaat
#OnBlog