Rabu, 17 Oktober 2018

Stack dan Queue

1. STACK
    Pengertian Stack atau Tumpukan adalah suatu stuktur data yang penting dalam pemrograman yang mempunyai sifat LIFO (Last In First Out), Benda yang terakhir masuk ke dalam stack akan menjadi benda pertama yang dikeluarkan dari stack.
Stack (Tumpukan) adalah list linier yang dikenali elemen puncaknya (TOP) dan Aturan penyisipan dan penghapusan elemennya tertentu. Penyisipan selalu dilakukan “di atas“ TOP dan Penghapusan selalu dilakukan pada TOP

OPERASI-OPERASI/FUNGSI STACK Push : digunakan untuk menambah item pada stack pada tumpukan paling atas
Pop       : digunakan untuk mengambil item pada stack pada tumpukan paling atas
Clear     : digunakan untuk mengosongkan stack
IsEmpty : fungsi yang digunakan untuk mengecek apakah stack sudah kosong
IsFull     : fungsi yang digunakan untuk mengecek apakah stack sudah penuh


 2. QUEUE
        Queue pada Struktur Data atau antrian adalah sekumpulan data yang mana penambahan elemen hanya bisa dilakukan pada suatu ujung disebut dengan sisibelakang(rear), dan penghapusan(pengambilan elemen) dilakukan lewat ujung lain (disebut dengan sisi depan atau front).

Queue atau antrian prinsip yang digunakan adalah “Masuk Pertama Keluar Pertama” atau FIFO (First In First Out).
Queue atau antrian banyak kita jumpai dalam kehidupan sehari-hari, ex: antrian Mobil diloket Tol, Antrian mahasiswa Mendaftar, dll. Contoh lain dalam bidang komputer adalah pemakaian sistem komputer berbagi waktu(time-sharing computer system) dimana ada sejumlah pemakai yang akan menggunakan sistem tersebut secara serempak.

Pada Queue atau antrian Terdapat satu buah pintu masuk di suatu ujung dan satu buah pintu keluar di ujung satunya dimana membutuhkan variabel Head dan Tail ( depan/front, belakang/rear).
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)

Operasi-operasi Queue :
 1. Create() Untuk menciptakan dan menginisialisasi Queue Dengan cara membuat Head dan Tail = -1

 2. IsEmpty() 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.

 3. 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

 4. 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

 5. 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.

 6. 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

 7. Tampil() Untuk menampilkan nilai-nilai elemen Antrian Menggunakan looping dari head s/d tail

http://bekokmarley.blogspot.com/2014/01/pengertian-dan-penjelasan-struktur-data.html?m=1

Selasa, 16 Oktober 2018

Algoritma Mengulang Pasangan Angka

Seperti biasa langsung saja...

Deklarasi :
i,j : integer

Deskripsi :
For (i=1; i‹=5; i++)
For (j=1; j‹=5; j++)
Write (i,j)

Hasilnya:
(1,1)(1,2)(1,3)(1,4)(1,5)
(2,1)(2,2)(2,3)(2,4)(2,5)
(3,1)(3,2)(3,3)(3,4)(3,5)
(4,1)(4,2)(4,3)(4,4)(4,5)
(5,1)(5,2)(5,3)(5,4)(5,5)

Sekian...

Algoritma Piramid Banyak Angka Inputan

Langsung saja ke algoritmanya

Deklarasi :
i,j = integer

Deskripsi :
For (i=7; i>=1; i--)
For (j=i; j>=1; j--)
Write (j)

Maka hasilnya :
7654321
654321
54321
4321
321
21
1

Sekian...

Minggu, 14 Oktober 2018

Environment Netbeans

Assalamualaikum kawan...
Kali ini dalam blog ini akan membahas tentang Environment Netbeans. Sebelumnya apa itu Netbeans??
  NetBeans adalah suatu serambi pengembangan perangkat lunak yang dituliskan dalam bahasa pemrograman Java. Serambi NetBeans pun memerkenankan suatu pengembangan aplikasi dilakukan dengan dimulai dari sesetel pembentukan kesatuan perangkat lunak modular yang dinamai modules.
    Netbeans harus membutuhkan Java Development Kit (JDK) Perangkat lunak ini harus diinstall pertama kali. Didalamnya terdapat Java Ru ntime Environment (JRE) untuk menerjemahkan file .java menjadi kode yang di pahami komputer. 


