LAPORAN PRAKTIKUM STRUKTUR DATA Modul 04

30
      LAPORAN PRAKTIKUM
    STRUKTUR DATA
Modul 04









Disusun Oleh :

HERI PURNAMA
125410101
TI 02



UPT LABORATORIUM
Sekolah Tinggi Manajemen Informatika dan Komputer
AKAKOM
Yogyakarta
2013


ANTRIAN/QUEUE
1).PEMBAHASAN

A.     Menjawab pertanyaan pertanyaan yang ada di modul :

  
Jawab
·         Mobil yang dapat di addqueue adalah mobil B,C,dan D .
·         Yang menjadi ekor adalah mobil D
·         Ekor berada pada posisi 2 pada mobil D
.Praktikum 02
jawab
·         Kondisi antrian sekarang bertambah 3 antrian yakni mobil E,F dan Gmenjadi berjumlah 5 antrian
·         Mobil yang ada dalam antrian adalah Mobil B,C,D,E,F,dan G
·         Posisi ekor saat ini berada pada no.5 pada mobil G
·         Ada perbedaan posisi ekor yaitu yang semula berada pada mobil D pada no.2 sekarang berada pada mobil G pada posisi no.5

.Praktikum 03
Jawab
·         Mobil yang dapat di addqueue adalah mobil,b,c,d,e,f,g,h,I,dan j
·         Ada mobil yang tidak dapat di addqueue yakni mobil K dan L
·         Mobil itu tidak dapat antri karena antrian sudah penuh,dan kapasitas antrian hanyalah memuat sebanyak 9 antrian saja sehingga kedua mobil tersebut tidak masuk dalam antrian.
.Praktikum 04
Jawab
·         Ada perubahan antrian yang terjadi dibanding proses antrian sebelumnya.
·         Mobil b,c,dan dst tidak berada pada posisi sebelumnya
·         Hal itu terjadi karena programmer mengeluarkan antrian sebanyak 1 antrian kepada program untuk mengeksekusinya.
·         Bagian yang menyebabkan hal itu adalah program
System.out.println("deQueue:"+deQueue(antrian));
     bacaAntrian(antrian);
·   Kondisi ekor saat ini adalah ekor berada pada posisi 7 dan tetap pada mobil J.

.Praktikum 05
Jawab
·         Ada perubahan kondisi antrian saat ini dan sebelumya
·         Mobil B,C,D dst tidak pada posisi sebelumnya
·         Hal itu terjadi Karen programmer memerintahkan antrian untuk mengesekusi antrian sebanyak 4 kali atau mengeluarkan antrian sebanyak 4 kali pada program sehingga hasilnya menjadi seperti itu.
·         Kondisi ekor saat ini adalah berada pada posisi no.4 dan berada pada Mobil J.
.Praktikum 06
Jawab
·         Semua proses dequeue dapat dilakukan sebanyak 7 kali hanya menyisakan 2 antrian saja ,dari pengeksekusian 7 antrian dari 9 antrian.

B. Program Menu Antrian
1)      .Souce kode

import java.util.Scanner;
public class MenuTumpukan
{
      static int atas=-1;
      static int batasAtas=9;

      public static void push(String tumpukan[],String data)
      {     if (atas >= batasAtas)
                  System.out.println("Maaf, Tumpukan penuh");
            else
            {
                  System.out.println("PUSH: "+data);
                  atas = atas +1; //atas+=1;
                  tumpukan[atas]=data;
            }
      }

      public static String pop(String tumpukan[])
      {     String hasilPop="";
            if (atas<0 o:p="">
                  hasilPop="Maaf, tumpukan kosong";
            else
            {
                  hasilPop = tumpukan[atas];
                  tumpukan[atas]=null;
                  atas--;
            }
            return(hasilPop);
      }

      public static void bacaTumpukan(String tumpukan[])
      {     System.out.println("Kondisi tumpukan : ");
            for (int i=batasAtas; i>=0; i--)
            {     if (i==atas)
                        System.out.println(i+"."+tumpukan[i]+"  atas");
                  else
                        System.out.println(i+"."+tumpukan[i]);
            }
      }

public static void main(String milih[])
      {
            Scanner masuk=new Scanner(System.in);
            boolean pilihanAktif=true;
            String tumpukan[] = new String[10];
                  push (tumpukan, "Buku A");
                  push (tumpukan, "Buku B");
                  push (tumpukan, "Buku C");
                  push (tumpukan, "Buku D");

            do
            {
                  System.out.println("Silahkan pilih menu yang ada dibawah ini :");
                  System.out.println("---------Menu Tupukan---------");
                  System.out.println("1. Push");
                  System.out.println("2. Pop");
                  System.out.println("3. Baca Tumpukkan");
                  System.out.println("4. Keluar");
                  System.out.print("Masukkan pilihan anda => ");
                  int yangDiPilih = masuk.nextInt();
                  switch(yangDiPilih)
                  {
                        case 1: System.out.println("push");
                                    break;
                        case 2: System.out.println("pop");
                                    pop(tumpukan);break;
                        case 3: System.out.println();
                                    bacaTumpukan(tumpukan);break;
                        case 4: System.out.println("Terimakasih telah menggunakan program saya");pilihanAktif=false;break;
                        default: System.out.println("Maaf menu yang anda pilih tidak ada pada list kami !");
                  }
                  System.out.println("");
            }while(pilihanAktif);
      }
}
2)      .output
 


2).Tugas
·         Kapasitas antrian yang ditentukan pada program diatas adalah sebanyak 9 antrian.
·         Memodifikasi antrian supaya menjadi lebih bnyak adalah dengan cara:
1.      Menambah angka atau jumlah pada program ini: contohnya ingin menambah antrian sebanyak 15 antrian maka program yang ini dirubah menjadi :
static int ekor     =-1;
      static int maxEkor=14;
      
hasil output menjadi :

3).Kesimpulan
·         Dari hasil praktek diatas maka dapat diambil kesimpulanya bahwa : antrian didefinisikan ebagai jalur tunggu diaman kondisi antrian ini menunggu untuk dieksekusi. Yang mana  antrian yang pertama kali datang akan dilayani terlebih dahulu (FIFO). antrian mana yang terlebih dahulu datang itu yang akan dieksekusi FIFO (First in firs out).

4).Listing Terlampir


    Blogger Comment
    Facebook Comment

0 komentar:

Post a Comment

Thanks For Your Feedback.