Teknik Informatika Universitas Pembangunan Jaya

Slides:



Advertisements
Presentasi serupa
ARRAY.
Advertisements

Pemrograman Terstruktur
ARRAY 1 DIMENSI Array 1 dimensi
PERTEMUAN IV POINTER Pointer adalah suatu variabel penunjuk yang menunjuk pada suatu alamat memori komputer Pointer merupakan.
ARRAY STATIS DAN DINAMIS
ARRAY ??.
PERTEMUAN II ARRAY JURUSAN TELEKOMUNIKASI
Pointer. Output? #include int x = 2; void misteri(int a, int b) { a = 2*x; b = y; y = a; } main() { int y; x = 5; y = 7; misteri(x, y); printf("%d %d\n",
SL-1201 Pengantar Pemrograman
ARRAY 2 DIMENSI Array dua dimensi sering digambarkan sebagai sebuah matriks, merupakan perluasan dari array satu dimensi. Jika array satu dimensi hanya.
Tipe Data Bentukan Pertemuan ke-5.
Konsep dan Defenisi data 1Nurdiansah PTIK 09 UNM.
Struct By : Hendri Sopryadi
Struktur Sugeng Supriyadi, M.Kom.
SEARCHING ( PENCARIAN )
STRUKTUR DATA (2) searching array
STRUKTUR DATA (D3) - Review array - Searching (Sequential & Binary)
ARRAY/LARIK Sumber dari : imaru.files.wordpress.com/2008/02/array-struc-pointer.ppt.
Pemrogramman Terstruktur
ARRAY Dr. Lily Wulandari.
Teknik Pemrograman Terstruktur 2
ARRAY (LARIK)
PENGENALAN c++ DAN STRUKTUR DASAR C++
Pemrograman Terstruktur
ARRAY 2 Dimensi.
Array, Class, Obyek, Method danConstructor.
ARRAY.
Algoritma & Struktur Data Pointer Evangs Mailoa.
Person 10Person Variabel Lokal dan Global Suatu variabel lokal dideklarasikan di dalam fungsi ‘a’, dan tidak dapat diakses di luar fungsi (a)
Algoritma dan Struktur Data
ARRAY OF STRUCT Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
Array dan String Array dan String.
Array variabel Merupakan jenis data yang memresentasikan suatu kumpulan data dengan tipe yang sama dengan menempatkannya dalam bentuk larik Antara satu.
Pengantar Pemrograman
Pointer Yuliana Setiowati.
POINTER (VAR.PENUNJUK)
Algoritma dan Struktur Data
#include //bagian modul int hitung(x,y) { return(x+y); } //bagian utama main() { int jumlah,a,b; a=8; b=2; jumlah=hitung(a,b); cout
P O I N T E R. Merupakan sebuah variabel yang berisi alamat dari variabel lain. Suatu pointer dimaksudkan untu menunjukan ke suatu alamat memori sehingga.
PERTEMUAN III ARRAY BAG II JURUSAN TELEKOMUNIKASI
L/O/G/O Array (larik) Pertemuan 5 Tenia Wahyuningrum ST3 Telkom Purwokerto Algoritma pemrograman.
L/O/G/O Array (larik) Pertemuan 2 Tenia Wahyuningrum ST3 Telkom Purwokerto Algoritma dan Struktur data.
STRUCT OF ARRAY Apabila hendak menggunakan 1 struct untuk beberapa kali, ada 2 cara : Deklarasi manual #include typedef struct Mahasiswa { char.
Struktur Data Array dan Mapping Array
Bab 05 Tipe Data dan Mengisi Variabel
STRUKTUR DATA (2) searching array
Array, POINTER dan FUNGSI
Tenia Wahyuningrum, S.Kom., MT
STRUKTUR DATA DIMENSIONAL ARRAY
Fungsi, Array dan String
Castaka Agus Sugianto, M.Kom., M.CS
Bab2 ARRAY (LARIK).
Oleh : Agus Priyanto, M.Kom Norma Amalia, M.Eng
ARRAY (Array Dua Dimensi) Pertemuan 16 Dasar Pemrograman
ARRAY (LARIK)
ARRAY.
Array Pertemuan ke-4.
Program komputer Sebuah program komputer yang ditulis dengan bahasa apapun dapat dipandang sebagai sebuah himpunan operasi yang dikerjakan pada data-data.
As’ad Djamalilleil Array (Larik) As’ad Djamalilleil
ARRAY JAVA SCRIPT
Prepared by Yohana Nugraheni
Array dan Matriks.
KU-1072 Pengenalan Teknologi Informasi - B
Array adalah sekumpulan data bertipe sama dengan menggunakan nama yang sama.
Algoritma dan Struktur Data
Prepared by Yohana Nugraheni
ARRAY (LARIK)
Algoritma Pemrograman
SL-1201 Pengantar Pemrograman
Transcript presentasi:

