LAPORAN PRAKTIKUM STRUKTUR DATA Modul 02

30
      LAPORAN PRAKTIKUM
    STRUKTUR DATA
Modul 02









Disusun Oleh :

HERI PURNAMA
125410101
TI 02



UPT LABORATORIUM
Sekolah Tinggi Manajemen Informatika dan Komputer
AKAKOM
Yogyakarta
2013


SORTING DAN SEARCHING
1).PEMBAHASAN
A.Listing 01
public class Bubblesort{
Ø  Ini adalah nama kelas yang kita buat (dalam java setiap membuat program berarti membuat sebuah kelas.

                public static void tampilkanData(String nama[],int indeksTerakhir)
                {
Ø  Ini adalah  pendeklarasian parameter dengan nama method tampilkanData dan variabel nama bertipe data string dan bertipe data integer untuk variabel indeksTerakhir.

                 for (int i=0; i <= indeksTerakhir; i++)
                  System.out.println(nama[i]);
                }
Ø  Ini adalah merupakan  jenis perulangan for dimana nilai i sama dengan 0 dan nilai i kurang dari sama dengan nilai indeks terakhir maka nilai i bertambah.

                public static void urutkanBubble(String nama[],int indeksTerakhir)
                                {
Ø  Ini adalah merupakan pendeklarasian parameter dengan nama method urutkanBubble dan variabel nama bertipe  string dan bertipe integer untuk variabel indeksTerakhir. Ini adalah permulaan fungsi utama dalam java.kata kunci void didepan main merupakan keharusan pada java.

                                  String sementara ="";
                                  for (int j=0; j<=indeksTerakhir-1; j++)
                                  {
Ø  Ini adalah Merupakan perulangan for untuk nilai j sama dengan 0, dan j kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai j sehingga nilai j bertambah 1.

                                                 for (int i=0; i<=indeksTerakhir-1-j; i++)
                                                   {
Ø  Ini adalah Merupakan perulangan for untuk nilai I j sama dengan 0, dan i kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai I sehingga nilai i bertambah 1.

                                                                 if (nama[i].compareTo(nama[i+1]) > 0)
Ø  Ini merupakan program untuk membandingkan berdasarkan nama.
                                                                   {
                                                                                   sementara = nama[i];
                                                                                   nama[i] = nama[i+1];
                                                                                   nama[i+1] = sementara;
Ø  Ini dapat dibaca bahwa variabel sementara sama dengan nama ke I,nama ke I sama dengan nama I + 1 dan nama i+1 sama dengan variabel sementara.

                                                                   }
                                                   }
                                   }
                                }

public static void main(String[]args)
Ø  Ini adalah merupakan perintah untuk mendefinisikan nama sebuahk elas yang mana nama sebuah kelas itu harus sama dengan nama file yang kitabuat.Ini juga bisa disebut sebagai method utama.

                {
                 String nama[] ={"gina","cici","beni","heru","dedi","eko","feri","janu","abud","iwan"};
                 int indeksTerakhir = nama.length - 1;
Ø  Ini adalah salah satu cara bagaimana minginputkan data langsung kedalam larik tanpa melalui keyboard.

                 System.out.println("Data sebelum diurutkan : ");
                 tampilkanData(nama,indeksTerakhir);
Ø  Ini adalah perintah untuk menampilkan data dengan kata “Data sebelum diurutkan :
Ø  Baris ke dua  adalah suatu perintah untuk memangil method dengan nama tampilkanData

urutkanBubble(nama,indeksTerakhir);
                 System.out.println("");
Ø  Ini adalah perintah  memangil method dengan nama urutkanBubble.

                 System.out.println("Data sesudah diurutkan : ");
                 tampilkanData(nama,indeksTerakhir);

Ø  Ini adalah perintah untuk menampilkan data dengan kata Data sesudah diurutkan :
Ø  Baris ke dua  adalah suatu perintah untuk memangil method dengan nama tampilkanData.

                }
 }

·         Urut secara Ascending
if (nama[i].compareTo(nama[i+1]) > 0)
                                                                   {
                                                                                   sementara = nama[i];
                                                                                   nama[i] = nama[i+1];
                                                                                   nama[i+1] = sementara;
                                                                   }
Ø  Ini adalah perintah urut buble sort secara Ascending , yang menghasilkan data output dari data yang  terkecil  ke data terbesaryang kebalikanya dari Ascending.

·         Urut secara Descending
if (nama[i].compareTo(nama[i+1]) < 0)
                                                                   {
                                                                                   sementara = nama[i];
                                                                                   nama[i] = nama[i+1];
                                                                                   nama[i+1] = sementara;
                                                                   }
Ø  perintah yang digunakan hampir sama dengan praktikum sebelumnya yaitu Ascending , hanya saja ada sedikit program yang dirubah yaitu pada kondisi if (nama[i].compareTo(nama[i+1]) < 0) disini yang saya rubah adalah tanda ‘>’ menjadi ‘<’. Sehingga akan menghasilkan data output dari data yang terbesar ke data yang terkecil kebalikanya dari Ascending.

Runiing 01
·         Urut secara Ascending
Ø  Terlihat bahwa data urut sudah secara Ascending atau dari data terkecil hingga ke besar.
·         Urut secara Descending
Ø  Terlihat bahwa data urut sudah secara Ascending atau dari data terbesar hingga terkecil.


B.Listing 02
public class bubbleSort2
{
Ø  Ini adalah nama kelas yang kita buat (dalam java setiap membuat program berarti membuat sebuah kelas.

       public static void tampilkanData(String nama[], byte umur[], char jkel[], int indeksTerakhir)
Ø  Ini adalah  pendeklarasian parameter dengan nama method tampilkanData dan variabel nama bertipe data string,umur dengan tipe data byte ,jkel dengan tipe data jkel dan bertipe data integer untuk variabel indeksTerakhir.


              {
                     System.out.println("-------------------------");
                     System.out.println("nama\tumur\tjkel");
                     System.out.println("-------------------------");
                     for (int i=0;    i<=indeksTerakhir;      i++)
                     {
Ø  Ini adalah suatu perintah untuk menampilkan data yang telah dimasukkan kedalam program yang akan muncul secara urut yakni nama umur dan jkel.yang mana data tersebut akan muncul satu persatu karena dengan adanya perintah dari for yakni perintah for (int i=0;    i<=indeksTerakhir;      i++) yang berarti bahwa data pertama sama dengan 0 maka data I lebih kecil sama dengan indeksterakhir,maka data akan diulang secara kontinyu yakni satu tambah 1.

                           System.out.println(nama[i] +"\t"+ umur[i] +"\t"+ jkel[i]);
Ø  Ini adalah perintah untuk menampilakan data yang telah dimasukkan kedalam larik.
              }
              }
              public static void urutkanBubble(String nama[], byte umur[], char jkel[], int indeksTerakhir)
              {
Ø  Ini adalah  pendeklarasian parameter dengan nama method urutkanBubble dan variabel nama bertipe data string,umur dengan tipe data byte ,jkel dengan tipe data jkel dan bertipe data integer untuk variabel indeksTerakhir.ini adalah permulaan fungsi utama dalam java.kata kunci void didepan main merupakan keharusan pada java.

                     String sementara = "";
                     byte a=0;
                     char b;
Ø  Ini adalah tempat pendeklasian untuk mengurutkan data dengan menyatakan variabel baru yakni byte untuk variabel a=0 dan char untuk variabel b.

                     for (int j=0;   j<=indeksTerakhir-1;    j++)
Ø  Ini adalah Merupakan perulangan for untuk nilai j sama dengan 0, dan j kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai j sehingga nilai j bertambah 1.
                     {
                           for (int i=0;  i<=indeksTerakhir-1-j;    i++)
Ø  Ini adalah Merupakan perulangan for untuk nilai I j sama dengan 0, dan i kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai I sehingga nilai i bertambah 1.

                           {      //perintah dibawah ini identik dengan
                                  //--> if (nama[i]>nama[i+1])
                                  if (nama[i].compareTo(nama[i+1])>0)
                                  {
Ø  Ini merupakan program untuk membandingkan berdasarkan nama.

                        sementara = nama [i];
                        nama [i] = nama [i+1];
                          nama [i+1] = sementara;
Ø  Ini dapat dibaca bahwa variabel sementara sama dengan nama ke I,nama ke I sama dengan nama I + 1 dan nama i+1 sama dengan variabel sementara.

                     a = umur [i];
                     umur [i] = umur [i+1];
                     umur [i+1] = a;
Ø  Ini dapat dibaca bahwa variabel a  sama dengan umur  ke I,umur ke I sama dengan umur  I + 1 dan umur  i+1 sama dengan variabel a.

                     b = jkel [i];
                    jkel [i] = jkel [i+1];
                     jkel [i+1] = b;
Ø  Ini dapat dibaca bahwa variabel b  sama dengan jkel  ke I,jkel ke I sama dengan jkel  I + 1 dan jkel  i+1 sama dengan variabel b.

                                  }
                           }
                     }
              }
public static void main (String args[])
       {
Ø  Ini adalah merupakan perintah untuk mendefinisikan nama sebuah kelas yang mana nama sebuah kelas itu harus sama dengan nama file yang kitabuat.Ini juga bisa disebut sebagai method utama.

              String nama []={"gina","cici","beni","heru","dedi","eko","feri","janu","abud","iwan"};
        byte umur[]   ={18,     17,    19,    21,    20,    23,   19,  21,    22,    25};
        char jkel[]   ={'P',   'P',   'L',   'L',   'L',   'L',  'L',   'L',   'L',   'L'};
Ø  Ini adalah salah satu cara bagaimana minginputkan data langsung kedalam larik tanpa melalui keyboard.

             int indeksTerakhir = nama.length -1;
              System.out.println("Data sebelum diurutkan :");
              tampilkanData(nama,umur,jkel,indeksTerakhir);
              urutkanBubble(nama,umur,jkel,indeksTerakhir);
Ø  Ini adalah suatu perintah untuk menampilkan data yang telah diinputkan sebelum diurutkan
              System.out.println("");
              System.out.println("Data setelah diurutkan :");
              tampilkanData(nama,umur,jkel,indeksTerakhir);
Ø  Ini adalah suatu perintah untuk menampilkan data yang telah diinputkan yang telah diurutkan

       }
}

C.Listing 03
public class bubbleSort3
{
Ø  Ini adalah nama kelas yang kita buat (dalam java setiap membuat program berarti membuat sebuah kelas.

       public static void tampilkanData(String nama[], byte umur[], char jkel[], int indeksTerakhir)
              {
Ø  Ini adalah  pendeklarasian parameter dengan nama method tampilkanData dan variabel nama bertipe data string,umur dengan tipe data byte ,jkel dengan tipe data jkel dan bertipe data integer untuk variabel indeksTerakhir.

System.out.println("-------------------------");
                     System.out.println("nama\tumur\tjkel");
                     System.out.println("-------------------------");
                     for (int i=0;    i<=indeksTerakhir;      i++)
                     {
Ø  Ini adalah suatu perintah untuk menampilkan data yang telah dimasukkan kedalam program yang akan muncul secara urut yakni nama umur dan jkel.yang mana data tersebut akan muncul satu persatu karena dengan adanya perintah dari for yakni perintah for (int i=0;    i<=indeksTerakhir;      i++) yang berarti bahwa data pertama sama dengan 0 maka data I lebih kecil sama dengan indeksterakhir,maka data akan diulang secara kontinyu yakni satu tambah 1.

                           System.out.println(nama[i] +"\t"+ umur[i] +"\t"+ jkel[i]);
              }
              }
Ø  Ini adalah perintah untuk menampilakan data yang telah dimasukkan kedalam larik.

              public static void urutkanBubbleNama(String nama[], byte umur[], char jkel[], int indeksTerakhir)
Ø  Ini adalah  pendeklarasian parameter dengan nama method urutkanBubbleNama yang digunakan untuk mengurutkan berdasarkan nama, dan variabel nama bertipe data string,umur dengan tipe data byte ,jkel dengan tipe data jkel dan bertipe data integer untuk variabel indeksTerakhir.ini adalah permulaan fungsi utama dalam java.kata kunci void didepan main merupakan keharusan pada java.

              {
                     String sementara = "";
                     byte a=0;
                     char b;
Ø  Ini adalah tempat pendeklasian untuk mengurutkan data dengan menyatakan variabel baru yakni byte untuk variabel a=0 dan char untuk variabel b.


                     for (int j=0;   j<=indeksTerakhir-1;    j++)
                     {
Ø  Ini adalah Merupakan perulangan for untuk nilai j sama dengan 0, dan j kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai j sehingga nilai j bertambah 1.

                           for (int i=0;  i<=indeksTerakhir-1-j;    i++)
                           {
Ø  Ini adalah Merupakan perulangan for untuk nilai I j sama dengan 0, dan i kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai I sehingga nilai i bertambah 1.
       //perintah dibawah ini identik dengan
                                  //--> if (nama[i]>nama[i+1])
                                  if (nama[i].compareTo(nama[i+1])>0)
Ø  Ini merupakan program untuk membandingkan berdasarkan nama.
                                  {
                                    sementara = nama [i];
                                    nama [i] = nama [i+1];
                                      nama [i+1] = sementara;
Ø  Ini dapat dibaca bahwa variabel sementara sama dengan nama ke I,nama ke I sama dengan nama I + 1 dan nama i+1 sama dengan variabel sementara.

                                      a = umur [i];
                                      umur [i] = umur [i+1];
                                      umur [i+1] = a;
Ø  Ini dapat dibaca bahwa variabel a  sama dengan umur  ke I,umur ke I sama dengan umur  I + 1 dan umur  i+1 sama dengan variabel a.

                                      b = jkel [i];
                                      jkel [i] = jkel [i+1];
                                      jkel [i+1] = b;
Ø  Ini dapat dibaca bahwa variabel b  sama dengan jkel  ke I,jkel ke I sama dengan jkel  I + 1 dan jkel  i+1 sama dengan variabel b.

                                  }
                           }
                     }
              }

              public static void urutkanBubbleUmur(String nama[], byte umur[], char jkel[], int indeksTerakhir)
Ø  Ini adalah  pendeklarasian parameter dengan nama method urutkanBubbleUmur yang digunakan untuk mengurutkan berdasarkan umur, dan variabel nama bertipe data string,umur dengan tipe data byte ,jkel dengan tipe data jkel dan bertipe data integer untuk variabel indeksTerakhir.ini adalah permulaan fungsi utama dalam java.kata kunci void didepan main merupakan keharusan pada java.

                           {
                                  String sementara = "";
                                  byte a=0;
                                  char b;
Ø  Ini adalah tempat pendeklasian untuk mengurutkan data dengan menyatakan variabel baru yakni byte untuk variabel a=0 dan char untuk variabel b.

                                  for (int j=0;   j<=indeksTerakhir-1;    j++)
                                  {
Ø  Ini adalah merupakan perulangan for untuk nilai j sama dengan 0, dan j kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai j sehingga nilai j bertambah 1.

                                 for (int i=0;  i<=indeksTerakhir-1-j;    i++)
Ø  Ini adalah Merupakan perulangan for untuk nilai I j sama dengan 0, dan i kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai I sehingga nilai i bertambah 1
                                         {      //perintah dibawah ini identik dengan
                                                //--> if (nama[i]>nama[i+1])
                                                if (umur[i]>umur[i+1])
Ø  Ini merupakan program untuk membandingkan berdasarkan umur.

                                      sementara = nama [i];
                                      nama [i] = nama [i+1];
                                       nama [i+1] = sementara;
Ø  Ini dapat dibaca bahwa variabel sementara sama dengan nama ke I,nama ke I sama dengan nama I + 1 dan nama i+1 sama dengan variabel sementara
                                                    a = umur [i];
                                                    umur [i] = umur [i+1];
                                                    umur [i+1] = a;
Ø  Ini dapat dibaca bahwa variabel a  sama dengan umur  ke I,umur ke I sama dengan umur  I + 1 dan umur  i+1 sama dengan variabel a.

                                                    b = jkel [i];
                                                    jkel [i] = jkel [i+1];
                                                    jkel [i+1] = b;
Ø  Ini dapat dibaca bahwa variabel b  sama dengan jkel  ke I,jkel ke I sama dengan jkel  I + 1 dan jkel  i+1 sama dengan variabel b.

                                                }
                                         }
                                  }
              }

