Array. Teknik Informatika Politeknik Negeri Batam

dokumen-dokumen yang mirip
c. Hasil pencarian berupa nilai Boolean yang menyatakan status hasil pencarian. Versi 1 (Pembandingan elemen dilakukan sebagai kondisi pengulangan)

PENCARIAN BERUNTUN (SEQUENTIAL SEARCHING)

Larik/Array ALGORITMA DAN PEMROGRAMAN [IS ] Dosen: Yudha Saintika, S.T., M.T.I

Algoritma Pemrograman

Algoritma Pemrograman

Algoritma Pemrograman

ARRAY (LARIK) Altien Jonathan Rindengan, S.Si., M.Kom.

Algoritma Pemrograman

1 Pencarian. 1.1 Tinjauan Singkat Larik

Bubble Sort (Pengurutan Gelembung / Pemberatan)

Algoritma Pemrograman

Algoritma Pemrograman

Pertemuan XII ALGORITMA. Algoritma & Pemrograman Ken Kinanti P 1. {Pencarian Beruntun / Sequential Search}

ALGORITMA PENCARIAN. c. Hasil pencarian berupa nilai Boolean yang menyatakan status hasil pencarian.

Kompleksitas Algoritma (1)

MODUL IV PENCARIAN DAN PENGURUTAN

Searching [pencarian] Algoritma Pemrograman

Algoritma Pemrograman

Sebuah algoritma tidak saja harus benar, tetapi juga harus mangkus (efisien). Algoritma yang bagus adalah algoritma yang mangkus.

Identitas dosen POKOK BAHASAN. Suherman,, ST Address. : Cilegon Mobile : Ym Blog

Algoritma Brute Force (Bagian 1) Oleh: Rinaldi Munir

Algoritma & Pemrograman

Pencarian pada Array. Tim PHKI Modul Dasar Pemrograman Fakultas Ilmu Komputer UDINUS Semarang

Modul Ke-1 Pertemuan ke-1 Deskripsi: Pemrosesan Sekuensial Larik Nama File: P01-XXX (XXX adalah 3 digit terakhir NPM)

Algoritma Pemrograman

Kompleksitas Algoritma

STRUKTUR DATA. Pengajar. Jaidan Jauhari, M.T. Alamat

Algoritma Brute Force

Kompleksitas Algoritma

Algoritma Pemrograman

PERBANDINGAN KOMPLEKSITAS ALGORITMA PENCARIAN BINER DAN ALGORITMA PENCARIAN BERUNTUN

AlgoritmaBrute Force. Desain dan Analisis Algoritma (CS3024)

AnalisisFramework. Mengukur ukuran atau jumlah input Mengukur waktu eksekusi Tingkat pertumbuhan Efiesiensi worst-case, best-case dan average-case

Algoritma Pemrograman

Algoritma dan Struktur Data

BAB VI SEARCHING (PENCARIAN)

Algoritma Pemrograman

Algoritma Pemrograman

ALGORITMA TUGAS 2 RESUME ALGORITMA PERCABANGAN DAN ALGORITMA PERULANGAN. Disusun Oleh : Sakina Mawardah Teknik Informatika. Dosen : Asep M. Yusuf, S.

ALGORITMA DAN PEMROGRAMAN 2. 3 SKS By : Sri Rezeki Candra Nursari

Yaitu proses pengaturan sekumpulan objek menurut urutan atau susunan tertentu Acuan pengurutan dibedakan menjadi :

Array (Tabel) Tim Pengajar KU1071 Sem /11/3 TW/KU1071 1

CCH1A4 / Dasar Algoritma & Pemrogramanan

PENGULANGAN. pencacah harus bertipe integer atau karakter pernyataan adalah satu atau lebih instruksi yang. Pernyataan

BAB 1 PENGANTAR KE STRUKTUR DATA

STRUKTUR DASAR ALGORITMA DAN PEMROGRAMAN STMIK AMIKOM YOGYAKARTA

Algoritma Pemrograman

DIKTAT STRUKTUR DATA Oleh: Tim Struktur Data IF

Algoritma Pemrograman

