BOCAH WEB: Bahasa C

Download Free Android Apps

Ads 728x90

Showing posts with label Bahasa C. Show all posts
Showing posts with label Bahasa C. Show all posts
7 Operasi operasi pada Queue dalam bahasa C
October 26, 2017
Queue atau antrian adalah sekumpulan data yang mana penambahan elemen hanya bisa dilakukan pada suatu ujung disebut dengan sisi belakang (rear), dan penghapusan (pengambilan elemen) dilakukan lewat ujung lain (disebut dengan sisi depan atau front). Pada tumpukan menggunakan prinsip“Masuk terakhir keluar pertama”atau LIFO (Last In First Out), Maka pada antrian prinsip yang digunakan adalah “Masuk Pertama Keluar Pertama” atau FIFO (First In First Out).

Operasi-operasi pada Queue dalam bahasa C
Karakteristik Queue atau antrian :

  1. Elemen antrian
  2. Front (elemen terdepan antrian)
  3. Tail (elemen terakhir)
  4. Jumlah elemen pada antrian
  5. Status antrian

Operasi pada Queue atau antrian
  1. Tambah(menambah item pada belakang antrian)
  2. Hapus (menghapus elemen depan dari antrian)
  3. Kosong( mendeteksi apakah pada antrian mengandung elemen atau tidak)
Tujuh Operasi-operasi Queue:

  1. Create()
  2. IsEmpty()
  3. IsFull
  4. Enqueue
  5. Dequeue()
  6. Clear()

  7. Tampil()

Penjabaran dari masing-masing Operasi-operasi Queue :

Create()

Berfungsi untuk menciptakan dan menginisialisasi Queue dengan cara membuat Head dan Tail = -1

Add caption

IsEmpty()

Berfungsi untuk memeriksa apakah Antrian sudah penuh atau belum, Dengan cara memeriksa nilai Tail, jika Tail = -1 maka empty, Kita tidak memeriksa Head, karena Head adalah tanda untuk kepala antrian (elemen pertama dalam antrian) yang tidak akan berubah-ubah, Pergerakan pada Antrian terjadi dengan penambahan elemen Antrian kebelakang, yaitu menggunakan nilai Tail.

Add caption

IsFull

Untuk mengecek apakah Antrian sudah penuh atau belum
Dengan cara mengecek nilai Tail, jika Tail >= MAX-1 (karena MAX-1 adalah batas elemen array pada C) berarti sudah penuh


Add caption

Enqueue

Untuk menambahkan elemen ke dalam Antrian, penambahan elemen selalu ditambahkan di elemen paling belakang
Penambahan elemen selalu menggerakan variabel Tail dengan cara increment counter Tail terlebih dahulu

Add caption

Dequeue()

Digunakan untuk menghapus elemen terdepan/pertama (head) dari Antrian
Dengan cara menggeser semua elemen antrian kedepan dan mengurangi Tail dgn 1
Penggeseran dilakukan dengan menggunakan looping.


Add caption

Clear()

Untuk menghapus elemen-elemen Antrian dengan cara membuat Tail dan Head = -1
Penghapusan elemen-elemen Antrian sebenarnya tidak menghapus arraynya, namun hanya mengeset indeks pengaksesan-nya ke nilai -1 sehingga elemen-elemen Antrian tidak lagi terbaca


Add caption


Tampil()

Untuk menampilkan nilai-nilai elemen Antrian
Menggunakan looping dari head s/d tail
Add caption


Fungsi Fungsi Dalam STACK
October 26, 2017
Stack (Tumpukan) adalah sebuah kumpulan data dimana data yang diletakkan di atas data yang lain
Ada beberapa Fungsi-fungsi dalam stack antara lain :
  1. Init 
  2. IsEmpty 
  3. IsFull 
  4. Push 
  5. Pop 
  6. Clear 
  7. Print 
Berikut pendefinisian dari masing-masing fungsi yang ada didalam Stack:

Fungsi Awal (Init)
Fungsi ini digunakan untuk inisialisasi atau membuat stack baru yang masih kosong.
-------------------------------------------------------------------------------------------------------------
void awal(){
            T.atas=-1;
   }

Fungsi Kosong (IsEmpty)
Fungsi ini diguanakan untuk mengecek apakah stack kosong.
-------------------------------------------------------------------------------------------------------------

int kosong(){
            if(T.atas==-1)
            return 1;
   else
            return 0;
      }

Fungsi Penuh (IsFull)
Fungsi ini diguanakan untuk mengecek apakah stack penuh.
-------------------------------------------------------------------------------------------------------------

int penuh(){
            if(T.atas==max-1)
            return 1;
   else
            return 0;
      }


Fungsi Input (Push)
Fungsi ini digunakan untuk menambahkan data ke dalam stack.
-------------------------------------------------------------------------------------------------------------
void input(int data){
   if(penuh()==0)
    {T.atas++;
    T.data[T.atas]=data;
    cout<<"Data masuk"<<T.data[T.atas];}
   else
   cout<<"Tumpukan penuh";
   }


Fungsi Ambil/Hapus (Pop)
Fungsi ini dugunakan untuk mengambil data pada stack pada tumpukan paling atas.
-------------------------------------------------------------------------------------------------------------
void hapus(){
   if(kosong()==0)
   {  T.atas--;
    cout<<"Data teratas sudah terambil";
    }
   else
   cout<<"Data kosong";
}



Fungsi Bersih (Clear)
Fungsi ini digunakan untuk mengosongkan stack.
-------------------------------------------------------------------------------------------------------------

void bersih(){
T.atas=-1;
cout<<"Tumpukan kosong!";  }


Fungsi Tampil (Print)
Fungsi ini digunakan untuk menampilkan stack.
-------------------------------------------------------------------------------------------------------------
void tampil(){
            if(kosong()==0)
   {for(int i=T.atas;i>=0;i--)
            {cout<<"\nTumpukan ke "<<i<<"="<<T.data[i];}
      }
   else
   cout<<"Tumpukan kosong";
   }

Ads 728x90