Anda di halaman 1dari 20

Tugas : Modul 5 Kb 4

Nama : SAFRIZAL

No Peserta : 18061452310024

1. Hasil pengematan antara komponen RPP minimal dan RPP contoh adalah
sebagai berikut :

Contoh RPP 1 :
a. Tata letak komponen media/alat, dan sumber pembelajaran tidak sesuai dengan
komponen RPP minimal, meskipun hal tersebut tidak terlalu berpengaruh
terhadap konten RPP.
b. Rincian materi ajar kurang lengkap
c. Metode pembelajaran kurang terperinci
d. Metode penilaian sangat lengkap dan sangat baik
e. Secara keseluruhan RPP Contoh 1 dapat dikatakan baik

Contoh RPP 2 :

a. Tata letak komponen kurang sesuai dengan contoh


b. Lembar penilain tidak lengkap
c. Rincian materi ajar dan metode pembelajaran sangat jelas

2. Panduan Penyusunan RPP Revisi 2017


a) Identitas : berisi data Sekolah, Mata Pelajaran, Materi Pokok dan Alokasi Waktu

b) Kompetensi inti : Dikutip dari Permendikbud 21 Tahun 2016, Kompetensi Inti (KI)
mencakup sikap spiritual, sikap social, pengetahuan dan keterampilan. KI 3

merupakan penerapan pengetahuan pada bidang kajian yang spesifik


sementara KI 4 merupakan penerapan keterampilan abik secara mandiri

maupun kolaboratif dan disesuaikan dengan pengembangan dari yang


dipelajari di sekolah.

c) Kompetensi Dasar (KD) dan Indikator Pencapaian Kompetensi (IPK) : KD dikutip

dari Permendikbud 24 tahun 2016, KD merupakan kemampuan minimal dari


materi pembelajaran minimal yang harus dicapai peserta didik untuk suatu mata

pelajaran pada masing-masing satuan pendidikan yang mengacu pada KI. IPK
dikembangkan dari KD, merupakan kemampuan minimal yang dapat diobservasi
untuk disimpulkan sebagai pemenuhan KD pada KI 1 dan KI 2, dan kemampuan

yang dapat diukur untuk disimpulkan sebagai pemenuhan KD pada KI 3 dan KI


4. IPK disusun menggunakan kata kerja operasional yang dapat diukur/dilakukan

penilaian sesuai dengan karakteristik mata pelajaran. IPK dari KD pengetahuan


menggambarkan dimensi proses kognitif dan dimensi pengetahuan dan

memuat keterampilan abstrak dana tau keterampilan konkret.


d) Tujuan pembelajaran : dirumuskan berdasarkan KD dan menggunakan Kata

Kerja operasional yang dapat diamati dan dapat diukur, yang mencakup sikap
pengetahuan, dan keterampilan. Dituangkan dalam bentuk deskripsi, memuat

kompetensi yang hendak dicapai oleh peserta didik. Memberikan gambaran


proses pembelajaran.

e) Materi Pembelajaran : memuat fakta, konsep/prinsip, dan prosedur yang relevan.


Dutulis dalam bentuk butir-butir sesuai dengan cakupan materi yang termuat

pada IPK atau KD pengetahuan. Cakupan materi disesuaikan dengan alokasi


waktu yang telah ditetapkan dan dianjurkan dapat mengakomodasi muatan

lokan dapat berupa keunggulan local.


f) Metode pembelajaran : Harus mampu mewujudkan suasana belajar dan proses

pembelajaran agar peserta didik mencapai KD yang disesuaikan dengan


karakteristik peserta didik. Menerapkan pembelajaran aktif yang bermuara pada

pengembangan HOTS. Menggambarkan sintaks tahapan yang jelas dan seuai


dengan tujuan pembelajaran. Serta haru menggambarkan proses pencapaian

kompetensi.
g) Media pembelajaran : berupa alat bantu proses pembelajaran untuk

menyampaikan materi pelajaran, mendukunng pencapaian kompetensi dan


pembelajaran aktif dengan pendekatann ilmian, serta disesuakan dengan

karakteristik peserta didik. Memanfaatkan teknologi pembelajaran.


h) Sumber belajar : dapat berupa buku, media cetak elektronik alam sekitar dan

lain-lain.
i) Langkah-langkah pembelajaran : 1) Integrasi . 2) Pembelajaran dirancang