Oke kita lanjut ke membuat program sederhana dan pengenalan Netbeans.

  • Tampilan awal NetBeans





  • Di sebelah kiri ada pilihan Project, File, Navigator




  • Di bagian tengah ada Jframe (from) terdiri dari Source (pengisian progran) dan Design (pengatur tata letak komponen pada form).



  • Di sebelah kanan ada Pallette yg berisi komponen dan Properties

    • Dibagian bawah ada output program untuk memberitahukan pesan kesalahan atau keberhasilan suatu program





    Memulai Contoh Project

    Kita mulai dari project yang mudah saja terdiri dari 1 Jframe, dengan 3 objek (Jlabel, JTextField, dan Button). Aplikasi ini dirancang agar menampilkan pesan "Selamat Belajar Java".

    Lanjut langkah-langkahnya:
    • Klik File - New Project

    • Pilih Java - Java Application


    • Buat nama project, jika selesai pilih Finish

    • Lalu diproject tapi klik kanan - New - JFrame Form



    • Buat nama kelas, jika selesai klik Finish 



    • Lalu tambahkan JLabel, JTextField dan Button 

    • Rename dengan klik komponen - F2, lalu ubah nama variabelnya dengan mengklik kanan pada JTextFiels dan Button


      • Ubah variabelnya seperti pada gambar ini

      • Klik kiri 2x pada button Tampil, dan isikan kodenya

      • Run dengan menekan Shift + F6 dan hasilnya seperti ini.






      Lanjut ke contoh aplikasi selanjutnya
      • Tambahkanlah 4 JTextFile dan 2 Button serta edit nama variabelnya seperti ini

      • Isikan kode pada button Show dan Reset seperti ini

      • Run aplikasi - klik show dan seperti inilah


      • Jika klik Reset maka seperti ini


      Sekian dulu ya sob blog ini, tenang masih akan banyak lagi yang akan diposting. So see you next time
      Wassalamualaikum...

      Sabtu, 13 Oktober 2018

      JTextField, OptionPane dan Konversi Data


      Assalamualaikum
      Hello guys,,
      Pada pada blog ini, saya akan membahas sedikit tentang TextField, OptionPane, Konversi beserta tutorial cara membuatnya. Langsung saja yo mari….

      1. JTextField
      JTextField merupakan komponen yang bisa digunakan untuk menginputkan dan  menampilkan data. Tipe data yang bisa dioperasikan oleh JTextField hanyalah String.
      Method yang sering digunakan adalah sebagai berikut :
      1. Input/mambaca data = getText()
      2. Output/menampilkan data = setText()
      3. Mengarahkan fokus kursor pada JTextField = requestFocus()

      Oke, langsung saja kita ke tutorialnya cara membuat JTextFiled

      • Pertama, kita siapkan 2 Label, 2 JTextField dan 1 Button serta menyetting nama variabelnya seperti pada gambar ini


      •  Lalu klik kiri 2x pada button Tampilkan, serta masukkan programnya



      •  Run Program (Shift + F6), ketik kata pada JTextField masukkan nama, lalu klik tampilkan maka akan seperti ini







      2. OptionPane

      JOptionPane adalah komponen untuk menampilkan pesan. Berikut adalah contoh aplikasi membaca dan menampilkan nama seperti pada contoh sebelumnya, namun hasil tampilan namanya berbentuk JOptionPane.
      • Kita melanjutkan saja project yg sebelumnya



      ·      



      •        Pada button proses kita tambahkan program seperti ini


      •  Run dan akan seperti ini hasilnya
      \





       3. Konversi Tipe Data

      JTextField hanya bisa menampung data bertipe  String. Oleh karena itu, jika diperlukan sebuah proses aritmatika seperti penjumlahan, pengurangan, perkalian, atau pembagian yang melibatkan JTextField, harus ada proses konversi tipe data.

      ü  Konversi dari String ke Integer
                        a = Integer.parseInt(b);

      ü  Konversi dari Integer ke String
                        a = String.ValueOf(b);

      Tutorialnya:
      ·         Pertama-tama ikuti seperti yang ada pada gambar, jangan lupa setting nama variabelnya
       



      ·         Isi kode pada button +, -, x


      ·         Run program, dan hasilnya..






      Float adalah salah satu tipe data numerik desimal dengan beberapa angka dibelakang koma .
      ü  Konversi dari String ke Float
        a = Integer.pasreFloat(b);
      ü  Konversi dari Float ke String
       a = String.ValueOf(b);  

      Contohnya:
      • Programnya sama seperti yang diatas, masukkan kode ke button ":"

       
      • Run program, dan akan dilengkapi program jika salah satu bilangan tidak diisi maka akan menampilkan pesan “Ada yang kosong, Isi dulu bos…” dan jika bilangan ke 2 diisi dengan 0 maka akan menampilkan pesan “Bilangan 2 tidak boleh kosong” karena angka berapapun jika dibagi 0 maka hasilnya tidak terdefinisi.




      Sekian dulu blog ini,,
      Wassalamualaikum


      Algoritma Game Wolf


      Game ini memang cukup greget, misi game ini adalah untuk menyebrangkan sayuran, domba, srigala, disini akan membahas algoritmanya.
      1. Jika mengantarkan sayuran terlebih dahulu ke sebrang, maka disebrang lainnya domba akan dimakan oleh srigala
      2. Jika mengantarkan srigala dahulu maka domba akan memakan saruyan
      3. Sementara itu jika mengantarkan domba dahulu, srigala tidak akan memakan sayuran
      4. Lalu kembali ke sebrangnya, jika mengantarkan srigala, disebrang srigala akan memakan domba, bahkan jika serigala diantarkan dan kita ambil domba untuk kembali ke sayuran, maka domba akan memakan sayuran 
      5. Akan tetapi jika mengantarkan sayuran ke sebrang, domba kita antarkan lagi menuju serigala dan kita tukar domba dan serigala kita antar ke sebrang kiri maka tidak akan ada yg dimakan
      6. Simpan srigala dan bawa domba dari kanan menuju sebrang kiri dan semuanya selamat

      Algoritma Kalkulator

      Pada blog ini akan membahas sedikit tentang algoritma program kalkulator. Langsung sajaa


      Deklarasi :
      a,b,c = float
      d = integer

      Deskripsi :
      Input a,b
      Output c

      Switch (d)
      Case 1 : c=a+b
      Case 2 : c=a-b
      Case 3 : c=a/b
      Case 4 : c=a*b
      Default : write (tidak ada pilihan)

      Write(c)


      Hasilnya