Pertemuan 9 - Array 1
Pertemuan 9 - Array 1
Array 1 Dimensi
a[0] a[1] a[2] a[3] a[4] a[5] a[6] a[7] a[8] a[9]
index 0 1 2 3 4 5 6 7 8 9
length = 10
value 12 49 -2 26 5 17 -6 84 72 3
Contoh:
int a[];
int[] a;
• Contoh:
• Mengakses sebuah variabel array a dengan indeks i, dapat dituliskan:
a[i]
• Indeks i hanya dapat bernilai 0 atau positif dengan nilai maksimumnya
adalah: (jumlah_elemen - 1).
Mengakses Elemen Array
• Contoh:
Stop
Start
i=0
• Menjumlahkan semua elemen array
i<numbers.length
// assume that the user has created int[] numbers no
yes
int sum = 0;
for (int i = 0; i < numbers.length; i++){ sum+=numbers[i]
sum += numbers[i];
} i++
println(sum);
Print sum
Stop
Array - Loop
For each loop
• Bentuk lain dari loop for yang digunakan untuk menelusuri array
• for-each loop mengurangi kode secara signifikan dan tidak ada
penggunaan indeks atau lebih tepatnya penghitung dalam loop.
• Sintaks:
for(tipeDataArray tempVar : namaArray){
//statement
}
Array - Loop
• Mengakses semua elemen array dengan menggunakan perulangan "for-each“.
• Contoh:
Output:
Array - For Each
Contoh: • Output:
Perbedaan dengan atau tanpa ARRAY
int number1 = 1;
int number2 = 2; << tanpa array
int number3 = 3;
i=0
i<arrayBil.length
no
yes
Print i, arrayBil[i]
Output:
i++
Stop
Start
i=0
i<arrayBil.length
no
yes
Print i, arrayBil[i]
Output:
i++
Stop
Start
i=0
• Program meminta input sebanyak 5 bilangan
kemudian menampilkan kembali 5 bilangan tersebut. i<array.length
no
yes
Output: Input array[i]
i++
i=0
i<array.length
no yes
Print i, array[i]
i++
Stop
Start
i<OldArray.length/2
no
yes
NewArray[i] = OldArray[i+2]
Print newArray[i]
Output: i++
Stop
Start
i<array.length
no
yes
total += array[i]
i++
Output:
Print total
Stop
MATERI PENGAYAAN
Searching dan Sorting
Searching
• Salah satu hal yang sering dilakukan pada operasi array adalah
pencarian atau searching
• Pencarian dilakukan untuk menemukan nilai tertentu pada elemen di
dalam array
• Salah satu algoritma searching yang paling mudah adalah Linear
Search
Searching
• Misalkan pada sebuah array, ingin mencari dimana posisi index
dari sebuah array.
• Pada Linear Search, dibandingkan “key” atau angka yang ingin
dicari, dengan tiap elemen yang ada di dalam array.
i=0
i<array.length
no
yes
no
key==array[i] i++
yes
hasil=i
break
Stop
Sorting
• Sorting adalah proses mengurutkan elemen array dari yang terkecil ke
besar (ascending) atau sebaliknya (descending)
• Salah satu algoritma Sorting yang paling mudah adalah BubbleSort
Sorting
• Di dalam Bubble Sort, dilakukan
looping dari elemen pertama
sampai elemen terakhir dari array.
• Kemudian tiap elemen
dibandingkan dengan elemen
berikutnya.
• Jika elemen tersebut lebih besar
dari elemen berikutnya, maka akan
ditukar.
Start
no
i=0 i<pjgArray
yes
i<pjgArray
no yes Print array[i]
yes
j=1
no i++
j<pjgArray-1
yes
yes Stop
temp=array[j-1]yes array[j-1]>
array[j-1]=array[j]
array[j]
array[j]=temp
no
j++
i++
LATIHAN INDIVIDU
1. Buat flowchart pengisian elemen array dengan jumlah elemen 60
menggunakan looping!
2. Buat flowchart untuk mengisi elemen array dengan jumlah elemen
10, kemudian tampilkan isi array tersebut secara terbalik.
3. Buat flowchart yang meminta inputan pengguna berupa angka 1-12.
Tampilkan nama bulan sesuai dengan inputan pengguna tersebut.
Nama-nama bulan disimpan dalam array secara berurutan.
4. Buat flowchart untuk mengisi array bilangan bulat sejumlah 8
elemen, kemudian menghitung rata-rata dari seluruh elemen array
tersebut.
TUGAS KELOMPOK
1. Identifikasi sesuai project masing-masing kelompok, fitur apa saja
yang membutuhkan penggunaan array 1 dimensi.
2. Identifikasi sesuai project tersebut, fitur apa saja yang
membutuhkan operasi array 1 dimensi berupa searching dan
sorting.
3. Buatlah algoritma dalam bentuk flowchart sesuai kebutuhan yang
telah Anda identifikasi berdasarkan tugas pada nomor 1 dan 2