my blog

Senin, 30 April 2012

struktur data



semoga dapat membantu teman-teman dalam menyelesaikan tugas 
mengenai struktur data queue





#include <iostream.h>
#include <conio.h>

struct queue
{
int data[6];
   int head;
   int tail;
};
queue Q;

void inisialisasi()
{Q.head=Q.tail=-1;}

int IsEmpty()
   {
     if (Q.tail==-1)
      {return 1;}
     else
      {return 0;}
   }

int IsFull()
   {
     if (Q.tail==5)
      {return 1;}
     else
      {return 0;}
   }
void Enqueue(int nilai)
{
if(IsEmpty()==1)
    {
      Q.head = Q. tail = 0;
      Q.data[Q.tail] = nilai;
      }
   else if(IsFull()==1)
    {cout<<" Maaf Queue Penuh";}
   else
    {
    Q.tail ++;
    Q.data[Q.tail] = nilai;
    }
}


void Print()
{
float rata_rata,total=0;

if(IsEmpty()==1)
    {cout<<" Queue KOsong";}
   else
   {
   cout<<"Data dalam QUEUE     : ";
    for(int i=Q.head;i<=Q.tail;i++)
    {cout<<Q.data[i]<<" | ";
       total=total+Q.data[i];
       }
   rata_rata= total/(Q.tail+1);
   cout<<endl;
   cout<<"Total Data Yaitu     : "<<total<<endl;
   cout<<"Rata-Rata Data Yaitu : "<<rata_rata<<endl;
   }
}

main()
{
  float jml,data;
  inisialisasi();
   cout<<"Masukkan jumlah data yang ingin disimpan : ";
   cin>>jml;
   if (jml<0 || jml>6)
    {cout<<"Jumlah yang anda masukkan salah !!!! ";}
   else
    {
      for (int i=0; i< jml; i++)
         {
          cout<<"Masukkan data ke - "<<(i+1)<<" : ";
            cin>>data;
            Enqueue(data);
         }
         cout<<"============================================="<<endl;
         Print();
      }
   getch();
}

Tidak ada komentar:

Posting Komentar