interaktif, inspiratif dan menyenangkan. 3) dilakukan melalui tahapan


pendahuluan, inti dan penutup.

j) Penilaian hasil belajar : 1) sesuai dengan kompetensi. 2) seuai dengan kegiatan


yang dilalakukan dalam pembelajaran. 3) sesuai materi pemebelajran. 4)

Memuat soal HOTS


k) Lampiran : adalah hal-hal yang mendukung pembelajaran, misalnya uraian

materi yang memang diperlukan atau instrument penilaian dilengkapi dengan


pedoman penskoran.

3. Rencana Pelaksanaan Pembelajaran


RENCANA PELAKSANAAN PEMBELAJARAN
Satuan Pendidikan : SMK Negeri 1 Karang Baru
Kompetensi Keahlian : Rekayasa Perangkat Lunak
Mata Pelajaran : Pemrograman Dasar
Tahun Pelajaran : 2018/2019
Kelas/Semester :X/1
Alokasi Waktu : 2 x 4 JP x 45 Menit

A. Kompetensi Inti
KI 1 : Menghayati dan mengamalkan ajaran agama yang dianutnya.
KI 2 :
Menghayati dan mengamalkan perilaku jujur, disiplin, tanggung jawab,
peduli (gotong royong, kerja sama, toleran, damai), bertanggung-jawab,
responsif, dan proaktif melalui keteladanan, pemberian nasihat, penguatan,
pembiasaan, dan pengkondisian secara berkesinambungan serta
menunjukkan sikap sebagai bagian dari solusi atas berbagai permasalahan
dalam berinteraksi secara efektif dengan lingkungan sosial dan alam serta
dalam menempatkan diri sebagai cerminan bangsa dalam pergaulan dunia.
KI 3 :
Memahami, menerapkan, menganalisis, dan mengevaluasi tentang
pengetahuan faktual, konseptual, operasional dasar, dan metakognitif
sesuai dengan bidang dan lingkup kerja Dasar-dasar Teknik Komputer dan
Informatika pada tingkat teknis, spesifik, detil, dan kompleks, berkenaan
dengan ilmu pengetahuan, teknologi, seni, budaya, dan humaniora dalam
konteks pengembangan potensi diri sebagai bagian dari keluarga, sekolah,
dunia kerja, warga masyarakat nasional, regional, dan internasional.
KI 4 :
Melaksanakan tugas spesifik, dengan menggunakan alat, informasi, dan
prosedur kerja yang lazim dilakukan serta menyelesaikan masalah
sederhana sesuai dengan bidang dan lingkup kerja Dasar-dasar Teknik
Komputer dan Informatika Menampilkan kinerja mandiri dengan mutu dan
kuantitas yang terukur sesuai dengan standar kompetensi kerja.
Menunjukkan keterampilan menalar, mengolah, dan menyaji secara efektif,
kreatif, produktif, kritis, mandiri, kolaboratif, komunikatif, dan solutif dalam
ranah abstrak terkait dengan pengembangan dari yang dipelajarinya di
sekolah, serta mampu melaksanakan tugas spesifik dibawah pengawasan
langsung. Menunjukkan keterampilan mempersepsi, kesiapan, meniru,
membiasakan gerak mahir, menjadikan gerak alami, sampai dengan
tindakan orisinal dalam ranah konkret terkait dengan pengembangan dari
yang dipelajarinya di sekolah, serta mampu melaksanakan tugas spesifik
dibawah pengawasan langsung
B. Kompetensi Dasar
3.8 Menganalisis penggunaan array untuk penyimpanan data di memori
4.8 Membuat kode program untuk menampilkan data array

C. Indikator Pencapaian Kompetensi


3.8.1 Menganalisis penggunan array untuk penyimpanan data
3.8.2 Mengidentifikasi penggunaan array untuk penyimpanan data
4.8.1. Membuat kode program untuk mendeklarasikan array
4.8.2. Membuat kode program untuk menyimpan data pada array
4.8.3. Membuat kode program untuk menampilkan data array

D. Tujuan Pembelajaran
Setelah proses mencari informasi, bertanya dan berdiskusi siswa dapat
1. Menganalisa penggunaan array untuk penyimpanan data pada memori dengan
benar.
2. Mengidentifikasi penggunaan array untuk penyimpanan data pada memori
dengan benar.
3. Membuat kode program untuk mendeklarasikan array dengan benar.
4. Membuat kode program untuk penyimpanan data pada array dengan benar.
5. Membuat kode program untuk menampilkan data pada array dengan benar.

