ARRAY/LARIK Pertemuan 06, 07, dan 09 Overview Deskripsi Tujuan Instruksional String Array 1 Dimensi Array Multi Dimensi Jurusan Teknik Informatika III - 2 Universitas Widyatama 1
Deskripsi Materi ini mempelajari : String Array 1 Dimensi Array Multi Dimensi Array 2 Dimensi(Matriks) Array n Dimensi Jurusan Teknik Informatika III - 3 Universitas Widyatama Tujuan Instruksional Mahasiswa diharapkan dapat : Menjelaskan pengertian dan manfaat Array, serta cara penulisannya dalam program Menjelaskan jenis-jenis Array Menjelaskan penggunaan Array 1 dimensi dan multi dimensi dalam C/C++ Menggunakan Array 1 dimensi dan multi dimensi dalam C/C++ Jurusan Teknik Informatika III - 4 Universitas Widyatama 2
Definisi Array Suatu urutan lokasi yang berdampingan (contiguous) yang dapat diakses dengan satu nama tunggal dan diikuti subskrip integer (index array). Suatu Variabel Jamak (lebih dari satu lokasi penyimpanan) dengan indeks yang digunakan sebagai penunjuk urutan data. Struktur data yang menyimpan sekumpulan elemen yang bertipe sama, dimana setiap elemen diakses secara langsung melalui indeksnya. Kumpulan dari nilai-nilai data (elemen array/larik) yang bertipe sama dalam urutan tertentu (ditunjukan oleh subsricpt atau indeks) yang menggunakan sebuah nama yang sama. Indeks array dalam C selalu dimulai dari 0 (nol) Jurusan Teknik Informatika III - 5 Universitas Widyatama Jenis-Jenis Array Array 1 Dimensi String Array 1 Dimensi(non string) Array Multi dimensi Array 2 Dimensi(Matriks) Array n Dimensi Jurusan Teknik Informatika III - 6 Universitas Widyatama 3
STRING Definisi Kata atau Kalimat Kumpulan dari beberapa karakter (huruf, kata, tanda baca, spasi dst) Suatu jenis array 1 dimensi yang berisi data dengan tipe karakter Jurusan Teknik Informatika III - 8 Universitas Widyatama 4
Deklarasi char Nama string[max karakter +1] Dimana : Max karakter : jumlah karakter yang paling banyak bisa ditampung dalam Nama string dan +1 untuk menyimpan karakter penanda (/0 atau NULL) untuk keperluan fungsi-fungsi string. Karakter ini akan diisikan secara otomatis pada saat prosesinput ke dalam string di posisi paling akhir dari suatu kata atau kalimat. Ex : C a p e D e h \0 Indeks : 0 1 2 3 4 5 6 7 8 Jurusan Teknik Informatika III - 9 Universitas Widyatama Konsep Variabel Biasa ex : int Biasa; misalkan kita isi dengan nilai 75 Nama Nilai Alamat Biasa 75 xxx Variabel String ex : char Kata[4]; misalkan kita isi dengan kata NO Nama Nilai Alamat Kata 1000 xx10 N xx21 O xx22 \0 xx23 xx24 Jurusan Teknik Informatika III - 10 Universitas Widyatama 5
Input & Output Input gets(nama string); scanf( %s,namastring); cin>> nama string; Output puts(nama string); printf( %s,namastring); cout<< nama string; Jurusan Teknik Informatika III - 11 Universitas Widyatama Manipulasi (1) Library Header : string.h Manipulasi : Copy String strcpy(string Tujuan,String Asal) ex : strcpy(kata, Saya ); or strcpy(kata1,kata2); Panjang String Nama_Panjang_String = strlen(nama String) ex : Ukuran=strlen(Kata); Jurusan Teknik Informatika III - 12 Universitas Widyatama 6
Manipulasi (2) Manipulasi (lanjutan) : UbahkeHurufKapital strupr(nama String) ex : strupr(kata); UbahKeHurufKecil strlwr(nama String) ex : strlwr(kata); Penggabungan String strcat(string Tujuan,String Asal) ex : strcat(kata1, Kata2); Jurusan Teknik Informatika III - 13 Universitas Widyatama Manipulasi (3) Manipulasi (lanjutan) : Perbandingan String status = strcmp(string1,string2) status bernilai 0 jika String1 = String2 status bernilai positif jika String1 > String2 status bernilai negatif jika String1 < String2 ex : status = strcmp(kata1,kata2); Membalik Urutan String strrev(nama String) ex : strlen(kata); Jurusan Teknik Informatika III - 14 Universitas Widyatama 7
ARRAY 1 DIMENSI Definisi Array 1 Dimensi : array yang berisi data dengan tipe selain karakter (terdiri hanya dari 1 baris data atau hanya 1 kolom data) Ex : 1 Indeks : 0 3 1 5 2 7 3 9 4 2 4 Indeks 0 1 Jurusan Teknik Informatika III - 16 Universitas Widyatama 8
Deklarasi Tipe Data Nama Array[Jumlah Max Data] Dimana : Jumlah Max Data : jumlah data yang paling banyak bisa ditampung dalam Nama Array Jurusan Teknik Informatika III - 17 Universitas Widyatama Konsep Variabel Array 1 Dimensi ex : int Data1[4] = {1,2,3,4,5}; int Data2[4]; Nama Nilai Alamat Nama Nilai Alamat Data1 1000 xx10 Data2 1001 xx10 1 xx20 xx20 2 xx21 xx21 3 xx22 xx22 4 xx23 xx23 5 xx24 xx24 Jurusan Teknik Informatika III - 18 Universitas Widyatama 9
Input & Output Nama_Array[indeks] = Nilai; ex : A[10] = 1001; Input scanf( %format,&namaarray[indeks]); ex : scanf( %d,&a[10]); cin>>a[10]; Output printf( %format,nama Array[indeks]); ex : printf( %d,a[10]); cout<<a[10]; Jurusan Teknik Informatika III - 19 Universitas Widyatama ARRAY MULTI DIMENSI 10
Definisi Array 2 Dimensi : array yang berisi data dengan tipe selain karakter (terdiri dari 1 baris data dan 1 kolom data) Ex : Index Array n Dimensi 1 2 n 1 2 n Jurusan Teknik Informatika III - 21 Universitas Widyatama Deklarasi 2 Dimensi Tipe Data Nama Array[Max Baris] [Max Kolom] Dimana : Max Baris : jumlah baris yang paling banyak bisa ditampung dalam Nama Array Max Kolom : jumlah kolom yang paling banyak bisa ditampung dalam Nama Array Ex : int Matriks[3] [4], maka array yang terbentuk adalah Index 1 2 3 1 2 3 4 Jurusan Teknik Informatika III - 22 Universitas Widyatama 11
Deklarasi n Dimensi Tipe Data Nama Array[Max ke-1] [Max ke-2] [Max ke-n] Ex : int Matriks[3] [4][5] maka array yang terbentuk adalah array 3 dimensi int Matriks[3] [4][5][6] maka array yang terbentuk adalah array 4 dimensi.dst Jurusan Teknik Informatika III - 23 Universitas Widyatama Input & Output Nama_Array[indeksRow] [indekscol] = Nilai; ex : A[10][11] = 1001; Input scanf( %format,&nama Array[indeksRow][indexCol]); ex : scanf( %d,&a[10][11]); cin>>a[10][11]; Output printf( %format,namaarray[indeksrow] [indexcol]); ex : printf( %d,a[10][11]); Cout<<A[10][11]; Jurusan Teknik Informatika III - 24 Universitas Widyatama 12