Algoritma Pemrograman

STRUKTUR DASAR ALGORITMA

DASAR PEMROGRAMAN. Institut Teknologi Sumatera

DIKTAT STRUKTUR DATA Oleh: Tim Struktur Data IF

DIKTAT KULIAH STRUKTUR DATA. Disusun oleh: Sri Primaini A.

Algoritma dan Pemrograman 2 PENGURUTAN

Algoritma Pencarian String dalam Pemilihan Anggota Sebuah Organisasi

Pendahuluan. Sebuah algoritma tidak saja harus benar, tetapi juga harus efisien. Algoritma yang bagus adalah algoritma yang efektif dan efisien.

Kuliah ke : 4 Algoritma & Stuktur Data. Pengurutan (Sorting)

Pengurutan (Sorting) Algoritma Pemrograman

Pert 3: Algoritma Pemrograman 1 (Alpro1) 4 sks. By. Rita Wiryasaputra, ST., M. Cs.

STRUKTUR DASAR ALGORITMA

REVIEW ARRAY. Institut Teknologi Sumatera

Algoritma Pemrograman

CCH1A4 / Dasar Algoritma & Pemrogramanan

Struktur Pengulangan

1. Inggriani Liem Catatan Kuliah Algoritma & Pemrograman, Jurusan Teknik Informatika ITB

BAB I PENGENALAN STRUKTUR DATA

Algoritma Pemrograman

Algoritma Pemrograman

Pertemuan Ke- 6 dan 7 Pengulangan atau Looping. Rahmady Liyantanto. liyantanto.wordpress.com. S1 Teknik Informatika-Unijoyo

PSEUDOCODE TIPE DATA, VARIABEL, DAN OPERATOR

Algoritma dan Pemrograman 2 PENCARIAN

PENGULANGAN Bagian 1 : Notasi. Tim Pengajar KU1071 Sem

Konstruksi Dasar Algoritma

Kompleksitas Algoritma

Algoritma Pemrograman

MODUL PRAKTIKUM STRUKTUR DATA Modul ke-1, Pertemuan ke-1 Nama file : P01-XXX (XXX adalah 3 digit terakhir NIM) Deskripsi: Senarai, Traversal

Algoritma Pemrograman

VARIABEL, TIPE DATA, KONSTANTA, OPERATOR DAN EKSPRESI. Pemrograman Dasar Kelas X Semester 2

Algoritma dan Struktur Data I Mia Fitriawati, S.Kom, M.Kom

1. Kompetensi Mengenal dan memahami notasi-notasi algoritma yang ada.

Algoritma dan Struktur Data

Pengurutan (Sorting) Keuntungan Data Terurut. Pengurutan Terbagi Dua Kelompok:

Algoritma dan Pemrograman Searching/Pencarian

Pertemuan Ke-2 (Teks Algoritma) Rahmady Liyantanto. S1 Teknik Informatika-Unijoyo

algoritma & pemrograman

Algoritma Pemrograman

Algoritma. Menurut Kamus Besar Bahasa Indonesia Algoritma adalah urutan logis pengambilan putusan untuk pemecahan masalah.

BAB III SISTEM PENDUKUNG KEPUTUSAN PEMILIHAN PRODUK PROVIDER GSM MENGGUNAKAN METODE WEIGHTED PRODUCT

LOOPING. Brigida Arie Minartiningtyas, M.Kom

Algoritma Pemrograman

1. Inggriani Liem Catatan Kuliah Algoritma & Pemrograman, Jurusan Teknik Informatika ITB

SEQUENTIAL SEARCH 11/11/2010. Sequential Search (Tanpa Variabel Logika) untuk kondisi data tidak terurut

Soal hari Jumat (16/10) Latihan 10 MS

IMPLEMENTASI ALGORITMA GREEDY PADA PERMAINAN OTHELLO

QUEUE (ANTRIAN) Struktur Data - Queue

Algoritma dan Pemrograman 1. By. Rita Wiryasaputra, ST., M. Cs.

Algoritma Brute Force

Algoritma Pemrograman