Teknik Informatika Universitas Pembangunan Jaya Struktur Data Materi: Array Teknik Informatika Universitas Pembangunan Jaya

Definisi Array [1] Array adalah suatu set dari alokasi data, dengan jenis data yang sama untuk tiap alokasi tersebut. Setiap alokasi data disebut sebagai elemen dari array. Untuk mendeklarasikan sebuah array, tuliskan jenis data dalam array tersebut, nama array dan diikuti dengan subscript. Subscript disini adalah menyatakan jumlah elemen array yang dituliskan di dalam kurung siku Contohnya, int IntArray[25]; sebagai deklarasi sebuah array yang memiliki 25 alokasi data (elemen) dengan jenis data integer bernama IntArray.

Definisi Array [2] Perbedaan deklarasi variabel array dengan variabel biasa int a;  hanya 1 nilai untuk variabel a int a[10];  terdapat 10 slot nilai untuk variabel a int a[7] = {1,2,3,5,43,5,6}; Arrays dapat menggunakan nama apapun (yang dapat digunakan dalam bahasa C/C++), selama tidak memiliki nama yang sama dengan variabel tunggal lain.

Deklasrasi tipe_data nama_var_array [ukuran]; tipe_data : menyatakan jenis tipe data elemen larik (int, char, float, dll) nama_var_array : menyatakan nama variabel yang dipakai. ukuran : menunjukkan jumlah maksimal elemen larik. Contoh : Int nilai[6];

Isi array Dalam bahasa C/C++, array dimulai dari 0. A[0] bernilai 5 Jika A merupakan array dengan jumlah elemen 10, maka variabel yang adalah A[0], A[1], ..., A[9] A 5 [0] 9 [1] 15 [2] 8 [3] -7 [4] 21 [5] 1 [6] -3 [7] 11 [8] -1 [9] isi array indeks array A[0] bernilai 5 A[4] bernilai -7 Berapa nilai A[6] ? Berapa nilai A[9] ?

Mengisi Nilai Elemen Array Nilai setiap elemen array dapat diisikan langsung A[0] = 100; /*Nilai elemen A[0] adalah 100*/ B[5] = 35; /*Nilai elemen B[5] adalah 35 */ A[0] = B[5];/*Nilai elemen A[0] adalah 35 */ C = -99; /*C adalah variabel biasa, bukan array. C bernilai -99 */ B[5] = C; /*Nilai elemen B[5] adalah -99. A[0] tetap bernilai 35 */

Menampilkan Nilai Array #include <iostream.h> int main(){ int A[3]; int B = 35; A[0] = 70; A[1] = B; cout<<“Isi nilai A[0] adalah”<<A[0]<<“\n”; cout<<“Isi nilai A[1] adalah”<<A[1]<<“\n”; cout<<“Silakan user mengisi nilai A[2]:”; cin>>A[2]; cout<<“Isi nilai A[2] adalah”<<A[2]<<“\n”; }

INISIALISASI Menginisialisasi array sama dengan memberikan nilai awal array pada saat didefinisikan. int nilai[6] = {8,7,5,6,4,3}; Contoh diatas berarti berarti anda memesan tempat di memori komputer sebanyak 6 tempat dengan indeks dari 0-5, dimana indeks ke-0 bernilai 8, ke-1 bernilai 7, dst, dan dimana semua elemennya bertipe data integer.

Array initialization [1] Meskipun tidak dimungkinkan mengoperasikan array secara langsung, namun pemberian nilai dapat dilakukan int a[10] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}; Bila initializers-nya lebih sedikit dari elements array, sisanya akan dianggap bernilai 0. int a[10] = {0, 1, 2, 3, 4, 5, 6}; nilai a[7], a[8], dan a[9] dianggap 0.

