Membuat Animasi Queue dalam Pemrograman C++

animasi Queue C++ yang saya dapatkan waktu masih semester 2. Walau sudah agak lupa dengan C++, karena setelah tamat semester 2 saya bertemu dengan SQL, Java, dan VB. Tapi saya putuskan untuk tetap membagikan source code program ini. Kasian juga kan, daripada didiamkan di laptop tanpa pernah dipakai, mending saya bagi disini. Siapa tahu ada yang membutuhkan referensi untuk membuat tugas dan sebagainya.

Nah, yang ingin melihat source code program animasi dengan Queue, silahkan lihat source codenya dibawah ini:




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

char pil;
int jml;
void delay();

struct node
{
   char kar;
   node *next;
};
   node *tail;   //ekor
   node *now;
   node *head;
void buatnodebaru()
{
  tail=NULL;
  head=NULL;
}
void push(char ch)
{
 now=new node;
 if(head==NULL)
 {
   now->kar=ch;
   now->next=NULL;
   tail=now;
  head=now;

 }
 else
 {
   now->kar=ch;
   now->next=NULL;
  tail->next = now;
   tail=now;
 }
}

void enqueue()
{
 int i;
 char temp;
 gotoxy(1,6);
 cout<<"    ";
 gotoxy(1,8);
 cout<<" ";
 gotoxy(1,6);
 cout<<"masukkan @ karakter : ";
 cin>>temp;
 gotoxy(1,6);
 cout<<"  ";

 push(temp);
   for(i=1;i<= 75-jml*6;i++)
   {
     gotoxy(i+1,20);cout<<" O";
     gotoxy(i,21); cout<<"=("<<now->kar<<")=";
    gotoxy(i+1,22);cout<<"| |";
    delay();
   if(i!=75-jml*6)
   {
    gotoxy(i+1,20);cout<<"  ";
         gotoxy(i,21);cout<<"      ";
       gotoxy(i+1,22);cout<<"   ";
   }

   }
}

void dequeue()
{
 if(head==NULL)
 {
  gotoxy(1,8); cout<<"antrean kosong !";
   delay();

 }
 else
 {
   jml=jml-1;
   char delete_element=head->kar;
   node *temp;
   temp=head;
   head=head->next;
   delete temp;

 for(int i=69;i<=76;i++)
 {
  gotoxy(i+1,20); cout<<" O";
  gotoxy(i,21); cout<<"=("<<delete_element<<")=";
  gotoxy(i+1,22); cout<<"| |";
  delay();
  gotoxy(i+1,20); cout<<"  ";
  gotoxy(i,21); cout<<"      ";
  gotoxy(i+1,22); cout<<"   ";
 }
 int byk=0;

 while(byk!=jml)
 {
   byk=byk+1;
  for(int i=69-byk*6;i<=75-byk*6;i++)
  {
      gotoxy(i+1,20); cout<<" O";
   gotoxy(i,21); cout<<"=("<<head->kar<<")=";
   gotoxy(i+1,22); cout<<"| |";
   delay();
      if(i!=75-byk*6)
      {
       gotoxy(i+1,20); cout<<"  ";
    gotoxy(i,21); cout<<"      ";
    gotoxy(i+1,22); cout<<"   ";
      }
  }
 }
 }
}

void input()
{
 gotoxy(1,1);cout<<"1.Enqueue";
 gotoxy(1,2);cout<<"2.Dequeue";
 gotoxy(1,3);cout<<"3.Exit";
 do
 {
   gotoxy(1,4);cout<<"masukkan pilihan anda[1/2/3] : ";
   gotoxy(32,4);cin>>pil;
   gotoxy(32,4);cout<<"  ";
   switch(pil)
   {
   case '1':
   {
     if(jml<10)
     {
       jml=jml+1;
       enqueue();
     }
     else
     {
      gotoxy(1,8); cout<<"antrean penuh !";
      delay();
      gotoxy(1,8); cout<<" ";
     }
     break;
    }
   case '2':
   {
     dequeue();
    break;
   }
   case '3':
   {
      exit(1);
    break;
   }
  }
 }while(1);
}

void main()
{
  buatnodebaru();
  jml=0;
  clrscr();
  input();
  getch();
}
void delay()
{
 for(int y=1;y<100;y++)
 for(int x=1;x<100;x++)
 for(int p=1;p<100;p++)
 cout<<"";
}




jika merasa bingung silahkan bertanya 
pada dosen anda yah.,
hehe


sekian yah informasinya
semoga bermanfat


sumber :"Om Swastiastu"

Jika menurut sobat artikel ini bermanfaat, silahkan vote ke Lintas Berita agar artikel ini bisa di baca oleh orang lain.

0 komentar:

Posting Komentar

 
© Grunge Theme Copyright by kampus bascamp | Template by Blogger Templates | Blog Trick at Blog-HowToTricks