E. Materi Pembelajaran
1. Pengantar array (larik)
2. Penjelasan pemanfaatan penggunaan array dalam penyimpanan data pada memori
3. Ragam metode pendeklarasian array
4. Teknik atau cara menyimpan data pada array
5. Teknik atau cara menampilkan data pada array

F. Metode Pembelajaran
1. Pendekatan Pembelajaran : Scientific Approach
2. Model Pembelajaran : Problem Based Learning
3. Metode Pembelajaran : Ceramah ,Tanya Jawab, Demonstrasi dan Praktikum

G. Media, Alat/Bahan dan Sumber Belajar


1. Media : Slide Presentasi
2. Alat : LCD Proyektor, Laptop
3. Sumber Belajar : Buku, Internet, Modul
H. Langkah-Langkah Kegiatan Pembelajaran
1. Pertemuan Pertama
Kegiatan Deskripsi Kegiatan Alokasi
Waktu
Pendahuluan Komunikasi 20 menit
a. Berdoa
b. Guru mengkondisikan lingkungan belajar siswa, tempat duduk,
kebersihan kelas, kerapian siswa.
c. Guru mengabsensi siswa kehadiran peserta didik, menanyakan
kabar, kesehatan, dan sebagainya.
d. Guru memotivasi siswa untuk giat belajar
e. Guru mengulang pelajaran pertemuan sebelumnya.

Apersepsi
a. Guru menyampaikan tujuan pembelajaran yaitu :
- Menganalisa penggunaan array untuk penyimpanan data pada
memori dengan benar.
- Mengidentifikasi penggunaan array untuk penyimpanan data
pada memori dengan benar.
b. Guru memberikan gambaran kepada siswa betapa pentingnya
pemahaman mengenai materi yang akan disampaikan
Inti 1. Tahap 1 : Orientasi Siswa Pada Masalah 150
a. Guru mengajukan masalah 1 “ Bagaimana cara menyimpan data- Menit
data yang homogen paling efektif pada memori ?”

b. Guru meminta siswa mengamati (membaca) dan memahami


masalah secara individu dan mengajukan hal-hal yang belum
dipahami terkait masalah yang disajikan.

c. Jika ada siswa yang mengalami masalah, guru mempersilahkan siswa


lain untuk memberikan tanggapan

d. Guru meminta siswa menuliskan informasi yang terdapat dari


masalah tersebut secara teliti dengan menggunakan bahasa sendiri.

2. Tahap 2 : Mengorganisasikan Siswa Untuk Belajar


a. Guru membentuk kelompok heterogen (dari sisi kemampuan,
gender, budaya, maupun agama) sesuai pembagian kelompok yang
telah direncanakan oleh guru.

b. Guru membagikan Lembar Aktivitas Siswa (LAS) yang berisikan


masalah dan langkah-langkah pemecahan serta meminta siswa
berkolaborasi untuk menyelesaikan masalah.
c. Guru berkeliling mencermati siswa bekerja, mencermati dan
menemukan berbagai kesulitan yang dialami siswa, serta
memberikan kesempatan kepada siswa untuk bertanya hal-hal yang
belum dipahami.

d. Guru memberi bantuan (scaffolding) berkaitan kesulitan yang


dialami siswa secara individu, kelompok, atau klasikal.

e. Mendorong siswa agar bekerja sama dalam kelompok.

3. Tahap 3 : Membimbing Penyeledikan Individu dan Kelompok


a. Guru mendorong siswa baik secara individu atau kelompok untuk
aktif dalam mencoba menyelesaikan masalah

b. Guru membimbing siswa dalam mengelola informasi yang telah


mereka dapatkan agar dapat menyelesaikan masalah yang telah
diberikan

4. Tahap 4 : Mengembangkan dan Menyajikan Hasil Karya


a. Guru meminta siswa menyiapkan laporan hasil diskusi kelompok
secara rapi, rinci, dan sistematis.

b. Guru berkeliling mencermati siswa bekerja menyusun laporan hasil


diskusi, dan memberi bantuan, bila diperlukan.

c. Guru meminta siswa menentukan perwakilan kelompok secara


musyawarah untuk menyajikan (mempresentasikan) laporan di
depan kelas.

