Selasa, 21 Desember 2010

pratikum 9....Sdata

#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