              public static void urutkanBubbleJkel(String nama[], byte umur[], char jkel[], int indeksTerakhir)
              {
Ø  Ini adalah  pendeklarasian parameter dengan nama method urutkanBubbleJkel yang digunakan untuk mengurutkan berdasarkan umur, dan variabel nama bertipe data string,umur dengan tipe data byte ,jkel dengan tipe data jkel dan bertipe data integer untuk variabel indeksTerakhir.ini adalah permulaan fungsi utama dalam java.kata kunci void didepan main merupakan keharusan pada java.

                     String sementara = "";
                     byte a=0;
                     char b;
Ø  Ini adalah tempat pendeklasian untuk mengurutkan data dengan menyatakan variabel baru yakni byte untuk variabel a=0 dan char untuk variabel b.

                     for (int j=0;   j<=indeksTerakhir-1;    j++)
                     {
Ø  Ini adalah merupakan perulangan for untuk nilai j sama dengan 0, dan j kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai j sehingga nilai j bertambah 1.

                           for (int i=0;  i<=indeksTerakhir-1-j;    i++)
                           {
Ø  Ini adalah Merupakan perulangan for untuk nilai I j sama dengan 0, dan i kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai I sehingga nilai i bertambah 1

                          //perintah dibawah ini identik dengan
                                  //--> if (nama[i]>nama[i+1])
                                  if (jkel[i]>jkel[i+1])
                                  {
Ø  Ini merupakan program untuk membandingkan berdasarkan Jkel.

                                    sementara = nama [i];
                                    nama [i] = nama [i+1];
                                      nama [i+1] = sementara;
Ø  Ini dapat dibaca bahwa variabel sementara sama dengan nama ke I,nama ke I sama dengan nama I + 1 dan nama i+1 sama dengan variabel sementara

                                      a = umur [i];
                                      umur [i] = umur [i+1];
                                       umur [i+1] = a;
Ø  Ini dapat dibaca bahwa variabel a  sama dengan umur  ke I,umur ke I sama dengan umur  I + 1 dan umur  i+1 sama dengan variabel a.

                                      b = jkel [i];
                                      jkel [i] = jkel [i+1];
                                      jkel [i+1] = b;
Ø  Ini dapat dibaca bahwa variabel b  sama dengan jkel  ke I,jkel ke I sama dengan jkel  I + 1 dan jkel  i+1 sama dengan variabel b.

                                  }
                           }
                     }
              }