5. Tahap 5 : Menganalisis dan Mengevaluasi Proses Pemecahan


Masalah
a. Guru meminta semua kelompok bermusyawarah untuk menentukan
satu kelompok yang mempresentasikan (mengkomunikasikan) hasil
diskusinya di depan kelas secara runtun, sistematis, santun, dan
hemat waktu.

b. Guru memberi kesempatan kepada siswa dari kelompok penyaji


untuk memberikan penjelasan tambahan dengan baik.

c. Guru memberi kesempatan kepada siswa dari kelompok lain untuk


memberikan tanggapan terhadap hasil diskusi kelompok penyaji
dengan sopan.

d. Guru melibatkan siswa mengevaluasi jawaban kelompok penyaji


serta masukan dari siswa yang lain dan membuat kesepakatan, bila
jawaban yang disampaikan siswa sudah benar.
e. Guru memberi kesempatan kepada kelompok lain yang mempunyai
jawaban berbeda dari kelompok penyaji pertama untuk
mengkomunikasikan hasil diskusi kelompoknya secara runtun,
sistematis, santun, dan hemat waktu. Apabila ada lebih dari satu
kelompok, maka guru meminta siswa bermusyawarah menentukan
urutan penyajian.

f. Langkah (c), (d), dan (e) sebagai satu siklus dapat dilaksanakan lagi
dan disesuaikan dengan waktu yang tersedia.

6. Guru mengumpulkan semua hasil diskusi tiap kelompok


7. Dengan tanya jawab, guru mengarahkan semua siswa pada
kesimpulan mengenai permasalahan tersebut.

Penutup 1. Guru menyampaikan materi untuk minggu depan 10


2. Guru menutup pelajaran Menit

2. Pertemuan Kedua
Kegiatan Deskripsi Kegiatan Alokasi
Waktu
Pendahuluan Komunikasi 10 menit
a. Berdoa
b. Guru mengkondisikan lingkungan belajar siswa, tempat duduk,
kebersihan kelas, kerapian siswa.
c. Guru mengabsensi siswa kehadiran peserta didik, menanyakan
kabar, kesehatan, dan sebagainya.
d. Guru memotivasi siswa untuk giat belajar
e. Guru mengulang pelajaran pertemuan sebelumnya.

Apersepsi
a. Guru menyampaikan tujuan pembelajaran yaitu :
- Menganalisa penggunaan array untuk penyimpanan data pada
memori dengan benar.
- Mengidentifikasi penggunaan array untuk penyimpanan data
pada memori dengan benar.
b. Guru memberikan gambaran kepada siswa betapa pentingnya
pemahaman mengenai materi yang akan disampaikan
Inti 1. Tahap 1 : Orientasi Siswa Pada Masalah 100
a. Guru mengajukan masalah 2 Menit
- Bagaimana mendeklarasikan array ?
- Bagaimana menginisialisasi array ?
- Bagaimana mendeklarasikan dan menginisialisasi array dalam
satu baris perintah ?
- Bagaimana kode program yang paling tepat untuk menampilkan
deret data yang tersimpan pada array ?
b. Guru meminta siswa mengamati (membaca) dan memahami
masalah secara individu dan mengajukan hal-hal yang belum
dipahami terkait masalah yang disajikan.

c. Jika ada siswa yang mengalami masalah, guru mempersilahkan siswa


lain untuk memberikan tanggapan

d. Guru meminta siswa menuliskan informasi yang terdapat dari


masalah tersebut secara teliti dengan menggunakan bahasa sendiri.

2. Tahap 2 : Mengorganisasikan Siswa Untuk Belajar


a. Guru membentuk kelompok heterogen (dari sisi kemampuan,
gender, budaya, maupun agama) sesuai pembagian kelompok yang
telah direncanakan oleh guru.

b. Guru membagikan Lembar Aktivitas Siswa (LAS) yang berisikan


masalah dan langkah-langkah pemecahan serta meminta siswa
berkolaborasi untuk menyelesaikan masalah.

c. Guru berkeliling mencermati siswa bekerja, mencermati dan


menemukan berbagai kesulitan yang dialami siswa, serta
memberikan kesempatan kepada siswa untuk bertanya hal-hal yang
belum dipahami.

d. Guru memberi bantuan (scaffolding) berkaitan kesulitan yang


dialami siswa secara individu, kelompok, atau klasikal.

