Konsep Array dalam PBO

dokumen-dokumen yang mirip
BAB 6 POINTER DAN REFERENCE

Pointer dan Referensi

Komentar, Identifier, Konstanta dan Variabel

PEMROGRAMAN BERORIENTASI OBJEK. Tipe Data. Budhi Irawan, S.Si, M.T

PEMROGRAMAN BERORIENTASI OBJEK

PEMROGRAMAN BERORIENTASI OBJEK. Pengulangan. Budhi Irawan, S.Si, M.T

Array 1 Dimensi pada Java

PEMROGRAMAN BERORIENTASI OBJEK STRUCTURE & CLASS

Array (Larik) Modul 7

PEMROGRAMAN BERORIENTASI OBJEK. Percabangan. Budhi Irawan, S.Si, M.T

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

Array Dimensi Satu. Pendahuluan. Slamet Kurniawan, S.Kom

Cara pertama adalah pada saat deklarasi variabel ditambahkan ke- yword const sebelum nama tipe data seperti

ARRAY PENGANTAR PROGRAM STUDI. Institut Teknologi Sumatera

MODUL V POINTER DAN STRING

Algoritma Pemrograman & Struktur Data

ARRAY / LARIK. Oleh : Agus Priyanto, M.Kom SEKOLAH TINGGI TEKNOLOGI TELEMATIKA TELKOM. Smart, Trustworthy, And Teamwork

ARRAY. contoh : A[1] := 10; var A : array[1..10] of integer; A[nomer_indeks]

PEMROGRAMAN BERORIENTASI OBJEK. Operator. Budhi Irawan, S.Si, M.T

REVIEW ARRAY. Institut Teknologi Sumatera

LARIK (ARRAY) Latar Belakang Array

Pemrograman I Bab III Tipe Data, Variabel, dan Operasi Perhitungan. Adam Mukharil Bachtiar, S.Kom. Universitas Komputer Indonesia

Larik/ Array int a1, a2, a3, a4, a5;

Pengenalan C++ Oleh : Dewi Sartika

KU-1072 Pengenalan Teknologi Informasi - B. Materi: Array. Fakultas Ilmu dan Teknologi Kebumian

DASAR PEMROGRAMAN ARRAY. Array Satu Dimensi Array Dua Dimensi. Yoannita. Some slide from Hermawan,S.Kom

PRAKTIKUM 4 PERCABANGAN

PEMROGRAMAN BERORIENTASI OBJEK OBJECT

Tipe Data dan Operator

Identifier Tipe Data Yoannita, S.Kom.

Pemrograman Dasar A R R A Y

BAB VI TIPE DATA ARRAY

SOAL C++ Created by Yuli Astuti,S.Kom Copyright 2009

Makalah. STRUKTUR DATA ( Array )

Konsep Dasar Pemrograman Dan Pengenalan C++

Pertemuan 2 ARRAY DIMENSI 1 & 2

1. Tipe Data Sederhana Hanya dimungkinkan untuk menyimpan sebuah nilai data dalam sebuah variabel Ada 5 macam : int, float, double, char, boolen

Matriks. Tim Pengajar KU1072. KU1072/Pengenalan Teknologi Informasi B Tahap Tahun Pertama Bersama Institut Teknologi Bandung

Basic Input/Output Operator Yoannita

Array 1 A. TUJUAN PEMBELAJARAN

8. Pointer. S. Indriani L, M.T

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

1 Array dan Tipe Data Bentukan

PEMROGRAMAN BERORIENTASI OBJEK KONSEP PBO

ARRAY DIMENSI 1 & 2. Array dapat didefinisikan sebagai suatu himpunan hingga elemen yang terurut dan homogen.

ALGORITMA DAN STRUKTUR DATA POINTER DAN FUNCTION

BAB 5 PERULANGAN DAN ARRAY

SEKOLAH TINGGI MANAJEMEN INFORMATIKA DAN KOMPUTER STMIK AMIKOM YOGYAKARTA

Kurikulum Qt. Chapter 5 Pointer dan References. Agenda. Apa itu Pointer? Memory Komputer. Mengambil Alamat Memory dari Variabel

Inheritance dan Polimorfisme