       public static void main (String args[])
       {
Ø  Ini adalah merupakan perintah untuk mendefinisikan nama sebuah kelas yang mana nama sebuah kelas itu harus sama dengan nama file yang kitabuat.Ini juga bisa disebut sebagai method utama.

              String nama []={"gina","cici","beni","heru","dedi","eko","feri","janu","abud","iwan"};
        byte umur[]   ={18,     17,    19,    21,    20,    23,   19,    21,    22,    25};
        char jkel[]   ={'P',   'P',   'L',   'L',   'L',   'L',  'L',   'L',   'L',   'L'};
Ø  Ini adalah salah satu cara bagaimana minginputkan data langsung kedalam larik tanpa melalui keyboard.

              int indeksTerakhir = nama.length -1;
              System.out.println("Data sebelum diurutkan :");
              tampilkanData(nama,umur,jkel,indeksTerakhir);
Ø  Ini adalah suatu perintah untuk menampilkan data yang telah diinputkan sebelum diurutkan

              urutkanBubbleNama(nama,umur,jkel,indeksTerakhir);
              System.out.println("");
Ø  Ini adalah perintah untuk menangil method urutkanBubbleNama dan dalam method inilah nama diurutkan.

              System.out.println("Data setelah diurutkan nama :");
              tampilkanData(nama,umur,jkel,indeksTerakhir);
Ø  Ini adalah suatu perintah untuk menampilkan data nama yang telah diinputkan yang telah diurutkan

              urutkanBubbleUmur(nama,umur,jkel,indeksTerakhir);
              System.out.println("");
Ø  Ini adalah perintah untuk menangil method urutkanBubbleUmur dan dalam method inilah umur  diurutkan
              System.out.println("Data setelah diurutkan berdasarkan umur :");
              tampilkanData(nama,umur,jkel,indeksTerakhir);
Ø  Ini adalah suatu perintah untuk menampilkan data umur yang telah diinputkan yang telah diurutkan

              urutkanBubbleJkel(nama,umur,jkel,indeksTerakhir);
              System.out.println("");
Ø  Ini adalah perintah untuk menangil method urutkanBubbleJkel  dan dalam method inilah jkel diurutkan.
              System.out.println("Data setelah diurutkan berdasarkan jenis kelamin :");
              tampilkanData(nama,umur,jkel,indeksTerakhir);
Ø  Ini adalah suatu perintah untuk menampilkan data Jkel yang telah diinputkan yang telah diurutkan

       }
}
Ø  Ini adalah tampilan dari berbagai program yang ada mulai dari data sebelum diurutkan data yang telah diurutkan berdasarkan nama berdasarkan umur dan berdasarkan jenis kelamin atau Jkel.

D.Listing 04
import java.util.Scanner;
Ø  Baris ini digunakan untuk menyatakan bahwa program yang dibuat ini akan menggunakan kelas Scanner yang berada di dalam kelas java.util.

class larik {
Ø  dalam membuat kelas kata class adalah suatu keharusan yang harus ditulis, kali ini kita akan membuat program dengan nama larik. dalam membuat nama kelas yang terdiri lebih dari satu kata maka nama kelas tidak boleh dispasi, dapat dipisahkan dengan underscore “_” atau digabung penulisannya.  Jika kita membuat sebuah kelas artinya kita telah membuat sebuah program.