e. Mendorong siswa agar bekerja sama dalam kelompok.

3. Tahap 3 : Membimbing Penyeledikan Individu dan Kelompok


a. Guru mendorong siswa baik secara individu atau kelompok untuk
aktif dalam mencoba menyelesaikan masalah

b. Guru membimbing siswa dalam mengelola informasi yang telah


mereka dapatkan agar dapat menyelesaikan masalah yang telah
diberikan

4. Tahap 4 : Mengembangkan dan Menyajikan Hasil Karya


a. Guru meminta siswa menyiapkan laporan hasil diskusi kelompok
secara rapi, rinci, dan sistematis.

b. Guru berkeliling mencermati siswa bekerja menyusun laporan hasil


diskusi, dan memberi bantuan, bila diperlukan.

c. Guru meminta siswa menentukan perwakilan kelompok secara


musyawarah untuk menyajikan (mempresentasikan) laporan di
depan kelas.
5. Tahap 5 : Menganalisis dan Mengevaluasi Proses Pemecahan
Masalah
a. Guru meminta semua kelompok bermusyawarah untuk menentukan
satu kelompok yang mempresentasikan (mengkomunikasikan) hasil
diskusinya di depan kelas secara runtun, sistematis, santun, dan
hemat waktu.

b. Guru memberi kesempatan kepada siswa dari kelompok penyaji


untuk memberikan penjelasan tambahan dengan baik.

c. Guru memberi kesempatan kepada siswa dari kelompok lain untuk


memberikan tanggapan terhadap hasil diskusi kelompok penyaji
dengan sopan.

d. Guru melibatkan siswa mengevaluasi jawaban kelompok penyaji


serta masukan dari siswa yang lain dan membuat kesepakatan, bila
jawaban yang disampaikan siswa sudah benar.

e. Guru memberi kesempatan kepada kelompok lain yang mempunyai


jawaban berbeda dari kelompok penyaji pertama untuk
mengkomunikasikan hasil diskusi kelompoknya secara runtun,
sistematis, santun, dan hemat waktu. Apabila ada lebih dari satu
kelompok, maka guru meminta siswa bermusyawarah menentukan
urutan penyajian.

f. Langkah (c), (d), dan (e) sebagai satu siklus dapat dilaksanakan lagi
dan disesuaikan dengan waktu yang tersedia.

6. Guru mengumpulkan semua hasil diskusi tiap kelompok


7. Dengan tanya jawab, guru mengarahkan semua siswa pada
kesimpulan mengenai permasalahan tersebut.

Penutup 3. Guru menyampaikan materi untuk minggu depan 10


4. Guru menutup pelajaran Menit

I. Penilaian
Aspek Penilaian Jenis Tes Bentuk Tes Jumlah Soal Waktu
Pengetahuan Tes Tertulis Pilihan Ganda 10 Soal 20 Menit
Keterampilan Praktikum Uji Kinerja 2 Soal 40 Menit
Sikap Non Test Pengamatan - Selama Proses Belajar

J. Lampiran
Soal Pilihan Ganda :
1. Tipe data terstruktur yang dapat menyimpan sejumlah data yang bersifat
homogeny disebut dengan
a. Array
b. Variabel
c. Konstanta
d. Tipe Data
e. Database
2. Indeks dari sebuah array dimulai dari :
a. 0
b. 1
c. -1
d. 100
e. 10
3. Pendeklrasian array dengan jumlah array 10 bertipe data integer yang tepat adalah
:
a. double a[10];
b. Int a[10];
c. Int a[11];
d. Int a[ ];
e. float a[10];
4. Deklarasi array sekaligus inisialisasi data array dengan jumlah data sebanyak 4
bertipe data float yang tepat adalah;
a. float b[4]={1.2, 3.2, 4.2, 5.2};
b. int b[4]={1,2,3,4};
c. float b[3]={1,2,3,4};
d. double b[4]= {1.2, 3.2, 4.2, 5.2};
e. float b[2]= {1.2, 3.2, 4.2, 5.2};
5. Jika indeks terakhir dari sebuah array adalah 9 maka, jumlah data yang dapat
ditampung oleh array tersebut adalah …
a. 10
b. 9
c. 1
d. 0
e. 8

6. Berikut yang bukan merupakan pembagian array berdasarkan dimensi adalah …