STRUKTUR DATA MENGGUNAKAN C++ Windha Mega PD, S.Kom

Instalasi Code::Blocks, Tipe Data, Variabel, Konstanta, Operator, Input-Output dan Flowchart

a. Array berdimensi satu o Setiap elemen array dapat diakses melalui indeks. o Indeks array (subscript) secara default dimulai dari 0.

FAKULTAS TEKNIK UNIVERSITAS NEGERI YOGYAKARTA LABSHEET ALGORITMA DAN STRUKTUR DATA

Struktur Data Array. Rijal Fadilah S.Si

DIKTAT MATA KULIAH PEMROGRAMAN I BAB VIII

E STRUKTUR DATA & E PRAKTIK STRUKTUR DATA. Pointer & Function. Alfa Faridh Suni, S.T., M.T. PTIK

PENGERTIAN VARIABEL, KONSTANTA DAN TIPE DATA

OPERASI PERNYATAAN KONDISI

BAHASA PEMROGRAMAN C

PEMROGRAMAN BERORIENTASI OBJEK. Input / Output. Budhi Irawan, S.Si, M.T

Pertemuan 2 ARRAY DIMENSI 1 & 2

P3 Dasar Struktur Data TIF42/SIF42

ALUR PROGRAM. SELEKSI KONDISI Statement If a. Bentuk If tunggal sederhana Sintaks : if ( kondisi ) statement ;

PENGANTAR KOMPUTER & SOFTWARE II. Array (Part II) Tim Pengajar KU Institut Teknologi Sumatera

Keg. Pembelajaran 2 : Mengenal Bahasa C++

Bahasa C-M6 By Jamilah, Skom 1

KARAKTER DAN STRING, ARRAY, STRUCT DAN REVIEW PADA BAHASA C

Pert 2 Struktur Data (mengajarkomputer.wordpress.com) ARRAY DIMENSI 1 & 2

Tabel Informasi. Hal di atas dapat dilakukan dengan menambah dan mengambil atribut identifier yang digunakan pada program, melalui tabel informasi.

BAHASA PEMROGRAMAN 1 (PERTEMUAN 3)

PEMROGRAMAN TERSTRUKTUR D3MI 2016

BAB I. LARIK (ARRAY) Array (larik) ialah penampung sejumlah data sejenis (homogen) yang menggunakan satu identifier (pengenal).

Identifier dan Tipe Data

DISUSUN OLEH BAB III OPERAS. macam, yaitu: baru. karakter. Tipe. Tipe Data. Tetapi. dataa tersebut. HAL 1

PEMROGRAMAN I. By : Sri Rezeki Candra Nursari

LAPORAN PRAKTIKUM RESMI QUEUE

PERTEMUAN VI POINTER 6.1 Tujuan Praktikum 6.2 Teori Penunjang Pointer

Senarai berantai. linked list. Pertemuan keenam Struktur data st3telkom.ac.id. by : tenia wahyuningrum & Sisilia Thya Safitri

Struktur Bahasa C dan C++

Pengenalan Array. Array Satu Dimensi

PENGANTAR KOMPUTER & SOFTWARE 2 MATRIX

BAB III Pengenalan Tipe Data dan Bahasa Pemrograman C/C++

Inheritance dan Polimorfisme

Keyword,Tipe data & Variabel. Keywords pada c Tipedata Variabel Konstanta

Turbo C adalah tool yang dipakai untuk membuat code program dalam bahasa C ataupun C++. Berikut adalah jendela utama Turbo C

BAB XI ARRAY (LARIK)

PERTEMUAN 3 KONSEP TIPE DATA

Array Multidimensi. Pemrograman Dasar. Java

Algoritma dan Pemrograman Lanjut. Pertemuan Ke-2 Array (Larik)

Algoritma dan Pemrograman Array/Tabel[1] Oleh: Eddy Prasetyo N

VARIABEL & TIPE DATA PEMROGRAMAN C++

INF-103 Pemrograman II VECTOR & STRING. Dr. Taufik Fuadi Abidin, M.Tech Irvanizam Zamanhuri, M.Sc. Program Studi Informatika FMIPA UNIVERSITAS KUALA

