Вы находитесь на странице: 1из 7

PRAKTIKUM ALGORITMA DAN STRUKTUR DATA

MODUL KE-1
REVIEW STRUKTUR DASAR JAVA
& LIST LINEAR (ARRAY)

LABORATORIUM TEKNIK INFORMATIKA


FAKULTAS TEKNIK
UNIVERSITAS MUHAMMADIYAH MALANG
2015

Dokumen Laboratorium Teknik Informatika UMM @ 2015 Modul Praktikum Algoritma

dan Struktur Data

A. Tujuan
Mahasiswa mampu :
1.
2.
3.
4.

Memahami dan mengingat kembali struktur perintah pada pemrograman java.


Memahami tentang struktur data array
Mengimplementasikan struktur data array untuk penyelesaian kasus
Memahami tentang array multidimensi dan resizing array

B. Alat yang digunakan


Peralatan yang digunakan :
1. Perangkat PC yang terinstall Java
2. Editor Java
C. Prosedur Pelaksanaan
Prosedur pelaksanaan praktikum adalah sebagai berikut :
1. Mahasiswa mencoba latihan yang ada pada modul praktikum
2. Mahasiswa menganalisa hasil dari program pada latihan yang telah dijalankan
3. Mahasiswa mengerjakan tugas yang diberikan
4. Mahasiswa mendemonstrasikan program yang telah dikerjakan pada dosen/assisten
5. Mahasiswa membuat laporan dari tugas yang telah dikerjakan
D. Latihan
1.

Tugas :
a. Ketikkan kode diatas lalu Run.
b. Tambahkan 1 nilai lagi yaitu array dengan indeks ke-5 tanpa harus menambahkan panjang
array lalu Run.
c. Jika error analisa apa penyebab errornya.
d. Cobalah cari solusinya dengan menggunakan metode resize array !
Contoh Resize array:

Dokumen Laboratorium Teknik Informatika UMM @ 2015 Modul Praktikum Algoritma

dan Struktur Data

2.

Tugas :
a. Ketikkan kode diatas lalu Run.
b. Tambahkan 1 nama lagi lalu Run.
c. Analisa
d. Kenapa kita bisa menambahkan lagi tanpa error seperti latihan 1?
3.

Tugas :
a. Ketikkan kode diatas lalu Run.
b. Inputkan sesuai pilihan yang disediakan
c. Analisa
d. Perhatikan baris ke 32, kenapa variabel yang di panggil kata[pilihan-1][1] ?

Dokumen Laboratorium Teknik Informatika UMM @ 2015 Modul Praktikum Algoritma

dan Struktur Data

4.

Tugas :
a. Ketikkan kode diatas lalu Run.
b. Analisa
c. Perhatikan baris ke 21, Mengapa menghasilkan value false ?
d. Perhatikan baris ke 28, Mengapa menghasilkan angka -1 ?
e. Kenapa isi akhir dari larik berbeda dari wang awal ?
5. Method isEmpty()
/** @return true iff list is empty */
public boolean isEmpty()
{return size == 0;}
6. Method size()
/** @return current number of elements in list */
public int size()
{return size;}
7. Method checkIndex(int index)
/** @throws IndexOutOfBoundsException when
* index is not between 0 and size - 1 */
void checkIndex(int index)
{
if (index < 0 || index >= size)
throw new IndexOutOfBoundsException
("index = " + index + " size = " + size);
}

Dokumen Laboratorium Teknik Informatika UMM @ 2015 Modul Praktikum Algoritma

dan Struktur Data

8. Method get(int index)


/** @return element with specified index
* @throws IndexOutOfBoundsException when
* index is not between 0 and size - 1 */
public Object get(int index)
{
checkIndex(index);
return element[index];
}
9. Method indexOf(Object the Element)
/** @return index of first occurrence of theElement,
* return -1 if theElement not in list */
public int indexOf(Object theElement)
{
// search element[] for theElement
for (int i = 0; i < size; i++)
if (element[i].equals(theElement))
return i;
// theElement not found
return -1;
}
10. Method remove(int index)
/** Remove the element with specified index.
* All elements with higher index have their
* index reduced by 1.
* @throws IndexOutOfBoundsException when
* index is not between 0 and size - 1
* @return removed element */
public Object remove(int index)
{
checkIndex(index);
// valid index, shift elements with higher index
Object removedElement = element[index];
for (int i = index + 1; i < size; i++)
element[i-1] = element[i];
element[--size] = null; // enable garbage collection
return removedElement;
}