a. Array 1 dimensi
b. Array 2 dimensi
c. Array multi dimensi
d. Array jagged
e. Array non dimensi
7. Output dari script berikut adalah ....

a. 2359147
b. 7419532
c. 5 8 14 10 5 11 7
d. 7 11 5 10 14 8 5
e. 5 8 14 9 4 7

8. Tampilan yang dicetak ke layar adalah ...

a. 6
b. 4
c. 64
d. 46
e. 47

9. Data variabel array pada elemen arr[4] adalah ...

a. 3
b. 2
c. 7
d. 5
e. 6
10. Jika kita ingin membuat sebuah variabel array 2 dimensi dengan jumlah elemen 3
baris 4 kolom bertipe data integer, maka deklarasi yang tepat adalah ...
a. char A [3][4]
b. int A [3][4]
c. int A [4][3]
d. double A [3][4]
e. float A [3][4]
Lembar Penilaian Keterampilan
Indikator :
1. Membuat kode program untuk mendeklarasikan array
2. Membuat kode program untuk menyimpan data pada array
3. Membuat kode program untuk menampilkan data array
Acuan Penilaian :
1. Kurang Terampil jika sama sekali tidak dapat membuat kode program untuk
mendeklarasikan array, menyimpan data pada array, menampilkan data pada array.
2. Terampil jika dapat membuat kode program untuk mendeklarasikan array,
menyimpan data pada array, menampilkan data pada array.
3. Sangat Terampil jika mampu membuat membuat kode program untuk
mendeklarasikan array, menyimpan data pada array, menampilkan data pada array
dengan presisi dan efesien serta dapat mengembangkannya kedalam aplikasi yang
user friendly!

Soal Keterampilan
1. Buatlah kode program untuk menyimpan 10 data berupa nilai siswa dalam bentuk
decimal, kemudian menampilkan 10 data tersebut secara berurutan dari indeks
paling akhir dengan menggunakan perulangan (looping) !
2. Buatlah kode program untuk menyimpan 5 data berupa umur siswa yang diinputkan
oleh pengguna (user) kemudia menampilkan 5 data tersebut secara berurutan dari
indeks pertama dengan menggunakan perulangan (looping) !

Keterampilan
No Nama Siswa
Sangat Terampil Terampil Kurang Terampil
1
2
3
4
5
6
7
8
9
10
1. Pengantar Array (Larik)

Array atau sering disebut sebagai larik adalah tipe data yang sudah terstruktur dengan baik, meskipun
masih sederhana. Array mampu menyimpan sejumlah data dengan tipe yang sama (homogen) dalam
sebuah variabel. Setiap lokasi data array diberi nomor indeks yang berfungsi sebagai alamat dari data
tersebut.

Variabel-variabel yang kita gunakan selama ini adalah variable biasa yang memiliki sifat bahwa sebuah
nama variable hanya dapat menyatakan sebuah nilai numeric atau string pada suatu saat. Apabila kita
ingin memberi nilai yang baru pada variable tersebut maka nilai lama akan hilang tergantikan oleh nilai
yang baru. Bagaimana apabila kita ingin menyimpan beberapa nilai/data dalam sebuah variable dengan
nama yang sama, tetapi semua nilai tetap tersimpan? Solusi yang dapat dilakukan adalah dengan
menggunakan indeks pada nama variable tersebut. Cara ini biasa disebut dengan array.

Array adalah struktur data yang menyimpan sekumpulan elemen yang bertipe sama, setiap elemen
diakses langsung melalui indeksnya. Indeks array haruslah tipe data yang menyatakan ke-ter-urut-an,
misalnya integer atau string. Array dapat dianalogikan sebagai sebuah lemari atau locker yang memiliki
sederetan kotak penyimpanan yang diberi nomor berurutan. Untuk menyimpan atau mengambil sesuatu
dari kotak tertentu kita hanya cukup mengetahui nomor kotaknya saja.

Pada variabel array, kita tidak hanya menentukan tipe datanya saja, tetapi juga jumlah elemen dari array
tersebut atau dalam hal ini adalah batas atas indeksnya. Pada

banyak bahasa pemrograman seperti C++, Visual Basic, dan beberapa yang lainnya, nilai indeks awal
adalah 0 bukan 1. Cara menuliskan variabel array berbeda-beda tergantung bahasa pemrograman apa
yang dipakai. Tetapi yang pasti tipe data harus disebutkan dan batas atas indeks harus ditentukan. Untuk
mengisi data pada array kita dapat langsung menentukan pada indeks berapa kita akan isikan demikian
juga untuk memanggil atau menampilkan data dari array.

