#include <cstdlib>
#include <iostream>
#define maks 5
class Queue{
friend ostream& operator<<(ostream&,const Queue&);
public:
Queue();
int penuh (int);
int kosong(int);
void cetak();
void enqueue(char);
char denqueue();
private:
char A[maks];
int banyak;
};
ostream& operator<<(ostream&,const Queue& s);
{
cout<<"\nIsi Queue sebnayk:"<<s.banyak<<"yaitu:";
for(int i=0; i< s.banyak; i++)
out<< s.A[i]<<"";
}
Queue::Queue(){
banyak =0;
for(int i=0; i<maks; i++)
A[i]='0';
}
int Queue::penuh(int s){
return s==maks?1:0;
}
int Queue::kosong(int s){
return s==maks?1:0;
}
void Queue::cetak()
{
cout<<"\nIsi Queue:";
for (int i=0; i< banyak; i++)
cout<< A[i]<<"";
}
void Queue::enquue(char x)
{
cout<<"\nElemen :"<<x<<"masuk antrian";
if(penuh(banyak))cout<<"queue penuh";
else if(A[0]=='0'){
A[0]=x;
banyak++;
}
else{
int tempat=0;
while(A[tempat]>x)tempat++;
if(banayk!=tempat)// jika tempatnya tidak pada akhiran antrian
ror(int i=banyak; i>=tempat; i--)
A[i+1]=A[i];
A[tempat]=x;
banyak++;
}
}
char Queue::denqueue()
{
char temp=A[--banyak];
cout<<"\nDequeue elemen-->"<<temp;
A[banyak]='0';
return temp;
}
main(){
Queue p;
p.enqueue('e');
cout << p;
p.enqueue('d');
cout << p;
p.enqueue('c');
cout << p;
p.enqueue('b');
cout << p;
p.enqueue('a');
cout << p;
char x = p.dequeue();
cout<<"elemen yang di-dequeue"<< x << endl;
cout << p;
return 0;
}
Tidak ada komentar:
Posting Komentar