Array initialization [2] Bila terdapat initializer, maka dimensi array dapat diabaikan int b[] = {10, 11, 12, 13, 14}; b merupakan array yang memiliki 5 elemen karena di-inisialisasi dengan 5 angka. Perhatikan bahwa variable b dinyatakan sebagai b[] untuk menjelaskan bahwa b adalah sebuah array Jika elemen array adalah karakter, maka initializer dapat berupa string constant: char s1[7] = "Hello,"; char s2[10] = "there,"; char s3[] = "world!";

Index array pada C++ dimulai dari 0 Untuk mengakses data pada array, gunakan nomor index sebagai penunjuk lokasi memori, seperti format ini nama_array[index]; Index array pada C++ dimulai dari 0 Misal akan mengakses nilai pertama dari array yang disimpan pada variabel a, dimana variabel a harus memiliki tipe data yang sama dengan array nilai: a=nilai[0];

Pengisian dan pengambilan nilai pada indeks tertentu dapat dilakukan dengan mengeset nilai atau menampilkan nilai pada indeks yang dimaksud. Pengaksesan elemen array dapat dilakukan berurutan atau random berdasarkan indeks tertentu secara langsung.

Nilai/data yang ada pada array harus sama jumlahnya dengan elemen array yang sudah didefinisikan. Jika elemen dikosongkan, artinya anda tidak membatasi jumlah nilai yang ada pada array tersebut. Array terbagi 2, yaitu array satu dimensi dan multidimensi. Array dapat juga dijadikan argumen/ parameter sebuah fungsi.

Contoh Program #1 #include <iostream.h> #include <conio.h> int nilai [] = {16, 2, 77, 40, 12071}; int n, result=0; int main () { for ( n=0 ; n<5 ; n++ ) result += nilai[n]; } cout << result; getch(); return 0;

Array Satu Dimensi Array Satu dimensi tidak lain adalah kumpulan elemen- elemen identik yang tersusun dalam satu baris. Elemen- elemen tersebut memiliki tipe data yang sama, tetapi isi dari elemen tersebut boleh berbeda. Bentuk umum: <tipe data> NamaArray[n] = {elemen0, elemen1, elemen2,.....,n}; n = jumlah elemen Elemen ke 1 2 3 4 5 6 7 8 9 Nilai 23 34 32 12 25 14 11 10

Contoh Program #2 #include <iostream.h> #include <conio.h> main() { int a[5]={10,15,20,25,30}; int b[5]={10,20}; int j; // Menampilkan nilai dari element array cout<<endl; for(j=0;j<5;j++) cout<<"A ["<<j<<"] = "<<a[j]<<" , B ["<<j<<"] = "<<b[j]<<endl; } getch();

Array Dua Dimensi Array dua dimensi sering digambarkan sebagai sebuah matriks, merupakan perluasan dari array satu dimensi. Jika array satu dimensi hanya terdiri dari sebuah baris dan beberapa kolom elemen, maka array dua dimensi terdiri dari beberapa baris dan beberapa kolom elemen yang bertipe sama sehingga dapat digambarkan sebagai berikut: 1 2 3 4 5 6 10 21 23 43 45 78 65 12 32 34 56 54 11 76

Bentuk umum: <tipe data> NamaArray [m][n]; Atau <tipe data> NamaArray [m][n] = { {a,b,..z},{1,2,...,n-1} } Pendeklarasian array dua dimensi hampir sama dengan pendeklarasian array satu dimensi, kecuali bahwa array dua dimensi terdapat dua jumlah elemen yang terdapat didalam kurung siku dan keduanya boleh tidak sama. Elemen array dua dimensi diakses dengan menuliskan kedua indeks elemennya dalam kurung siku.

Contoh Program #3 //array dua dimensi #include <iostream.h> #include <conio.h> main() { int matrix[3][3]; int i,j; for(i=0;i<=2;i++) { for(j=0;j<=2;j++) { cout<<"Masukkan angka pada baris ke "<<i<<" kolom ke "<<j<<" : "; cin>>matrix[i][j]; } cout<<endl; } for(i=0;i<=2;i++){ for(j=0;j<=2;j++) { cout<<matrix[i][j]<<" "; } cout<<endl; } getch(); }