Contoh Deklarasi,Inisialisai(pengisian) dan pemanggilan array


Jika diperhatikan kembali dengan baik, script diatas kurang baik, karena melakukan perintah untuk hal
yang sama berulang kali. Untuk array dengan Jumlah Indeks 5 mungkin hal tersebut tidak terlalu
bermasalah, bayangkan jika jumlah Indeksnya ada 100 ! pasti akan menjadi script yang sangat panjang
jika harus dituliskan satu per satu. Solusinya adalah dengan menggunakan pengulangan, dengan
pengulangan kita bisa mempersingkat script diatas dan tidak mengulangi perintah yang sama secara
berulang-ulang

2. Pencarian data dalam array (larik)


Salah satu permasalahan yang sering dijumpai dalam array adalah bagaimana mencari elemen
tertentu dari array. Misalnya pada kasus loker pada Gam di atas tersedia 100 kotak. Kemudian kita
diminta untuk mencari nomor kotak keberapa yang dimiliki oleh seorang siswa bernama “Rudi”. Contoh
yang lain, misalkan ada 127 banyak siswa dalam satu sekolah dan kita diminta mencari data seorang siswa
dengan nama tertentu atau alamat tertentu. Perhatikan contoh berikut :

Pada contoh ini kita diminta mencari elemen yang berisi bilangan 12 dari sekumpulan elemen
dalam array. Pada contoh diatas terdapat 6 elemen dalam array tersebut, menurut kalian bagaimanakah
algoritma penyelesaiannya ?

Cara yang paling umum dan paling mudah digunakan adalah dengan menggunakan metode
pencarian berurutan (linear search). Pada masa lalu cara ini dianggap tidak efisien karena membutuhkan
waktu lama. Namun dengan perkembangan komputer yang sangat cepat, waktu eksekusi algoritma ini
tidak terlalu dipermasalahkan. Cara ini dilakukan dengan cara membandingkan isi dari elemen dengan
apa yang kita cari. Satu per satu dimulai dari elemen yang paling awal.
Apabila kita terapkan pada contoh diatas, maka eksekusi program secara berurutan akan
berlangsung seperti berikut.

 Inisialisasi elemen array


 Tetapkan bilangan yang ingin dicari, dalam contoh ini yaitu 12
 Ambil elemen array paling awal (indeks pertama) yaitu A[0] kemudian bandingkan isi elemen array
tersebut dengan bilangan yang kita cari. Jika sama maka STOP
 Jika tidak maka lanjutkan dengan elemen berikutnya yaitu [A1] kemudian bangdingkan isi elemen
array tersebut dengan bilangan yang kita cari. Jika sama maka STOP.
 Jika tidak maka lanjutkan dengan elemen berikutnya. Dan seterusnya sampai dijumpain elemen
yang berisi sama dengan bilangan yang dicari.

Mari kita terapkan algoritma diatas kedalam Bahasa pemograman C. Buka aplikasi Dev C++ yang sudah
terinstall dalam Notebook kalian lalu ketikkan perintah berikut :

Tugas :
Buatlah algoritma, Flowchart dan aplikasi yang mengandung
Array dengan jumlah elemen 20
Input data array dari user dengan menggunakan pengulangan
Menampilkan isi elemen array yang hanya memiliki bilangan ganjil

3. Pengurutan data pada array


Masalah lain yang dijumpai pada array adalah bagaimana cara mengurutkan data pada array. Ada
beberapa algoritma yang dapat digunakan untuk mengurutkan sekelompok bilangan, diantaranya adalah
bubble sort,selection sort,shell short,quick sort, dan lain-lain. Pada module kali ini kita akan membahas
bagaimana mengurutkan data pada array dengan menggunakan teknik bubble sort.

Berikut adalah contoh deret bilangan yang di inisialisasikan ke dalam array yang selanjutnya akan
kita urutkan dengan menggunakan teknik bubble sort.

Data 20 12 35 11 17 9 58 23

Indeks 0 1 2 3 4 5 6 7