Soal hari Selasa (13/10) Latihan 7 AN

Transkripsi:

Array Teknik Informatika Politeknik Negeri Batam

Pendahuluan

Array

Array A 1 158 2 157 3 162 4 169 5 172 6 155 7 170 8 163 Isi A[1] adalah 158 Isi A[2] adalah 157 Isi A[8] adalah 163

Struktur data statik : jumlah elemen harus sudah diketahui sebelum program dieksekusi + Jumlah elemen bersifat tetap Arti Deklarasi Array

Cara mengacu elemen array

Program PemrosesanArray Deklarasi : const Nmaks=100 type LarikInt : array [1..Nmaks] of integer A: LarikInt i: integer Inisialisasi i 1 While i Nmaks do pemrosesan terhadap A[i] i i+1 endwhile terminasi Inisialisasi For i 1 to Nmaks do pemrosesan terhadap A[i] endfor terminasi

Mengisi elemen array dengan pembacaan

Kapan Menggunakan Array Program Rata2TanpaArray Deklarasi x1,x2,x3,x4,x5,x6:integer u:real Algoritma read(x1,x2,x3,x4,x5,x6) u x1+x2+x3+x4+x5+x6/6 write(u) Jika kita punya sejumlah data yang bertipe sama dan kita perlu menyimpan sementara data tsb, untuk dimanipulasi

Kapan Menggunakan Array? Program RataRata Deklarasi const Nmaks=100 type LarikInt:array[1..Nmaks] of real A: LarikInt i,n: integer u,jumlah:real Algoritma //isi array read(n) //jumlah data for i 1 to n do read(a[i]) endfor //hitung rata-rata jumlah 0 for i 1 to n do jumlah jumlah + A[i] endfor u jumlah/n write(u)

Mencari Nilai Maksimum Array Juara kelas Mahasiswa paling tinggi Array terurut menaik elemen terakhir Array tersusun acak? Array terurut menurun elemen pertama

Asumsi: nilai maksimum sementara(maks) adalah nilai yang sangat kecil(-9999) Array dikunjungi mulai dari elemen pertama Jika elemen yang dikunjungi lebih besar dari maks, maks diganti dengan elemen tersebut Mencari Nilai Maksimum Arrayv1

Mencari Nilai Maksimum Array-v1 Asumsi:maks=-9999 A[1]>maks? Ya maks A[1] (maks=158) A[2]>maks? Tidak maks tidak berubah A[3]>maks?... maks... A[4]>maks?... maks... A[5]>maks?... maks... A[6]>maks?... maks... A[7]>maks?... maks... A[8]>maks?... maks... A 1 158 2 157 3 162 4 169 5 172 6 155 7 170 8 163 Maks=172

Mencari Nilai Maksimum Array-v1 Program CariMaks Deklarasi const Nmaks=100 type LarikInt:array[1..Nmaks] of integer A: LarikInt i,n,maks: integer Algoritma //isi array read(n) for i 1 to n do read(a[i]) //cari nilai maksimum Maks -9999 For i 1 to n do if A[i]>maks then endif endfor maks A[i] write(maks) Kelemahan : kasus ada elemen yang bernilai kurang dari -9999

Mencari Nilai Maksimum Array-v2 Maks diinisialisasi dengan elemen pertama array Array dikunjungi mulai dari elemen kedua A 1 100 2 87 3 162 4 150 5 240 6 202 7 90 8 163 Asumsi:maks=A[1] A[2]>maks?..... maks.... A[3]>maks?..... maks.... A[4]>maks?..... maks.... A[5]>maks?..... maks.... A[6]>maks?..... maks.... A[7]>maks?..... maks.... A[8]>maks?..... maks.... Maks =....

Mencari Nilai Maksimum Array-v2 Program CariMaksV2 Deklarasi const Nmaks=100 type LarikInt:array[1..Nmaks] of integer A: LarikInt i,n,maks: integer Algoritma //isi array read(n) for i 1 to n do read(a[i]) endfor //cari nilai maksimum Maks A[1] For i 2 to n do if A[i]>maks then endif endfor maks A[i] write(maks)