Penggunaan Array Digunakan untuk suatu database, contoh : tabel Digunakan untuk operasi matematika seperti vektor (array tipe integer) Digunakan dalam bentuk struktur data lain, contohnya: list, stack, queue.

Keunggulan Array Akses data array sangat mudah dan efisien jika diketahui lokasinya sehingga memungkinkan untuk operasi pengambilan dan penyimpanan data secara langsung Contoh : A[2] = 3, artinya menyimpan 3 di posisi-2 array A B = A[5], artinya mengambil nilai diposisi-5 array A ke variabel B

Keunggulan Array Jika lokasi elemen sudah diketahui, mudah untuk melakukan penelusuran elemen-elemen tetangganya , seperti elemen sebelum dan sesudah dari lokasi elemen yang diketahui. Untuk data yang nilai-nilainya independen dan terjaga maka penggunaan array sangat efisien dan tepat.

Kelemahan Array Karena array kurang flexibel maka ada kekurangan- kekurangan dalam penggunaan array: Tipe array harus homogen, misalnya integer semua atau string semua, tidak bisa beda-beda data dalam satu array. Penggunaan array statik secara repetisi dalam suatu program tidak efisien untuk memory dan makan banyak waktu komputasi.

Array dan loop Untuk memberikan nilai atau mengoperasikan suatu array, dapat digunakan sebuah loop: for(int i = 0; i < 10; i = i + 1) { a[i] = 0; } /* a[0] hingga a[9] bernilai 0 */ for(i = 0; i < 10; i++) /* i++ adalah sama dengan i=i+1 */ { b[i] = a[i]+1; } /* b[0] hingga b[9] bernilai 1 */ for(i = 0; i < 10; i++) { c[i] = b[i]+i; } /* untuk i=0  c[0]=1+0=1, untuk i=1  c[1]=1+1=2, untuk i=2  c[2]=1+2=3, berapa nilai c[9]? */

Contoh Deklarasi Array [1] Hasil Tampilan #include <iostream.h> int main () { int n[10]; for (int i=0; i<10; i++) { n[i] = 0; } cout<<”Indeks Elemen Nilai\n”; for (i=0; i<10; i++) { cout<<i<<” ”<<n[i]<<”\n”; } return 0; }

Contoh Deklarasi Array [2] #include <iostream.h> /* Jumlah array ditentukan dalam deklarasi dengan jumlah data yang lebih sedikit */ int main () { int n[10] = {32, 27, 64, 18, 95}; cout<<”Elemen ke Nilai\n”; for (i=0; i<10; i++) { cout<<i<<” ”<<n[i]<<”\n”; } return 0; }

Contoh Deklarasi Array [3] #include <iostream.h> // Jumlah array tidak ditentukan main () { int n[] = {32, 27, 64, 18, 95}; cout<<”Elemen ke Nilai\n”; for (i=0; i<10; i++) { cout<<i<<” ”<<n[i]<<”\n”; } return 0; }

Const Contoh: // Menyatakan ukuran array dengan const #include <iostream.h> main () { const int arraySize = 5; int n[arraySize]; cout<<"Elemen Nilai\n"; for (int i=0; i < arraySize; i++) { n[i] = 2 + 2 * i; cout<<i<<” ”<<n[i]<<”\n”; } return 0;

Enum [1] Contoh: /* Menyatakan ukuran array dengan const dan menggunakan enumerasi */ #include <stdio.h> int main() { enum WeekDays {Sun,Mon,Tue,Wed,Thu,Fri,Sat,DaysInWeek}; int ArrayWeek[DaysInWeek] = {10, 20, 30, 40, 50, 60, 70}; cout<<"The value at Tuesday is: “; cout<<ArrayWeek[Tue]; return 0; Output: The value at Tuesday is: 30

Enum [2] Baris ke-6 menyatakan enumeration (enum) bernama WeekDays, dengan 8 elemen. Sunday = 0 dan DaysInWeek = 7. enum WeekDays {Sun,Mon,Tue,Wed,Thu,Fri,Sat,DaysInWeek}; Baris ke-10 menggunakan enumerated constant Tue sebagai offset/lokasi dalam array. Karena Tue = 2 (elemen ke-3 dalam array), maka DaysInWeek[2] memberikan hasil 30. cout<<ArrayWeek[Tue];