    public static void tampilkanData (String nama[], int indeksTerakhir){
Ø  baris ini mendeklarasikan suatu method dengan nama tampilkanData. Keyword Void dalam java merupakan suatu kata kunci yang harus ditulis. Ini adalah  pendeklarasian parameter dengan nama method tampilkanData dan variabel nama bertipe data string  dan data integer untuk variabel indeksTerakhir.ini adalah permulaan fungsi utama dalam java.kata kunci void didepan main merupakan keharusan pada java.


       for (int i = 0; i <= indeksTerakhir; i++)
Ø  Ini adalah Merupakan perulangan for untuk nilai I j sama dengan 0, dan i kurang dari sama dengan nilai indeksTerakhir dikurangi 1 kemudian dikurangi nilai I sehingga nilai i bertambah 1

              System.out.println (i +"."+nama[i]);
    }
       public static void cariBiner (String nama[], int indeksTerakhir){  
Ø  Ini adalah method dengan nama cariBiner dengan parameter yakni variabel nama dengan tipe data string dan indeksTerakhir dengan tipe data integer.

       String namaCari="";
       boolean ketemu = false;
       int posisi=0;
Ø  Ini adalah perintah untuk mendeklarasikan tipe data variabel yakni variabel namaCari bertipe integer,variabel ketemu dengan tipe data Boolean dengan nilai awa adalah false.Dan variabel posisi dengan tipe data integer dengan nilai bawaan 0.

       Scanner masukan = new Scanner (System.in);
Ø  pada baris ini dibuat obyek dengan nama masukan dan mengacu ke kelas Scanner.
int i;

       System.out.print ("Silakan masukkan nama yang Anda cari : ");
Ø  baris ini merupakan perintah keluaran untuk menampilkan pernyataan yang terdapat diantara tanda kurung dan petikan langsung yaitu " Silakan masukkan nama yang Anda cari ::".

       namaCari = masukan.nextLine();
Ø  Baris ini digunakan untuk memasukan data yang diinputkan dalam keyboard kedalam variabel namaCari.

       int atas,bawah,tengah;
       atas = 0;
       bawah = indeksTerakhir+1;
Ø  Ini adalah baris baris untuk mendeklarasikan variabel dengan tipe datanya,yang mana variabel atas,bawah,tengah dengan tipe data integer,variabel atas dengan nilai bawaan 0 dan bawah sama dengan data indeksTerakhir ditabah 1.
       while ((ketemu == false) && (atas <= bawah-1))
Ø  Ini adalah perintah perulangan yang mana bila masuk dalam kondisi ketemu maka sama dengan false dan nilai dai variabel atas sama dengan lebih kecil variabel bawah dikurangi satu.
       { tengah = (atas + bawah) /2;
Ø  Ini adalah perintah untuk  menyatakan bahwa variabel tenggah sama dengan variabel atas ditambah variabel bawah dibagi dua.

         if (namaCari.compareTo (nama[tengah]) < 0 )
              bawah = tengah;
Ø  Ini adalah program kondisi yang mana akan menyatakan  variabel nama dalam larik tengah lebih kecil dari 0.
              else if (namaCari.compareTo (nama[tengah]) > 0 )
                     atas = tengah;
Ø  Ini adalah kondisi kedua yang mana menyatakan bahwa jika hanya data pada variabel larik tengah lebih besar dari 0 maka atas sama dengan tengah.
                     else
                     {ketemu = true;
                      posisi = tengah;
                     }
       }
Ø  Ini adalah program menyatakan kondisi yang lain yakni bila data ketemu sama dengan true dan posisi sama dengan tenggah.
       if (ketemu==true)
Ø  Ini adalah program untuk menyatakan  kondisi bila ketemu sama dengan true.

              System.out.println ("data ketemu di posisi ke "+ posisi);
Ø  Ini adalah perintah keluaran yakni dengan menampilkan “data ketemu di posisi ke “ dan akan menampilkan data pada variabel posisi
                        else
                     System.out.println ("Maaf, data yang Anda tidak ada");
    }
Ø  Ini adalah perintah kondisi kedua yakni bila data yang diinputkan tidak ada maka program akan memmberi warning “Maaf, data yang Anda tidak ada