Mencari Nilai Maksimum Array-v3: Mencari posisi atau indeks elemen array yang bernilai maksimum Program CariMaksV3 Deklarasi const Nmaks=100 type LarikInt:array[1..Nmaks] of integer A: LarikInt i,n,idmaks: integer Algoritma //isi array read(n) for i 1 to n do read(a[i]) endfor //cari indeks elemen bernilai maksimum IdMaks.... For i 2 to n do if A[i]>A[IdMaks] then endif endfor IdMaks.... write(idmaks)

Mencari nilai tertentu Mencari kata di kamus Mencari nomor telpon di hp Mencari alamat di perumahan Pencarian beruntun Sampai nilai yang dicari ditemukan Sampai seluruh elemen array diperiksa

Algoritma pencarian V1 tanpa menggunakan variabel boolean Program CariX_V1 Deklarasi const Nmaks=100 type LarikInt:array[1..Nmaks] of integer A: LarikInt i,n,x,idx: integer Algoritma //isi array read(n) for i 1 to n do read(a[i]) endfor Write( Nilai yang dicari : ) Read(x) i 1 while i<n and A[i] x do i i+1 Endwhile if A[i]=x then Idx i write( ditemukan di indeks ke, idx) else write( tidak ditemukan ) endif

Algoritma pencarian V2 dengan menggunakan variabel boolean Program CariX_V2 Deklarasi const Nmaks=100 type LarikInt:array[1..Nmaks] of integer A: LarikInt i,n,x,idx: integer ketemu : boolean Algoritma read(n) for i 1 to n do read(a[i]) endfor Write( Nilai yang dicari : ) Read(x) i 1 Ketemu false while i n and not ketemu do if A[i] =x then else endif ketemu true i i+1 Endwhile if ketemu then else endif Idx i write( ditemukan di indeks ke, idx) write( tidak ditemukan )

Kasus Lain

Kasus Lain A 1 100 2 87 3 162 4 150 5 240 6 202 7 90 8 163 B 1 100 2 87 3 162 4 150 5 240 6 202 7 90 8 163 C 1 100 2 87 3 162 4 150 5 245 6 202 7 90 8 163

Array Bertipe Terstruktur NIM Nama IPK 1 298001 Heru 3.5 2 298002 Ika 2.87 3 298003 Maya 3.45 4 298004 Santi 3.8 5 6.. 100 298100 Soni 2.77 Isi record : NIM Nama IPK

Array Bertipe Terstruktur Deklarasi : const Nmaks=100 type Mahasiswa : record <NIM : string, nama : string, IPK : real> type TabMhs:array[1..Nmaks] of Mahasiswa Mhs: TabMhs

Array Bertipe Terstruktur

String sebagai array karakter Definisi : array karakter dengan panjang dinamis Karena string adalah array, maka elemenelemen string diakses melalui indeks S: string S Ini Budi Panjang : 8 Elemen-elemennya : S[1]= I S[2]= n S[3]= i S[4]= S[5]= B S[6]= u S[7]= d S[8]= i

Tugas Buat alat peraga/video/animasi yang menggambarkan algoritma di bawah ini. Jika algoritma blm tersedia, tulis algoritmanya dulu. Kumpulkan laporan dan hasil minggu depan(learning da didemokan) Kelompok Kel1 Kel2 Kel3 Kel4 kel5 Kel6 Kel7 Kel8 Kel9 Kel10 Deskripsi menghitung rata-rata pada array Mencari Nilai Maksimum Array-v1 Mencari Nilai Maksimum Array-v2 Mencari Nilai Maksimum Array-v3 Mencari nilai tertentu(tanpa menggunakan variabel boolean) Mencari nilai tertentu(dengan menggunakan variabel boolean) Menyalin array Menguji kesamaan 2 buah array Array Bertipe Terstruktur, untuk mencari status lulus.jika IPK >=2, mahasiswa dikatakan lulus Membalik Isi Array

Referensi Rinaldi Munir, Algoritma dan Pemrograman dalam Bahasa Pascal dan C (Edisi Ke-3), penerbit Informatika, 2005