Array dengan elemen terstruktur int main() { typedef struct SISWA{ long NIM; char Nama[25]; char Kota[30]; }; SISWA A[2]; // deklarasi array A berisi 2 SISWA //menerima masukan user for (int i=0;i<2;i++){ cout<<"NIM: ";cin>>A[i].NIM; cout<<"Nama: ";cin>>A[i].Nama; cout<<"Kota: ";cin>>A[i].Kota; } //menampilkan isi cout<<"Siswa ke-i\n"; cout<<A[i].Nama<<"("<<A[i].NIM<<")"; cout<<" dari "<<A[i].Kota<<"\n"; return 0;

Contoh-contoh Pengoperasian Array

Menghitung Nilai Rata-rata Nilai rata-rata = Total Penjumlahan seluruh elemen banyaknya elemen = #include <iostream.h> main () { const int arraySize = 12; int n[arraySize] = {1,3,5,7,9,4,5,6,44,6,88,45}; int total = 0; for (int i=0; i < arraySize; i++) { total = total + n[i]; } cout<<"Total nilai = "<<total<<"\n"; cout<< "Rata-rata = "<< total/arraySize<<"\n"; return 0; }

Mencari Nilai Array #include <iostream.h> main () { const int arraySize = 12; int n[arraySize] = {1,3,5,7,9,4,5,6,44,6,88,45}; int Bil; cout<<“Masukkan nilai yang ingin dicari = “; cin>>Bil; for (int i=0; i < arraySize; i++) { if (n[i] == Bil) cout<<Bil<<“is Found!!\n“; break; } return 0;

Multidimension Array

Multidimension array Dimungkinkan untuk memiliki array dengan dimensi lebih dari satu. Setiap dimensi direpresentasikan oleh subscript. Array dua dimensi memiliki dua subscript, 3 dimensi memiliki 3 subscript, dst. Array dapat berdimensi berapapun, tapi umumnya digunakan satu atau dua dimensi.

Array 1 dimensi [0] [1] [2] [3] [4] Array 2 dimensi [0] [1] [2] [3] [4] Array 2 dimensi [0,0] [0,1] [0,2] [0,3] [0,4] [1,0] [1,1] [1,2] [1,3] [1,4]

Array 3 dimensi [2,0,0] [1,0,0] [2,0,4] [1,0,4] [0,0,4] [2,1,4] [0,0,0] [0,0,1] [0,0,2] [0,0,3] [0,0,4] [0,0,4] [2,1,4] [1,1,4] [0,1,0] [0,1,1] [0,1,2] [0,1,3] [0,1,4] [0,1,4] [2,2,4] [1,2,4] [0,2,0] [0,2,1] [0,2,2] [0,2,3] [0,2,4] [0,2,4]

Initializing multidimension array Suatu nilai dapat diberikan (assigned) kedalam elemen array dengan urutan array yang terakhir berubah terlebih dahulu ketika array sebelumnya tetap. Maka array: int theArray[5][3] memiliki urutan 3 elemen pertama bagian dari theArray[0]; kemudian 3 elemen berikutnya adalah bagian dari theArray[1]; dst. Untuk meng-initialize array dapat dilakukan dengan: int theArray[5][3] = { 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15 }; Atau untuk kejelasan dapat digunakan tambahan kurung kurawal: int theArray[5][3] = { {1,2,3}, {4,5,6}, {7,8,9}, {10,11,12}, {13,14,15} };

Contoh multidimension array [1] #include <iostream.h> void main (void) { int a2[2][4]; // memberi nilai int i, j; for(i = 0; i < 5; i = i + 1) for(j = 0; j < 7; j = j + 1) { a2[i][j] = 10 * i + j; cout<<"Nilai a2["<<i<<","<<j<<"]="<<a2[i][j]<<"\n"; }

Contoh multidimension array [2] // print out for(j = 0; j < 3; j = j + 1) { cout<<"\t"<<j<<":"; } cout<<"\n"; for(i = 0; i < 5; i = i + 1) { cout<<i<<":"; for(j = 0; j < 7; j = j + 1) { cout<<"\t"<<a2[i][j]; } } Output: 0: 1: 2: 0: 0 1 2 1: 10 11 12 2: 20 21 22 3: 30 31 32 4: 40 41 42

Latihan Buatlah satu aplikasi sederhana berupa array Buatlah sebuah array multidimensi