Dokumen Laboratorium Teknik Informatika UMM @ 2015 Modul Praktikum Algoritma

dan Struktur Data

11. Method add(int index, Object theElement)


public void add(int index, Object obj){
if (index < 0 || index > size)
// invalid list position
throw new IndexOutOfBoundsException
("index = " + index + " size = " + size);
// valid index, make sure we have space
if (size == element.length)
{ // no space, double capacity
Object [] newArr = new Object[2*size];
System.arraycopy(element, 0,newArr,0,size);
element = newArr;
}
// shift elements right one position
for (int i = size - 1; i >= index; i--)
element[i + 1] = element[i];
element[index] = obj;
size++;

E. Tugas Praktikum
1. Modifikasi program latihan ke 3. Buatlah sebuah kamus sinonim, yaitu terdiri dari kata
dasar dan kata-kata yang memiliki makna yang sama dengan kata dasar tersebut.
Contoh :
Kata dasar : sekolah
Sinonim : kampus, madrasah, maktab, pondok pesantren, pendidikan.
Petunjuk :
Gunakan array multi-dimensi.
Minimal kata yang disimpan 5 kata dasar. Sedangkan panjang sinonim tidak tentu
menyesuaikan kata dasarnya.
untuk mengetahui sinonim dari kata tertentu dapat menggunakan bantuan
thesaurus/kamus paduan kata.
Kata dasar tidak ikut ditambahkan pada output sinonimnya.
2. Buatlah program seperti kontak telepon, berikut spesifikasinya (menggunakan ArrayList).
Jumlah kontak telepon bisa ditambahkan berapapun jumlahnya.
Isi tiap kontak telepon berupa nama, nomor telp, alamat.
Setiap kontak telepon bisa ditambahkan lebih dari satu nomor telp.
Setiap kontak telepon bisa ditambahkan lebih dari satu alamat.

Dokumen Laboratorium Teknik Informatika UMM @ 2015 Modul Praktikum Algoritma

dan Struktur Data

Berikut gambarnya

Keterangan :
1. Tugas praktikum dikerjakan sendiri, jika ketahuan mengcopas, mencontoh, mereplika,
menjiplak dll akan dikenakan sanksi nilai x .
2. Tidak ada demo susulan, sesuai dengan jadwal yang telah ditentukan, kecuali ada alasan
yang logis dan dapat di maklumi.
3. Kriteria penilaian praktikum:
a. 25% Absensi.
b. 50% demo tugas.
c. 25% laporan praktikum.
d. Tambahan nilai (sesuai kebijakan aslab masing-masing), misal keaktifan dll.
4. Kriteria penilaian laporan:
a. Menggunakan template yang sudah disediakan.
b. Melampirkan hasil praktikum (latihan dan tugas modul) dan screenshot hasil program
dan penjelasannya.
c. Dikerjakan sendiri, jika ketahuan mengcopas, mencontoh, mereplika, menjiplak dll
akan dikenakan sanksi pengosongan nilai laporan.
Penting!
Tetap semangat, jangan menyerah dan pasti bisa jika mau berusaha, jangan lupa juga untuk
terus berdoa agar dapat mencapai hasil yang maksimal, jangan pernah takut untuk bertanya
jika masih ada kebingungan yang melanda, diselingi terus berolah raga, makan yang banyak
dan sehat sesuai 4 sehat 5 sempurna serta minum multivitamin agar tetap bugar :D,

Dokumen Laboratorium Teknik Informatika UMM @ 2015 Modul Praktikum Algoritma

dan Struktur Data

Вам также может понравиться