    public static void main (String args[]) {
Ø  baris ini mendeklarasikan suatu method dengan nama main. Keyword Void dalam java merupakan suatu kata kunci yang harus ditulis. Keyword static memungkinkan method main() diapanggil tanpa harus terlebih dahulu membuat instance dari class sederhana.

       String nama [] = {"abud","bambang","cecep","dedi","eko","feri","gunawan","hasan",                        "iwan","jumeno","karti","lina","murni"};
Ø  Ini adalah perintah yang digunakan untuk memasukkan data langsung kedalam larik. Dengan nam larik nama.

       int indeksTerakhir = nama.length - 1;
       System.out.println ("Data yang ada : ");
       tampilkanData (nama, indeksTerakhir);
Ø  Ini adalah perintah untuk memangil method tampilkanData.


       System.out.println ("");
       cariBiner (nama, indeksTerakhir);
Ø  ini adalah perintah untuk memangil method cariBiner  dan dalam method ini lah data yang diinputkan sedang dicari.
    }
}
Ø  Ini adalah tampilan dari program diatas bahwa bagian atas sendiri adalah daftar data yang diinputkan  dan  untuk baris bawah meminta memasukkan data yang dicari bila data yang dicari ada maka  program langsung member tahu bahwa data berada pada indeks ke dua.


2).Latihan

Listing Program :

import java.util.Scanner;
class larik
{
public static void tampilkanData(String nama[],int indeksTerakhir)
    {
    for (int i = 0; i <= indeksTerakhir; i++)
    System.out.println (i +"."+nama[i]);
    }

public static void cariLiniear (String nama[], int indeksTerakhir)
       {
             Scanner masukanTeks = new Scanner(System.in);
             boolean statusKetemu = false;
             int i=0;
             int lokasi = 0;

  System.out.print("Silahkan Masukkan NAMA yang ingin di cari :");
             String kataKunci = masukanTeks.next();
             while ((statusKetemu == false))
             {
                  if (nama[i].equals(kataKunci))
                  {
                    statusKetemu = true;
                    lokasi = i;
                    System.out.println("Data Yang dicari Berhasil Ditemukan !!");
                    System.out.println("Nama : "+nama[lokasi]);
               }
                 i++;
             }
             if (statusKetemu==true)
                 System.out.println("Nama :"+"\t"+kataKunci+"\t"+"ditemukan pada indeks ke-"+"\t"+lokasi);
            else
                  System.out.println("Mohon maaf,Nama yang Anda cari Tidak ada pada LIST kami.");
       }