di metode bubble sort, proses pengurutan dimulai dengan membandingkan elemen pertama dengan
elemen selanjutnya, kemudian dicari bilangan yang lebih besar lalu data pada elemen ditukar apabila data
pada elemen pertama lebih besar dibandingkan pada elemen selanjutnya. Pada tahap awal kita akan
membandingkan elemen 0 dengan elemen 1, jika data pada elemen 0 lebih besar dari pada elemen 1
maka, isi (data) pada kedua elemen tersebut akan ditukar. Sehingga data pada elemen menjadi seperti
berikut

Data 12 20 35 11 17 9 58 23

Indeks 0 1 2 3 4 5 6 7

Lalu data pada elemen 1 dengan elemen 2 dibandingkan, apabila data pada elemen 1 lebih besar dari
pada elemen 2 maka data tersebut ditukar, akan tetapi apabila data pada elemen 1 tidak lebih besar dari
pada elemen 2 maka data tidak ditukar. Sehingga menjadi seperti berikut.

Data 12 20 35 11 17 9 58 23

Indeks 0 1 2 3 4 5 6 7

Perbandingan selanjutnya dilakukan pada elemen 2 dan elemen 3, apabila data pada elemen ke-2
lebih besar maka data tersebut ditukar,

Data 12 20 11 35 17 9 58 23

Indeks 0 1 2 3 4 5 6 7

Proses perbandingan diatas dilakukan secara berulang sampai pada elemen terakhir sehingga menjadi
seperti berikut

Data 12 20 11 17 9 35 23 58
Indeks 0 1 2 3 4 5 6 7

Proses diatas hanya untuk mencari bilangan terbesar pertama yang akan diletakkan pada elemen
terakhir. Ulangi proses tersebut untuk mencari bilangan terbesar lainnya, namun proses tersebut hanya
akan dilakukan dari elemen 0 sampai dengan elemen ke-6 (karena elemen ke-7 merupakan data yang
paling besar).

Data 12 20 11 17 9 35 23 58

Indeks 0 1 2 3 4 5 6 7

Bandingkan elemen 0 dengan elemen 1.jika lebih besar maka tukar data pada elemen tersebut. Karena
data pada elemen 1 lebih besar maka data tidak ditukarkan

Data 12 20 11 17 9 35 23 58

Indeks 0 1 2 3 4 5 6 7

Kemudian bandingkan data pada elemen 1 dengan data pada elemen 2, karena lebih besar maka
tukarkan data tersebut.

Data 12 11 20 17 9 35 23 58

Indeks 0 1 2 3 4 5 6 7

Selanjutnya bandingkan data pada elemen 2 dengan data pada elemen 3,

Data 12 11 17 20 9 35 23 58

Indeks 0 1 2 3 4 5 6 7

Lanjutkan proses diatas sampai pada elemen ke-6 sehingga menjadi seperti berikut

Data 12 11 17 9 20 23 35 58

Indeks 0 1 2 3 4 5 6 7

Kini data pada elemen ke-6 dan ke-7 sudah urut berdasarkan bilangan kecil ke besar. Namun elemen
lainnya belum terurut, untuk itu ulangi proses diatas, namun elemen yang dibandingkan hanya pada
elemen ke-6 saja. Setelah itu, proses perbandingan diulangi sampai elemen yang terakhir dibandingkan
adalah elemen ke-1. Sehingga hasil akhirnya akan menjadi seperti berikut.
Data 9 11 12 17 20 23 35 58

Indeks 0 1 2 3 4 5 6 7

Jika proses diatas di implementasikan ke dalam flowchart maka akan terlihat seperti berikut

s ta rt

Int
A [8 ]= {2 0 , 1 2 ,
3 5, 11 , 17 , 9 ,
5 8, 23 }

F or k = 6 to 0

F or i= 0 to k

If A [i]> A [i+ 1 ]

S wa p( A [i],A [i+ 1 ])

T a mpilka n
a rra y

s top

Dalam proses pertukaran data pada elemen kita menggunakan fungsi swap, fungsi swap ini telah
disediakan oleh Visual Studio, jadi kita tidak memerlukan Variable tambahan untuk proses penukaran
data. Sedangkan untuk menampilkan array dalam flowchar diatas saya persingkat sebagai sub/prosedur
terpisah. Karena untuk hal tersebut saya rasa semuanya sudah paham.

Setelah kita paham langkah kerja dan flowchart-nya maka tahap selanjutnya kita akan menerapkan
algoritma dan Flowchart tersebut dalam bentuk baris Code program dengan menggunakan bahasa C.