ARRAY/LARIK Pertemuan 06, 07, dan 09
Pemrograman I (Terstruktur I)
Overview • • • • •
Deskripsi Tujuan Instruksional String Array 1 Dimensi Array Multi Dimensi
Jurusan Teknik Informatika
III - 2
Universitas Widyatama
1
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
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 proses input ke dalam string di posisi paling akhir dari suatu kata atau kalimat.
Ex : C Indeks : 0
a
p
e
1
2
3
Jurusan Teknik Informatika
4 III - 9
D
e
h
\0
5
6
7
8
Universitas Widyatama
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
Input & Output • Input – gets(nama string); – scanf(“%s”,nama string); – cin>> nama string;
• Output – puts(nama string); – printf(“%s”,nama string); – cout<< nama string;
Jurusan Teknik Informatika
III - 11
Universitas Widyatama
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
Manipulasi (2) • Manipulasi (lanjutan) : – Ubah ke Huruf Kapital strupr(Nama String) ex : strupr(Kata);
– Ubah Ke Huruf Kecil strlwr(Nama String) ex : strlwr(Kata);
– Penggabungan String strcat(String Tujuan,String Asal) ex : strcat(Kata1, Kata2); Jurusan Teknik Informatika
III - 13
Universitas Widyatama
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
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 3 5 7 9 … Indeks Indeks : 0 1 2 3 4 … 2 0 4 1 … …
Jurusan Teknik Informatika
III - 16
Universitas Widyatama
8
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
Input & Output Nama_Array[indeks] = Nilai; ex : A[10] = 1001;
• Input – scanf(“%format”,&Nama Array[indeks]); ex : scanf(“%d”,&A[10]); – cin>>A[10];
• Output – printf(“%format”,Nama Array[indeks]); ex : printf(“%d”,A[10]); – cout<
Jurusan Teknik Informatika
III - 19
Universitas Widyatama
ARRAY MULTI DIMENSI
10
Pemrograman I (Terstruktur I)
Definisi • Array 2 Dimensi : array yang berisi data dengan tipe selain karakter (terdiri dari 1 baris data dan 1 kolom data) Ex : Index 1 2 … n 1
?
?
…
?
2
?
?
…
?
…
…
…
…
…
n
?
?
…
?
• Array n Dimensi
Jurusan Teknik Informatika
III - 21
Universitas Widyatama
Pemrograman I (Terstruktur I)
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
4
1
?
?
?
?
2
?
?
?
?
3
?
?
?
?
Jurusan Teknik Informatika
III - 22
Universitas Widyatama
11
Pemrograman I (Terstruktur I)
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
Pemrograman I (Terstruktur I)
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”,Nama Array[indeksRow] [indexCol]); ex : printf(“%d”,A[10][11]); – Cout<
Jurusan Teknik Informatika
III - 24
Universitas Widyatama
12