Pemrograman Dasar C. Minggu 10

ELEMEN DASAR C++ C++ mempunyai cara untuk menyatakan karakter-karakter yang tidak mempunyai kode tombol (seperti karakter tombol) misalnya \n.

BAB VI ARRAY PADA PEMROGRAMAN JAVA

elemen Dasar Bahasa Pemrograman C

POINTER DASAR PEMROGRAMAN

POINTER I. Oleh : Mike Yuliana PENS-ITS

Transkripsi:

PEMROGRAMAN BERORIENTASI OBJEK Konsep Array dalam PBO Budhi Irawan, S.Si, M.T

PENDAHULUAN Array (Larik) merupakan hal fundamental yang sering dijumpai dalam banyak kasus didunia pemrograman, maka dari itu sebagai pemrogram (programmer) perlu dibekali dengan pemahaman konsep array dan mampu mengimplementasikannya.

ARRAY Array adalah suatu variabel yang menyimpan sekumpulan data yang memiliki tipe data yang sama. Setiap data tersebut menempati lokasi atau alamat memory yang berbeda-beda dan selanjutnya disebut elemen array.

ELEMEN ARRAY Elemen Array dapat diakses melalui indeks yang terdapat didalamnya. Namun penting sekali untuk diperhatikan dalam c++ indeks array selalui dimulai dari 0 bukan 1.

ILUSTRASI ARRAY Nilai Elemen Array Nilai ke-1 Nilai ke-2 Nilai ke-n Alamat ke-1 Alamat ke-2 Nilai ke-n 0 1 N Alamat Elemen Array Indeks Elemen Array

DEKLARASI ARRAY Untuk mendeklarasikan sebuah array dalam bahasa C++ maka digunakan tanda [] (bracket). Adapaun bentuk umum pendeklarasiannya adalah : tipe_data nama_array[jumlah_elemen];

DEKLARASI ARRAY Sebagai contoh dideklarasikan sebuah array misalnya dengan nama LARIK yang memiliki 25 elemen dengan tipe data int, maka bentuk deklarasinya adalah sebagai berikut : int LARIK[25];

RUANG MEMORY ARRAY Ruang memory yang dibutuhkan untuk deklarasi array tersebut adalah 100 byte yang berasal dari 25 x 4 byte (4 merupakan ukuran dari tipe data int). Cara yang digunakan untuk mengakses elemennya adalah dengan menuliskan indeksnya.

RUANG MEMORY ARRAY Misalnya ingin mengambil nilai yang terdapat pada elemen ke-10 dan menampung nilai tersebut kedalam sebuah variabel yang bertipe int juga (misal X), maka kita perlu menuliskan kode seperti berikut : X = LARIK[9] Kenapa 9 bukan 10? Perlu diingat bahwa indeks array selalu dimulai dari 0 sehingga untuk mengakses elemen ke 10 maka indek yang dibutuhkan adalah 10 1 yaitu 9.

