PEMROGRAMAN TERSTRUKTUR
BAHASA C++ MENGGUNAKAN CODE::BLOCKS
(EDISI REVISI SATU)
Oleh :
HALDI BUDIMAN dan NUR ALAMSYAH
DAFTAR ISI
2
5.1.2 Percabangan IF Dua Kondisi (if...else) ........................................40
5.1.3 Pencabangan IF Bersarang ...........................................................40
5.2 Pernyataan dengan SWITCH (switch.case) ...........................................42
6. BAB VI PENGULANGAN ...........................................................................45
6.1 Pengulangan while .....................................................................................45
6.2 Pengulangan do. while ...........................................................................45
6.3 Pengulangan for..........................................................................................46
6.4 Pengulangan for Bersarang ........................................................................47
7. BAB VII ARRAY ..........................................................................................49
7.1 Element Array ............................................................................................49
7.2 Inisialisasi Array ........................................................................................50
7.3 Pencarian Nilai Array .................................................................................51
7.4 Array Karakter ............................................................................................52
7.5 Mengurutkan Array ....................................................................................53
7.6 Array 2 Dimensi ........................................................................................54
7.7 Inisialisasi Array 2 Dimensi ......................................................................55
REFERENSI ..........................................................................................................57
3
DAFTAR TABEL
4
DAFTAR GAMBAR
16
19
19
25
5
1. BAB I
PENDAHULUAN
1.1
Latar Belakang
Kita ketahui bersama bahwa pada awal berkembangnya komputer, tahun 70an, telah
ditemukan bahasa pemrograman yang prosedural (belum berbasis object/oop). Nah,
kebanyakan bahasa bahasa ini digunakan untuk antarmuka hardware. Intinya digunakan
supaya hardware tersebut bisa didetect dengan baik oleh system operasi komputer.
Bahasa bahasa seperti ini jaman sekarang dikenal dengan bahasa asembly. Banyak yang
menyebutnya dengan bahasa low level. Bahasa - bahasa prosedural tersebut diantaranya
adalah bahasa C, Basic, Pascal, Fortran, dan lain lain. Sekarang bahasa C berkembang
menjadi C++, Visual C++, Visual C#. Sedangkan bahasa Basic sendiri juga berkembang
menjadi Visual Basic. Sementara pascal berkembang menjadi Delphi dan lain lain .
Bahasa pemrograman komputer terdiri atas dua bagian, yaitu bahasa pemrograman tingkat
tinggi (high level language) dan bahasa pemrograman tingkat rendah (low level language).
Penggolongan ini didasarkan pada kemudahan untuk mempelajari bahasa pemrograman
komputer tersebut dan kecepatan eksekusinya.
Makin tinggi suatu bahasa pemrograman komputer, maka bahasa pemrograman komputer
tersebut akan makin mudah dipelajari.
Bahasa pemrograman C++ memiliki keunikan tersendiri dari bahasa pemrograman
komputer yang lain, yaitu bersifat case sensitive (membedakan antara huruf kecil dan
huruf kapital), dimana hampir semua perintah dalam bahasa pemrograman C++
menggunakan huruf kecil.
1.2
Sebelum C++ dikembangkan, sudah ada bahasa sejenis yang digunakan programmer yaitu
bahasa C (dikembangkan oleh Dennis Ritchie dari bahasa B), saat itu dia dari Bell
Laboratories sedang mengembangkan system operasi Unix. C ini merupakan bahasa
prosedural, kemudian dikembangkan hingga menjadi sebuah bahasa pemrograman C yang
berorientasi pada object (OOP Object Oriented Programming) yang kemudian disebut
dengan C++ (dikembangkan oleh Bejarne Stroustrup tahun 1979).
6
1.3
Secara umum, pemrograman dengan bahasa C menggunakan 2 konsep, yaitu data dan
algorithms. Data merupakan bahan yang akan diolah, sedangkan algorithms adalah
metode pengolahan. Bisa dibilang algorithms ini adalah fungsi/cara/metode/langkah dan
lain lain untuk mengolah data tersebut. Lihat gambar 1:
1.4
Anda bisa saja pakai aplikasi teks editor apa saja. Kemudian anda dapat mendownload
aplikasi compiler apa saja yang sudah tersedia di internet. Mudah bukan??
dan sekarang banyak sekali vendor yang menyediakan software komplit (lengkap) untuk
anda baik berbayar maupun gratis. Software komplit ini dinamakan dengan IDE
(Integrated Development Environment).
1.5
1.6
Pengenalan C++
C++ adalah nama sebuah bahasa pemrograman yang sangat terkenal. Sebagai bahasa
pemrograman, C++ dapat digunakan untuk menulis program. Program adalah kumpulan
instruksi yang ditujukan untuk komputer. Melalui program, komputer dapat di atur untuk
melaksanakan tugas tertentu sesuai yang ditentukan oleh pemrogram (orang yang
membuat program).
Sebagai contoh, Anda mungkin terbiasa menggunakan pengolah kata seperti Word. Nah,
Word adalah contoh aplikasi yang dibuat dengan menggunakan Bahasa pemrograman.
Bahasa C++ diciptakan oleh Bjarne Stroustroup pada tahun 1982, sebagai bahasa yang
berorentasi objek, C++ memudahkan dalam pembuatan aplikasi yang berskala besar.
1.7
1.8
Installasi Code::Blocks
8
2. Klik pada tombol
6. Klik tombol
7. Klik tombol
10
1.9
11
untuk memastikan
12
13
14
8. Klik tombol
10. Simpan dengan menekan tombol Ctrl + S atau melalui File dan kemudian
pilih Save File.
11. Untuk mengkopilasi dan menjalankan program, klik pada menu Build dan
kemudian pilihlah Build and Run.
15
12. Beberapa saat kemudian akan muncul tampilan hasil sebagai berikut. Klik
pada
keyboard.
1.10 Jelaskan apa yang terjadi ketika BUILD and RUN dilaksanakan?
Kode yang baru saja anda praktikkan dinamakan kode sumber. Pada saat anda memilih
Build and Run, kode sumber tersebut diterjemahkan ke bentuk executable
(berekstensi.exe) (proses Build) dan kemudian hasil .exe tersebut dijalankan (proses
Run).
16
Proses Build sesungguhnya cukup kompleks. Mekanismenya seperti berikut:
Kode Sumber
coba.cpp
Kompiler C++
Kode mesin
coba.cpp
Pustaka C++
Linker
Program
executable
coba.exe
Gambar 1-3 Proses Build
Kompiler C++ adalah bagian dari CodeBlock (ataupun dari software pengembangan C++
yang lain seperti dari Microsoft ada Visual C++ atau dari Borland ada Turbo C++ ).
Linker berfungsi untuk menggabungkan kode objek dengan kode-kode yang sudah
disediakan oleh CodeBlocks (kode mesin dan Pustaka C++) dan hasilnya berupa kode
executable (.exe).
17
Kode
Menyatakan bahwa program yang anda buat melibatkan pustaka yang berhubungan
dengan file
dalam pengarah preprosesor. Preprosesor adalah instruksi yang ditujukan kepada compiler
C++. Penyertaan preprosesor tersebut diperlukan, karena terdapat penggunaan cout dalam
fungsi main.
Kode
Bagian main adalah bagian utama program C++. Ketika file .exe (hasil Build) dijalankan,
kode yang ada didalamnya akan diproses.
Pada program coba.cpp diatas, fungsi mempunyai nilai balik yang bertipe int.
Tipe int menyatakan bilangan bulat yang berasal dari kata integer).
18
dan berakhiran
biasa dinamakan tubuh fungsi. Nah didalam tubuh fungsi tersebut biasa terdapat
sejumlah pernyataan.
Pernyatan adalah sebuah intruksi atau perintah utuh yang bisa dieksekusi oleh
computer. Sebuah pernyataan dapat dianalogikan dengan sebuah kalimat dalam
Bahasa manusia. Pernyataan diakhiri dengan tanda semicolon atau titik koma.
Pada
adalah contoh nila yang ditampilkan ke layar. Nilai tersebut ditulis dalam tanda
petik ganda,dinamakan string.
String berarti deretan karakter. Sebuah karaktrer bisa berupa huruf, spasi, atau
symbol seperti tanda plus dan titik.
Tanda
Kode
(berasal dari end line), yang berarti akhir baris. Secara khusus
19
Kesalahan dalam pembuatan program yaitu kesalahan sintaks, kesalahan logika,
kesalahan sewaktu eksekusi. Kesalahan sintaks disebabkan oleh kesalahan pada kode
sumber yang tidak sesuai dengan atuan yang telah di tetapkan dalam bahasa C ++ atau
terdapat kode yang tidak dikenal, contohnya kesalahan akan terjadi bial tidak diakhiri
dengan titik koma. Kesalahan Logika adalah kesalahan yang diakibatkan karena kesalahan
logika pemrograman.
1.12.1 Kesalahan Logika
Kesalahan logika adalah kesalahan yang diakibatkan karena logika pemerograman.
Lihatlah contoh program berikut:
Hasil program adalah 50.Padahal keliling yang sebenarnya adalah 60. Kesalahan yang
terjadi adalah akibat kesalahan rumus keliling. Pernyataan yang benar untuk rumus
keliling adalah:
Keliling = 2 * (panjang + lebar);
1.12.2 Kesalahan Sintaks
Kesalahan yang disebabkan oleh kaidah bahasa pemrograman akan ditunjukkan dengan
contoh berikut :
20
Bila anda mencoba melakukan Build and Run, akan muncul tampilan seperti berikut:
21
2. BAB II
VARIABEL, TIPE DATA DAN KONSTANTA
2.1
Variabel
Variabel adalah sebuah identifier (pengenal) yang nilainya dapat diubah sesuai dengan
kebutuhan program. Jika dibutuhkan sebuah variabel yang dapat dikenali oleh semua
lingkungan dalam program maka harus digunakan variabel Global. Pada C++ selalu
terdapat fungsi utama, variabel global biasanya dideklarasikan di luar fungsi utama
tersebut. Selain variabel global, pada pemrograman C++ juga terdapat variabel Lokal.
Berbeda dengan variabel global, variabel lokal hanya dikenali oleh suatu fungsi
saja, artinya variabel lokal tidak dikenal oleh lingkungan luar di dalam program
yang dibuat. Variabel lokal harus berada dalam lingkup fungsi tertentu.
Variabel adalah elemen dalam bahasa pemrograman yang berguna untuk menyimpan nilai
dan nilainya bisa diubah sewaktu-waktu
22
Contoh hasil eksekusi program
Untuk memperoleh nilai dari suatu variable digunakan pernyataan penugasan (assignment
statement), yang mempunyai sintaks sebagai berikut:
Variabel = ekspresi;
int n; = Variabel n bertipe int (untuk menyimpan bilangan bulat) dan tidak harus
n tergantung pengenal apa yang nantinya kita tulis.
char ch; = Variabel ch bertipe char (dipakai untuk menyimpan sebuah karakter)
tidak harus ch tergantung pengenal apa yang nantinya kita tulis.
double jarak; = Variabel jarak bertipe double (dipakai untuk menyimpan sebuah
bilangan real dengan kepresisian tinggi)
Nama dari suatu variabel dapat ditentukan sendiri oleh pemrogram dengan aturan sebagai
berikut:
1. Terdiri dari gabungan huruf dan angka dengan karakter pertama harus berupa
huruf. Bahasa C ++ bersifat case-sensitive artinya huruf besar dan kecil dianggap
berbeda. Jadi antara nim, NIM dan Nim dianggap berbeda.
2. Tidak boleh mengandung spasi.
23
3. Tidak boleh mengandung symbol-simbol khusus, kecuali garis bawah
(underscore). Yang termasuk symbol khusus yang tidak diperbolehkan antara lain:
$, ?, %, #, !, &, *, (, ), -, +, = dsb.
4. Panjangnya bebas, tetapi hanya 32 karakter pertama yang terpakai.
Contoh penamaan variabel yang benar: NIM, a, x, nama_mhs, f3098, f4, nilai, budi,
2.2
Dalam C++ terdapat beberapa tipe data dasar yang telah didefinisikan dan digolongkan
dalam tipe bilangan bulat (integer), bilangan real (floating point), tipe logika (boolean),
dan tipe karakter/teks (character/string).
Tipe data bilangan bulat digunakan untuk data-data yang tidak mengandung angka di
belakang koma. Tipe data yang termasuk ke dalam kategori bilangan bulat adalah:
Tipe Data
int
Ukuran
(bit)
16 atau 32
Rentang Nilai
-32.768 sampai 32.767 atau
-2.147.483.648 sampai 2.147.483.647
unsigned int
16 atau 32
signed int
16 atau 32
short int
16
unsigned int
16
0 sampai 65.535
16
long int
32
32
32
0 sampai 4.294.967.295
Tipe data bilangan real merefresentasikan data-data bilangan yang mengandung angka di
belakang koma. Tipe data yang termasuk ke dalam kategori bilangan real adalah :
24
Tipe Data
Ukuran
(bit)
Rentang Nilai
Presisi
float
32
6 digit
double
64
15 digit
long double
80
19 digit
Tipe Logika merepresentasikan data-data yang hanya mengandung dua nilai yaitu benar
untuk nilai 1 dan salah untuk nilai 0. Istilah ini juga dikenal dengan nama lain yaitu benar
(true) dan salah (false). Tipe logika dinyatakan dalam tipe bool.
Tipe data Karakter/String merepresentasikan data-data berupa karakter. Tipe data karakter
dinyatakan dengan tipe char, sedangkan untuk string yang merupakan kumpulan dari
karakter dinyatakan sebagai pointer dari tipe char dan dituliskan dengan char*. Untuk
membedakan tipe karakter dan string adalah tanda pengapitnya. Tipe data string diapit
oleh tanda petik ganda ( ) dan tipe data karakter diapit oleh tanda petik tunggal ( ).
Tipe data karakter yang sesuai dengan standard C++ ANSI/ISO adalah:
Tipe Data
char
Ukuran
(bit)
8
Rentang Nilai
-128 sampai 127
unsigned char
0 sampai 255
signed char
Boolean; terkait dengan keadaan benar (true) atau salah (false) atau untuk
menangani data yang nilainya hanya ada dua keadaan.
25
26
2.2.1
Typecasting adalah untuk mengubah tipe data secara eksplisit dalam suatu ekspresi.
Contoh :
2.2.2
Tipe data bool (yang menyatakan Booelan) bisa digunakan untuk mengambil keputusankeputusan. Nilai true atau false. True bernilai 1 dan false bernilai 0.
2.2.3
Tipe data char hanya ditujukan untuk menyimpan sebuah karakter. Seperti huruf A, B,
digit seperti 0 dan 9 atau symbol seperti * dan 8.
27
2.3
Konstanta
Konstanta adalah jenis identifier yang bersifat konstan atau tetap, artinya nilai konstanta
adalah tidak dapat di ubah. Konstanta berguna untuk menentukan nilai yang merupakan
tetapan, misalnya nilai phi (), satuan dari kecepatan cahaya dan sebagainya.
Identifier adalah suatu pengenal atau pengidentifikasi yang didekralasikan agar kompiler
dapat mengenalinya. Identifier dapat berupa variabel, konstanta, fungsi, dan kelas.
Dalam menentukan atau membuat identifier pada program, ada beberapa hal yang harus
diperrhatikan yaitu:
C++ bersifat case sensitive sehingga huruf kapital dan huruf kecil berbeda.
Identifier tidak boleh menggunakan kata kunci yang terdapat pada C++, seperti
break, return dan lain-lain.
28
29
3. BAB III
EKSPRESI, OPERATOR DAN OPERAND
3.1
Ekspresi
Ekspresi atau ungkapan adalah suatu rangkaian operator, variabel, fungsi atau konstanta
yang ditujukan untuk menghasilkan sebuah nilai dengan tipe tertentu. Dalam program
misalnya untuk menghitung luas lingkaran berdasarkan jari-jarinya.
3 + 4
3 dan 4 adalah sebagai operand dan + adalah sebagai operator.
Operator adalah simbol atau karakter khusus (misalnya + atau *) yang digunakan dalam
suatu ekspresi untuk menghasilkan suatu nilai. Operator dapat dikelompokkan menjadi
beberapa bagian, yaitu:
Operator Aritmatika
Operator Penjumlahan dan Pengurangan
Operator Penugasan
Operator Perbandingan
Operator Logika
Operator Bit
Menurut jumlah operand yang dilibatkan, operator diklsifikasikan menjadi beberapa
bagian yaitu :
Operator unary : Operator yang melibatkan satu operand
Operator binary : Operator yang melibatkan dua operand
Operator ternary : Operator yang melibatkan tiga operand
30
Operator Aritmatika
Operator aritmatika digunakan untuk melakukan operasi aritmatika seperti penjumlahan,
pengurangan, perkaliaan, pembagian dan sebagainya. Semua operator aritmatika berlaku
untuk bilangan bulat (integer) maupun bilangan real (float).
31
Operator Logika
Operator logika digunakan untuk menghasilkan nilai benar (true) dan salah (false). Nilai
ini dikenal dengan dengn istilah boolean. Dalan C++ biasanya nilai benar
direpresentasikan sebagai nilai 1 dan salah direpresentasikan sebagai nilai 0.
Jenis-jenis operator logika
Operator AND (&&) hanya akan menghasilan nilai 1 (benar) jika semua operand bernilai
1 (benar)
Operator OR ( | | ) menghasilkan nilai salah (0) jika semua operan bernilai 0 (salah)
Operator NOT (!) merupakan kebalikan dari nilai yang terkandung didalamnya.
Tabel 3-2 Operator Logika
Operator
Jenis Operasi
Contoh Aplikasi
&&
AND (dan)
1 && 1 = 1
||
OR (atau)
1||1=1
NOT (negasi)
!0 = 1
32
Operator Unary
Operator Unary adalah operator yang hanya membutuhkan satu operand saja. Contoh:
tanda negative (-).
Tabel 3-3 operator unary
Operator
Jenis Operasi
Contoh Aplikasi
+8
-5
++
Penambahan (increment)
C++
__
Pengurangan (Decrement)
C--
33
Operator Ternary
Operator ternary adalah operator yang digunakan dalam operasi yang melibatkan tiga
operand. Adapun operan yang digunakaan utnuk menyatakan adalah operator "?" Konsep
yang mendasari operasi ini adalah suatu percabangan (pemilihan) yang berdasarkan pada
kondisi tertentu.
Increment
Increment adalah suatu penambahan nilai yang terjadi pada sebuah variabel. Operator
yang digunakan untuk melakukan increment adalah operator (++). Operator ini berfungsi
untuk menambah nilai dari variabel menjadi satu (1).
Ada dua jenis increment pada C++ yaitu pre-increment dan post-increment. Pre-increment
kan melakukan penambahan sebelum variabel itu diproses, sedangkan post-increment
melakukan pemanbahan sesudah variabel itu diproses.
34
Decrement
Decrement merupakan kebalikan dari increment, yaitu mengurangi nilai dari suatu
variabel. Operator untuk meakuka decrement adalah operator (--).
Ada dua jenis decrement pada C++, yaitu pre-decrement dan post-decrement. Predecrement melakukan pengurangan nilai sebelum variabel itu diproses, sedangkan postdecrement melakukan pengurangan sesudah variabel itu diproses.
Operator Bitwise
Opertor bitwise berguna untuk melakukan operasi yng berhubungan dengan manipulasi
bit, operator bitwise hanya dapat dilakukan dengan operand char dan int saja.
Tabel 3-4 Operator Bitwise
Operator
Jenis Operasi
Contoh Aplikasi
&
AND (dan)
1&0=0
OR (atau)
1||0=1
Exclusive OR (XOR)
1^1=0
NOT (negasi)
~1=0
>>
5 << 1 = 10
<<
10 >> 1 = 5
35
3.3
Ekspresi x ++
Tabel 3-5 Operator ++ berarti memasukan nilai sebesar satu.
Operator
Contoh Penggunaan
Identik dengan
+=
a += 2
a = a +2
-=
a -= 2
a = a -2
*=
a *= 2
a = a *2
/=
a /= 2
a = a /2
%=
a %= 2
a = a %2
Contoh:
3.4
Notasi Matematika
Ekspresi C++
sqrt(140)
pow(87,10/3)
A = 3.14*r*r
||
abs(a)
(-b + sprt(b*b-4*a*c))/(2*a)
a cos(sin2b)
2 x v2 x sin x cos
5 x 10log a
5 * log10(a)
Contoh :
1/ (1 + exp(-z))
(1-b/2)/ (c/3 (3* a + 7) / b)
36
37
4. BAB IV
INPUT / OUTPUT
4.1
C++ Menyediakan objek bernama cin berguna untuk membaca data dari keyboard.
contoh :
38
39
5. BAB V
PENCABANGAN DENGAN IF DAN SWITCH
5.1
Struktur percabangan yang paling sederhana hanya melibatkan satu ekpresi yang
diperiksa, pernyataan if pada dasarnya memilki dua bentuk yaitu tidak mengandung else
dan mengandung else.
Bentuk sederhana dari pernyataan IF berupa:
if(kondisi)
{
//blok pernyataan yang dijalankan
//jika kondisi bernilai benar (true)
}
Contoh :
40
5.1.2
Pada percabangan if dua kondisi harus berisi pernyataan khusus yang berguna apabila
kondisi yang didefinisikan tidak terpenuhi atau bernilai salah
Bentuk umum pernyataan IF dan ELSE.
if(kondisi)
{
//blok pernyataan yang dijalankan
//jika kondisi bernilai benar
}
else
{
//blok pernyataan yang dijalankan
//jika kondisi bernilai benar
}
5.1.3
Pencabangan IF Bersarang
Yakni pernyataan dimana nilai suatu if berada dalam nilai if yang lain. Istilah simplenya
adalah if didalam if. Pernyataan seperti ini disebut if bersarang.
41
if (syarat/kondisi)
if(syarat/kondisi)
perintah1;
else
perintah2;
else
if(syarat/kondisi)
perintah3;
else
perintah4;
Sebagai contoh untuk if bersarang dalam menentukan nilai ujian dengan menggunakan
kriteria penilain A, B, C, D dan E.
Kriteria penentuan skor berdasarkan nilai numerik pada tabel dibawah ini:
Tabel 5-1 Tabel skor nilai
Nilai
Indeks
Nilai 85
75 Nilai <85
55 Nilai <75
40 Nilai <55
Nilai < 40
42
5.2
Selain menggunakan struktur if, C++ juga menawarkan penggunaan pencabangan atau
pemilihan dengan menggunakan switch.
Perintah Switch memungkinkan untuk melakukan sejumlah tindakan berbeda terhadap
sejumlah kemungkinan nilai. Bentuk umum percabangan dalam bentuk switch adalah
sebagai berikut :
switch (ekpresi)
{
case nilai_pertama:
pernyataan_pertama;
break;
case nilai_kedua:
pernyataan_kedua;
break;
case nilai_keempat:
pernyataan_ketiga;
break;
..
Default: pernyataan_n;
}
43
Contoh switch 1:
44
Contoh switch 2
Contoh switch 3
45
6.
BAB VI
PENGULANGAN
Pengulangan adalah suatu tindakan untuk melakukan hal yang sama berulang kali. Untuk
mendukung penulisan kode untuk proses pengulangan pada C++ dapat dilakukan dengan
menggunakan pernyataan-pernyataan berikut:
6.1
while
dowhile
for
Pengulangan while
while(kondisi)
{
// blok pernyataan
}
Dalam hal ini blok pernyataan akan dijalankan secara terus menerus selama kondisi
bernilai benar (true). Jika pada keadaan awal, kondisi bernilai salah maka blok pernyataan
tidak dapat dijalankan sama sekali.
6.2
Berbeda dengan pernyataan while yang melakukan pengecekan kondisi di awal blok
pengulangan, pada do.while kondisi ditempatkan pada bagian akhir. Hal ini akan
menyebabkan dilakukan proses pengulangan minimal satu kali walaupun kondisi yang
didefinisikan tidak terpenuhi.
Bentuk pernyataan dowhile adalah:
46
do
{
// Blok pernyataan yang dijalankan yang akan diulang
}
while (kondisi)
6.3
Pengulangan for
Pernyataan for berfungsi untuk menangani masalah pengulangan yang telah diketahui
banyaknya. Bentuk umum untuk pengulangan dengan menggunakan for adalah:
for(variable = nilai_awal;kondisi;variable++)
{
// Pernyataan yang akan diulang
}
Jika melakukan pengulangan yang sifatnya menaik (increment) maka nilai awal variable
harus lebih kecil dari nilai akhir yang akan dituliskan dalam kondisi. Sebaliknya jika
dilakukan pengulangan menurun (decrement) maka nilai awal harus lebih besar dari nilai
akhir.
Berikut ini contoh pemrograman yang menunjukkan proses pengulangan dengan
menggunakan for.
47
6.4
Konsep proses pengulangan for bersarang yaitu sebuah pengulangan yang terdapat
pengulangan yang lainnya. Bentuk umum for bersarang dapat dirumuskan seperti berikut:
Bila dilihat dari bentuknya, setiap pengulangan pertama akan menyelesaikan pengulangan
kedua. Pada saat pengulangan kedua maka program akan menyelesaikan pengulangan
ketiga.
Contoh program berikut aplikasi penggunaan for bersarang:
48
49
7. BAB VII
ARRAY
Array atau sering disebut larik berguna untuk menyimpan sejumlah nilai atau data yang
memiliki tipe data yang sama. Setiap data tersebut menempati lokasi atau alamat memori
yang berbeda-beda. Tiap nilai atau data dalam array disebut dengan elemen array.
7.1
Element Array
Tiap elemen array diidentifikasi dengan menggunakan indeks, sehingga untuk mengakses
nilai tersebut harus melalui indeks yang terdapat didalamnya. Indeks pada elemen array
selalu dimulai dengan 0.
Untuk mendeklarasikan array dalam bahasa pemrograman C++ dapat dilakukan dengan
menggunakan tanda [ ] (bracket). Bentuk umum pendeklarasian array adalah sebagai
berikut:
tipe_data nama_array[jumlah_elemen_array];
contoh:
int ArrayLarik[10];
pada contoh sintaks diatas akan mendeklarasikan sebuah aplikasi array dengan nama array
ArrayLarik dan menggunakan tipe data integer yang mempunyai jumlah elemn array
sebanyak 10 elemen.
Mengisi dan menampilkan Elemen Array
Untuk mengisi nilai kedalam elemen array dapat dilakukan dengan memasukan nilai pada
setiap elemen, misalnya:
A[0] = 1
A[1] = 3
A[2] = 7
.......
Cara lain untuk mengisikan nilai pada elemen array adalah dengan cara menggunakan
pengulangan (looping). Sebagai contoh jika kita ingin melakukan pengisian 10 elemen
array, maka dapat menuliskan sintaks pengulangan for sebagai berikut:
50
Cin >> B [C];
}
Untuk menampilkan array dapat juga dengan konsep yang sama seperti pengisian pada
elemen array.
7.2
Inisialisasi Array
51
7.3
Salah satu masalah yang sering muncul pada saat menggunakan array adalah melakukan
pencarian nilai yang terdapat pada elemen array. Misalnya jika ingin mencari dan
menampilkan nilai yang telah dimasukkan pada elemen array, dan menampilkan elemen
array.
Contoh program dibawah ini salah satu cara untuk mencari dan menampilkan elemen
array.
52
7.4
Array Karakter
Pada bahasa pemrograman C++, kumpulan karakter disebut dengan istilah teks (string).
Array dengan menggunakan elemen bertipe karakter biasanya menyimpan deretan
karakter.
Bentuk umum untuk mendeklarasikan array tipe karakter adalah:
char nama_array [jumlah_elemen_array];
Jika ingin mendeklarasikan variabel dengan 6 karakter, maka contoh sintaks nya adalah
char namaku [6] = { H, A, S, Y, A, \0};
karakter terakhir, \0 disebut dengan karakter null, yaitu karakter yang digunakan sebagai
terminator dari sebuah string pada pemrograman C++.
Untuk
mempermudah
penulisan
dan
menghindari
kesalahan
penulisan
serta
ukuran tipe data char adalah 1 byte, sehingga ukuran memori yang dibutuhkan untuk
pendeklarasian diatas adalah 6 byte.
53
Untuk membuktikan aplikasi array karakter silahkan tulis contoh program dibawah ini:
7.5
Mengurutkan Array
Data atau nilai yang terdapat pada elemen-elemen array dapat diurutkan (sorting). Metode
pengurutan dapat dilakukan secara menaik (ascending) maupun menurun (descending).
Salah satu kegunaan pengurutan data dengan dengan menggunakan array adalah untuk
mempercepat dan memudahkan proses pencarian data.
Untuk lebih memahami konsep pengurutan dengan menggunakan array, kerjakan contoh
program berikut:
54
7.6
Array 2 Dimensi
Array multidimensi ( 2 dimensi) adalah array yang terdiri dari beberapa subskrip array.
Array 2 dimensi akan mempunyai 2 subskrip array sedangkan array 3 dimensi akan
mempunyai 3 subskrip array, dan seterusnya.
Array 2 dimensi mempunyai 2 subskrip, yaitu baris dan kolom. Adapun bentuk umum
pendeklarasian array dua dimensi dalam bahasa pemrograman C++ adalah sebagai
berikut:
tipe_data
nama_array [jumlah_elemen_baris] [jumlah_elemen_kolom];
contoh program dibawah ini merupakan contoh array 2 dimensi yang diaplikasikan untuk
melakukan proses penjumlahan 2 matrik ordo 3 x 2.
55
7.7
Sama seperti array satu dimensi, pada array multidimensi dapat juga dilakukan proses
inisialisasi nilai pada elemen-elemennya.
Ada beberapa model inisialisasi nilai yang dapat dilakukan pada array, yaitu:
56
Contoh model 1:
int A [3] [3] = {1,. 2, 3, 4, 5, 6, 7, 8, 9};
Contoh model 2:
int B [3] [3] = { {1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
Untuk lebih memahami inisialisasi array multidimensi, silahkan tulis contoh program
dibawah ini:
57
REFERENSI
[1]
[2]
[3]
http://andryfajar27.blogspot.com.
[4]
O. Reading, www://cplusplus.com. .