    public static void main (String args[])
    {
  String nama [] ={"abud","bambang","cecep","dedi","eko","feri","gunawan","hasan","iwan","jumeno","karti","lina","murni"};
  int indeksTerakhir = nama.length - 1;
  System.out.println ("Data yang ada : ");
  tampilkanData (nama, indeksTerakhir);
  System.out.println ("");
  cariLiniear (nama, indeksTerakhir);
    }
}
Hasil Output :

3).Tugas
Listing Program
public class Bubblesort{
     public static void tampilkanData(String nama[],int indeksTerakhir)
     {

      for (int i=0; i <= indeksTerakhir; i++)
       System.out.println(nama[i]);
     }
     public static void urutkanSelectionSort(String nama[],int indeksTerakhir)
          {
              String namaS;
              String teksTerkecil;

              int lokasi=0;

                   for (int i=0 ; i<=10-2;i++)
                        {
                             teksTerkecil="zzzzzz";
                             for (int S=i+1;S<=10-1;S++)
                            {
                                  if (nama[S].compareTo(teksTerkecil)<0 o:p="">
                                  {
                                      teksTerkecil=nama[S];
                                      lokasi = S;
                                  }
                             }

                   if (nama[i].compareTo(nama[lokasi])>0)
                       {

                             {    namaS       = nama[i];
                                  nama[i]     = nama[lokasi];
                                  nama[lokasi]= namaS;
                             }
                        }

                       }
               }


public static void main(String[]args)
     {
      String nama[] ={"gina","cici","beni","heru","dedi","eko","feri","janu","abud","iwan"};
      int indeksTerakhir = nama.length - 1;

      System.out.println("Data sebelum diurutkan : ");
      tampilkanData(nama,indeksTerakhir);

      urutkanSelectionSort(nama,indeksTerakhir);
      System.out.println("");

      System.out.println("Data sesudah diurutkan : ");
      tampilkanData(nama,indeksTerakhir);

     }
 }
Hasil Output :

4.Listing Terlampir


    Blogger Comment
    Facebook Comment

0 komentar:

Post a Comment

Thanks For Your Feedback.