ISI NILAI KE ELEMEN ARRAY Cara mengisikan nilai ke dalam array yang paling umum dilakukan adalah dengan menggunakan pengulangan (looping). Cara ini akan jauh lebih cepat dibandingan cara manual satu persatu. Sebagai contoh apabila ingin dilakukan pengisian 25 elemen array, maka bentuk penulisannya adalah sebagai berikut : for (int C=0; C<25; C++) { cout<< A[ <<C<< ] = ; cin>>a[c];

ISI NILAI KE ELEMEN ARRAY #include <iostream> using namespace std; int main() { // Mendeklarasikan array A dengan 5 buah // elemen bertipe int int A[5]; // Memasukkan nilai ke dalam elemen array for (int C=0; C<5; C++) { cout<<"a["<<c<<"] = "; cin>>a[c]; return 0;

MENAMPILKAN NILAI PADA ARRAY Setelah memahami cara mengisikan nilai kedalam elemen array, selanjutnya dibahas bagaimana cara mengakses atau menampilkan nilai-nilai tersebut. Konsepnya sama saja, yaitu digunakan pengulangan untuk menampilkannya.

MENAMPILKAN NILAI PADA ARRAY #include <iostream> using namespace std; int main() { // Mendeklarasikan array A dengan 5 buah elemen bertipe int int A[5]; // Mengisikan nilai ke dalam elemen array cout<<"masukkan nilai yang diinginkan"<<endl; for (int C=0; C<5; C++) { cout<<"a["<<c<<"] = "; cin>>a[c]; cout<<'\n'; // Menampilkan nilai yang terdapat dalam elemen array cout<<"menampilkan nilai yang telah dimasukkan"<<endl; for (int J=0; J<5; J++) { cout<<"nilai yang terdapat pada elemen ke-"; cout<<j+1<<": "<<A[J]<<endl; return 0;

MELAKUKAN INISIALISASI ARRAY Pada saat array dideklarasikan maka dapat langsung dilakukan inisialisasi nilai terhadap elemen-elemen array didalamnya. Hal ini dimaksudkan untuk mengisikan nilai awal (default) pada elemen array sehingga jika elemen bersangkutan tidak diisi dengan nilai baru maka nilai yang digunakan adalah nilai yang telah ada.

MELAKUKAN INISIALISASI ARRAY Bentuk umum dari proses inisialisasi array adalah sebagai berikut : tipe_data nama_array[n] = {nilai1, nilai2,, nilain;

MELAKUKAN INISIALISASI ARRAY #include <iostream> using namespace std; int main() { // Mendeklarasikan array dan langsung menginisialisasi nilainya int A[5] = { 10, 20, 30, 40, 50 ; // Menampilkan nilai yang terdapat pada elemen array cout<<"sebelum dilakukan perubahan nilai"<<endl; cout<<"a[0] = "<<A[0]<<endl; cout<<"a[1] = "<<A[1]<<endl; cout<<"a[2] = "<<A[2]<<endl; cout<<"a[3] = "<<A[3]<<endl; cout<<"a[4] = "<<A[4]<<endl; // Mengubah elemen ke-1 dan ke-2 A[0] = 12; A[1] = 25; // Menampilkan kembali nilai yang terdapat pada elemen array cout<<"setelah dilakukan perubahan nilai"<<endl; cout<<"a[0] = "<<A[0]<<endl; cout<<"a[1] = "<<A[1]<<endl; cout<<"a[2] = "<<A[2]<<endl; cout<<"a[3] = "<<A[3]<<endl; cout<<"a[4] = "<<A[4]<<endl; return 0;

PENCARIAN PADA ARRAY Salah satu permasalahan yang sering muncul pada saat kita menggunakan array adalah tuntutan untuk melakukan pencarian elemen array. Contoh : pencarian data mahasiswa disalah satu perguruan tinggi, pencarian data nasabah bank, pencarian nilai terbesar atau terkecil dari sekumpulan bilangan dll

PENCARIAN PADA ARRAY #include <iostream> using namespace std; int main() { // Mendeklarasikan array dgn melakukan inisialisasi nilai ke dalamnya int A[10] = { 12, 24, 14, 25, 10, 13, 21, 20, 15, 18 ; int CARI; // Variabel untuk menampung nilai yang akan dicari // Menampilkan nilai yang terdapat pd elemen-elemen array di atas for (int C=0; C<10; C++) { cout<<"a["<<c<<"]: " <<A[C]<<endl; cout<<endl; // Memasukkan nilai yang akan dicari cout<<"masukkan nilai yang akan dicari : "; cin>>cari; // Melakukan pencarian data for (int J=0; J<10; J++) { if (A[J] == CARI) { cout<<"nilai yang dicari " <<"terdapat pada indeks ke-"<<j; break; return 0;

MENGURUTKAN ELEMEN ARRAY Apabila kita sudah mempelajari algoritma pemrograman maka pasti sudah dipelajari bahwa array dapat diurutkan dengan beberapa metoda diantaranya metoda gelembung (bubble short), maksimum-minimum (maximum-minimum short), heap short, dll. Salah satu kegunaan dari pengurutan adalah untuk mempermudah dan mempercepat proses pencarian data.

ARRAY KONSTAN Nilai dari elemen array dapat dibuat tetap, yaitu dengan mendefinisikannya sebagai konstanta. Caranya adalah dengan menggunakan keyword const didepan nama array yang akan didefinisikan.

ARRAY KONSTAN #include <iostream> using namespace std; int main() { // Mendeklarasikan array yang bersifat konstan const int A[5] = { 10, 20, 30, 40, 50 ; // Menampilkan nilai yang terdapat pada array A for (int C=0; C<5; C++) { cout<<"a["<<c<<"] = "<<A[C]<<endl; return 0;

ARRAY TIPE DATA BENTUKAN Dalan C++, array juga dapat digunakan sebagai tipe data bentukan seperti halnya struktur dan enumerasi. Untuk melakukan ini perlu digunakan keyword typedef yang berfungsi untuk memberikan nama lain dari array yang dideklarasikan. Bentuk umum penulisanya adalah sebagai berikut : Typedef tipe_data nama_array[jumlah_elemen]

ARRAY TIPE DATA BENTUKAN #include <iostream> using namespace std; int main() { // Mendeklarasikan tipe data berbentuk array dengan nama LARIK typedef int LARIK[5]; // Menggunakan tipe data LARIK untuk mendeklarasikan variabel A LARIK A; for (int C=0; C<5; C++) { // Mengisikan nilai elemen ke dalam variabel A A[C] = (C+1) * 100; // Menampilkan nilai elemen yang terdapat pada variabel A cout<<"a["<<c<<"] = "<<A[C]<<endl; return 0;

ARRAY TIPE DATA BENTUKAN Seperti terlihat di atas bahwa sebuah array dapat digunakan untuk mendeklarasikan variabel lain Pada kasus ini dibuat sebuah tipe data bentukan dengan nama LARIK, selanjutnya digunakan tipe tersebut untuk mendeklarasikan variabel A. Apabila diamati sebenarnya dapat langsung dideklarasikan varibel A tersebut dengan tipe array : int A[5];

ARRAY TIPE DATA BENTUKAN Mungkin bisa jadi bingung kenapa harus dituliskan sebagai tipe data? Jawabannya adalah karena tipe tersebut dapat digunakan untuk mendeklarasikan variabel dengan cepat. Sebagai contoh : misalnya akan dideklarasikan 5 buah variabel (dengan nama A, B, C, D, dan E) yang bertipe array dari tipe int dan terdiri dari 5 elemen.

ARRAY TIPE DATA BENTUKAN Jika ditulis dengan deklarasi biasa maka programnya akan tampak sebagai berikut : Int A[5]; Int B[5]; Int C[5]; Int D[5]; Int E[5];

ARRAY TIPE DATA BENTUKAN Namun jika sebelumnya kita mendefinisikan sebuah tipe data yang berbentuk array (misalnya dengan nama LARIK), maka kodenya akan terlihat lebih rapi yaitu sebagai berikut : // Membuat tipe data dengan nama LARIK Typedef LARIK[5]; //Mendeklarasikan variabel bertipe LARIK LARIK A, B, C, D, E;

ARRAY DARI KARAKTER Dalam C++, kumpulan karakter disebut dengan string (teks) dan untuk mendeklarasikan array dari tipe karakter maka tentu akan menuliskannya ke dalam bentuk seperti dibawah ini : char nama_array[jumlah_elemen] Dengan demikian apabila akan dideklarasikan variabel string (misalkan dengan nama TEKS) yang terdiri dari 4 buah karakter, maka sintaksnya : char TEKS[4] = { B, I, S, \0;

ARRAY DARI KARAKTER Karakter terakhir, \0, disebut dengan karakter null, yaitu karakter yang digunakan sebagai terminator dari sebuah string didalam C++. Namun karena bentuk tersebut susah ditulis dan riskan terhadap terjadinya sebuah kesalahan, maka C++ memperbolehkan kita untuk dapat menuliskan karakter-karakter tersebut dalam sebuah string yaitu sebagai berikut : char TEKS[4] = BIS ;

ARRAY DARI KARAKTER #include <iostream> using namespace std; int main() { // Mendeklarasikan array A dari tipe karakter char A[4] = { 'B','I','S','\0' ; // Mendeklarasikan B sebagai string char B[4] = "BIS"; // Menampilkan nilai dari elemen array A for (int C=0; C<4; C++) { cout<<a[c]; cout<<endl; // Menampilkan nilai dari variabel B cout<<b; cout<<"\n\n"; // Menampilkan ukuran dari A dan B cout<<"ukuran A: "<<sizeof(a)<<endl; cout<<"ukuran B: "<<sizeof(b); return 0;

ARRAY DARI STRUKTUR DAN STRUKTUR DARI ARRAY Bagi kebanyakan programmer pemula terkadang istilah array dari struktur (array of structure) dan struktur dari array (structure of array) ini agak sedikit membingungkan. Sebenarnya konsepnya sederhana, array dari struktur berarti dideklarasikan sebuah array yang nilai dari setiap elemennya bertipe struktur, sedangkan struktur dari array berarti dideklarasikan sebuah struktur yang anggotanya bertipe array.

ARRAY DARI POINTER DAN POINTER DARI ARRAY Dalam C++, elemen array dapat berbentuk pointer dan pointer juga dapat menunjuk ke tipe array. Apabila dibuat array dari pointer, artinya akan dideklarasikan pointer sebanyak jumlah elemen array yang ditentukan, misal : int *P[5]; Sintaks tersebut menunjukan bahwa dimiliki 5 buah alamat memori yang akan ditunjuk oleh pointer P yang tentunya tidak menunjuk semua alamat secara sekaligus melainkan harus digunakan operator new

ARRAY DARI POINTER DAN POINTER DARI ARRAY Sekarang apabila dideklarasikan pointer ke array, itu artinya dideklarasikan sebuah pointer yang akan digunakan untuk menunjuk ke variabel yang bertipe array. Int A[5]; // Array yang terdiri dari 5 buah // elemen bertipe int Int *P; // Mendeklarasikan pointer P P = A; // Mendeklarasikan P untuk menunjuk // array A

ARRAY DARI POINTER DAN POINTER DARI ARRAY Mungkin muncul kebingungan, kenapa P =A, bukan P = &A;? Hal ini disebabkan karena dalam C++, array sebenarnya adalah suatu pointer. Jadi kode tadi sama saja jika dituliskan sbb : int A[5]; int *P; P = &A[0]; Pada kode diatas, pointer P akan menunjuk ke elemen array yaitu A[0]

POINTER DARI ARRAY #include <iostream> using namespace std; int main() { int A[5]; int *P = A; cout<<"nilai &A[0] : "<<&A[0]<<endl; cout<<"nilai P : "<<P; return 0;

ARRAY MULTIDIMENSI Array multidimensi yaitu array yang terdiri dari beberapa subskrip. Sebagai contoh, array 2 dimensi adalah array yang mempunyai 2 subskrip, 3 dimensi mempunya 3 subskrip, dan seterusnya. Array seperti ini sering digunakan untuk pemrosesan matrik.

ARRAY DUA DIMENSI Array dua dimensi adalah array yang mempunyai dua buah subskrip, yaitu baris dan kolom. Bentuk umum pendeklarasiannya adalah sebagai berikut : Type_data nama_array[jml_elemen_bar] [jml_elemen_kol]

INNISIALISASI PADA ARRAY MULTIDIMENSI Sama halnya seperti array satu dimensi, pada array multidimensi juga dapat dilakukan inisialisasi nilai kedalam elemen-elemennya. Contoh : Int a[3][3] = {1,2,3,4,5,6,7,8,9; Namun untuk memudahkan proses inisialisasi, C++ mengizinkan untuk melakukan pengelompokan untuk setiap baris, yaitu sbb : Int a[3][3] = {{1,2,3, {4,5,6,{7,8,9;

INNISIALISASI PADA ARRAY MULTIDIMENSI #include <iostream> using namespace std; int main() { // Melakukan inisialisasi nilai // ke dalam elemen-elemen array dua dimensi int A[3][3] = { {1,2,3, {4,5,6, {7,8,9 ; // Menampilkan nilai yang tersimpan // dalam elemen array for (int j=0; j<3; j++) { for (int k=0; k<3; k++) { cout<<"a["<<j<<"]["<<k<<"] = " <<A[j][k]<<endl; cout<<endl; return 0;