Anda di halaman 1dari 13

X-1

BAB X
ARRAY

Nama : Rendi Agata Winda Sritama


NIM : 2018100
Kelas : C
Pengajar : NICOLLAS EDGAR SEPTANDITA HARIYANTO
(1818062)

VI.1 Landasan Teori

Selama ini kita menggunakan satu variabel untuk menyimpan 1 buah nilai
dengan tipe data tertentu. Misalnya :

int a1, a2, a3, a4, a5;

Deklarasi variabel diatas digunakan untuk menyimpan 5 data integer dimana


masing masing variabel diberi nama a1, a2, a3, a4, dan a5. Jika kita memiliki 10
data, 100 data integer bahkan mungkin data yang ingin kita proses tidak kita
ketahui atau bersifat dinamis? Kita tidak mungkin menggunakan variabel seperti
diatas.

Solusi?? → Array

Array adalah sebuah variabel yang menyimpan sekumpulan data yang


memiliki tipe sama. setiap data tersebut menempati lokasi atau alamat memory
yang berbeda-beda dan selanjutnya disebut dengan elemen array. Elemen array
tersebut kemudian dapat kita akses melalui indeks yang terdapat di dalamnya
namun penting sekali untuk diperhatikan bahwa dalam C++, Indeks array selalu di
mualai dari 0, bukan 1.
Untuk mendeklarasian sebuah array kita harus menggunakan tanda [..]
(bracket).

Bentuk umum dari variabel array dapat ditulis seperti dibawah ini :
X-2

Tipe_data nama_variabel[indeks]; //ketentuan

int data[4]; //contoh

Pada contoh diatas, data yang dapat ditampung yaitu 4 data. Indeks array
selalu dimulai dari angka 0. Sehingga pada kasus diatas, data yang tersimpan
dimulai dari indeks ke 0 hingga 3.

Namun anda juga dapat mendeklarasikan array sekaligus memberikan


inisialisasi tanpa harus memberikan tambahan deklarasi ukuran array, sebagai
berikut:

int daftarNilai [] = {10,9,8,10,9};


1. Array 1 Dimensi
Contoh sebelumnya yang kita praktekkan yaitu merupakan
array 1 dimensi. Cara diatas merupakan cara untuk melakukan
inisialisasi. Untuk mengisikan data ke dalam element-element
array kita dapat melakukannya langsung untuk setiap element ,
contohnya :

DATA[0]=1
DATA[1]=2
DATA[2]=3
DATA[3]=4
......
Dst
Namun cara di atas tidak efisien karena jika memerlukan data yang
banyak harus menuliskan script yang banyak juga. Cara yang lebih
umum dan banyak di gunakan untuk mengisikan nilai ke dalam
element array adalah dengan menggunakan perulangan (looping).
Contoh jika ingin mengisikan 4 elemen array, maka kita dapat
menulis sintaks seperti berikut :

for(int index=0; index<4; index++){


cout<<"DATA["<<index<<"] = ";cin>>data[index];
}

2. Array 2 Dimensi
Hampir sama dengan array 1 dimensi, yang membuat
array 2 dimensi berbeda adalah daya tampung datanya. Jika di
array 1 dimensi, kita perlu inisialisasi 1 angka untuk menunjukkan
X-3

berapa data yang bisa dimasukkan. Di array 2 dimensi, kita bisa


menginisialisasikan 2 angka. Array seperti ini sering di gunakan
untuk pemerosesan matrik, Bentuk umum dari array 2 dimensi
adalah sebagai berikut :

tipedata nama_array[jmlh baris][jmlah kolom];


float bil[2][5];
Ilustrasi tabel array sebagai berikut :

[0][0] [0][1] [0][2] [0][3] [0][4]

[1][0] [1][1] [1][2] [1][3] [1][4]

Contoh diatas menunjukkan bahwa kita dapat mengisi data dari


array 00, 01, 02, 03, 04, 10, 11 dan seterusnya. Sehingga, data yang
diisi totalnya menjadi 2 x 5 = 10 data.

VI.2 Langkah – Langkah Praktikum

1. Buka Aplikasi Dev C++.

2. Buka Modul Praktikum Algoritma dan Pemrograman.

3. Menjalankan script dari modul.


X-4

VI.3 Latihan Praktikum ke-1:

Latihan 1

1. Source code :
#include<iostream>
using namespace std;
int main(){
int a,c;
float rata,total=0;
cout<<"Jumlah Data:";cin>>c;
cout<<endl;
int data[c];
for(a=0;a<c;a++){
cout<<"Masukkan Nilai Mahasiswa ke-["<<a<<"] :
";
cin>>data[a];
total = total+data[a];
}
cout<<endl<<endl<<"Menampilkan nilai yang telah
dimasukkan "<<endl<<endl;
for(a=0;a<c;a++)
{
cout<<"Nilai Mahasiswa
ke-"<<a<<":"<<data[a]<<endl;
}
cout<<endl<<endl;
cout<<"Total Nilai :"<<total<<endl;
rata=total/c;
cout<<"Rata-Rata :"<<rata;
return 0;
}

2. Tampilan Program :.Mencari Rata-Rata Array


X-5

Gambar 10.1 Latihan Praktikum ke-1 (Mencari Rata-Rata Array)

3. Analisa Program

Pada program diatas terdapat deklarasi array yang bertype data


integer a. Untuk melakukan input data disertakan perulangan yang
dimulai dari 0 sampai <c yang berarti dari 0 sampai c,(yang sudah
diinputkan).jika memenuhi maka akan mengeluarkan output untuk
memasukkan nilai mahasiswa dan kita akan memasukkan
inputannya.dan akan menghitung nilai total,sampai batas perulangan
terpenuhi

VI.4 Latihan Praktikum ke-2:

Latihan 2

1. Source code :
#include<iostream>
using namespace std;
int main(){
int a,b,c;
cout<<"Jumlah Data:";cin>>b;
cout<<endl;
int data[b];
for(a=1;a<=b;a++){
cout<<"value ke-"<<a<<"= ";
cin>>data[a];
}
cout<<endl<<endl<<"Grafik Data"<<endl;
cout<<"========================"<<endl;
for(a=1;a<=b;a++)
{
cout<<"nomor ke-"<<a<<":";
for(c=1;c<=data[a];c++){
cout<<"*";
}
cout<<endl;
}
}

2. Tampilan Program :.Mengganti ke Program Bintang


X-6

Gambar 10.2 Latihan Praktikum ke-2 (Membuat Program Bintang)

3. Analisa Program

Pada program diatas terdapat deklarasi array yang bertype data


integer b. Untuk melakukan input data disertakan perulangan yang
dimulai dari 0 sampai <=b yang berarti dari 1 sampai sama dengan b,
(yang sudah diinputkan).jika memenuhi maka akan mengeluarkan
output untuk memasukkan nilai Value dan kita akan memasukkan
inputannya sebagai data [a]

VI.5 Tugas Praktikum ke-1:

Tugas 1

1. Source code :
#include <iostream>
using namespace std;
int main(){
int n;
cout<<"Masukkan ukuran ordo matriks pertama dan kedua
= ";cin>>n;
int matriks_1[n][n], matriks_2[n][n],hasil[n][n];
cout<<endl;
cout<<"Masukkan nilai matrik pertama = "<<endl;
for (int i=0;i<n;i++){
for(int j=0;j<2;j++){
cout<<"baris "<<i<<" kolom "<<j<<" : ";
X-7

cin>>matriks_1[i][j];
}
}
cout<<endl;
cout<<"Masukkan nilai matrik kedua = "<<endl;
for(int i=0; i<n; i++){
for(int j=0;j<2;j++){
cout<<"baris "<<i<<" kolom "<<j<<" : ";
cin>>matriks_2[i][j];
}
}
cout<<endl;
cout<<"Hasil penjumlahan matrik pertama dan kedua =
"<<endl;
for(int i=0; i<n; i++){
for (int j=0;j<2;j++){
cout << matriks_1[i][j]+matriks_2[i][j] << " ";
}
cout<<endl;
}
}

2. Tampilan Program :.Hasil Penjumlahan Matrik

Gambar 10.3 Tugas Praktikum ke-1 (Hasil Penjumlahan Matrik)

3. Analisa Program

Pada program diatas terdapat deklarasi array yang bertype data


integer n, Untuk melakukan input data disertakan perulangan yang
X-8

dimulai dari I = 0 sampai < n yang berarti dari I = 0 sampai n,dan j = 0


sampai 2 yang berarti dari 0 sampai 2 .jika memenuhi maka akan
mengeluarkan output untuk memasukkan baris dan kolom dengan
matriks_1[i][j] sebagai hasil inputannya [i] sebagai kolom dan [j]
sebagai baris

VI.6 Tugas Praktikum ke-2:

Tugas 2

1. Source code :Mengelompokkan nilai kelas


#include <iostream>

using namespace std;


void tertinggi(int maks_a, int maks_b)
{
if(maks_a>maks_b)
{
cout<<maks_a<<endl;
}
else
{
cout<<maks_b<<endl;
}
}
void terendah(int minim_a, int minim_b)
{
if(minim_a<minim_b)
{
cout<<minim_a;
}
else
{
cout<<minim_b;
}
}
int main()
{
int kelas[3]
[6],jumlah_a=0,jumlah_b=0,maks_a=0,minim_a=100,maks_b=0,
minim_b=100,b,a,rata_a,rata_b;
for(a=1;a<=2;a++)
{
cout<<"Data Nilai Kelas "<<a<<endl<<endl;
for(b=1;b<=5;b++)
{
cout<<"Nilai Mahasiswa Kelas "<<a<<"
Nomor "<<b<<" = ";cin>>kelas[a][b];
X-9

if(a==1)
{
if(maks_a<kelas[1][b])
{
maks_a=kelas[1][b];
}
if(minim_a>kelas[1][b])
{
minim_a=kelas[1][b];
}
jumlah_a+=kelas[1][b];
}
if(a==2)
{
if(maks_b<kelas[2][b])
{
maks_b=kelas[2][b];
}
if(minim_b>kelas[2][b])
{
minim_b=kelas[2][b];
}
jumlah_b+=kelas[2][b];
}
}
cout<<endl;
}
rata_a=jumlah_a/5;
rata_b=jumlah_b/5;
cout<<endl;
cout<<"Jumlah Nilai Kelas A = "<<jumlah_a<<endl;
cout<<"Rata - Rata Kelas A = "<<rata_a<<endl;
cout<<"Nilai Tertinggi Kelas A = "<<maks_a<<endl;
cout<<"Nilai Terendah Kelas A =
"<<minim_a<<endl<<endl;
cout<<"Jumlah Nilai Kelas B = "<<jumlah_b<<endl;
cout<<"Rata - Rata Kelas B = "<<rata_b<<endl;
cout<<"Nilai Tertinggi Kelas B = "<<maks_b<<endl;
cout<<"Nilai Terendah Kelas B =
"<<minim_b<<endl<<endl;
cout<<"Jumlah Nilai Kelas A & B =
"<<jumlah_a+jumlah_b<<endl;
cout<<"Rata - rata Nilai Kelas A & B =
"<<(rata_a+rata_b)/2<<endl;
cout<<"Nilai Tertinggi Dari Kelas A & B =
";tertinggi(maks_a,maks_b);
cout<<"Nilai Terendah Dari Kelas A & B =
";terendah(minim_a,minim_b);
}

2. Tampilan Program :.Mencari Nilai


X-10

Gambar 10.4 Tugas Praktikum ke-2 (Mencari Nilai)

3. Analisa Program

Pada program menggunakan data integer a dan b,dengan perulangan


for(a=1;a<=2;a++) untuk mengerjakan output baris sebagai “kelas”,dan
perulangan for(b=1;b<=5;b++)untuk mengerjakan output kolom
sebagai “nomor”dengan rumus kelas a mencari nilai tertinggi adalah
maks_a=kelas[1][b],mencari nilai terendah adalah minim_a=kelas[1]
[b]; dan mencari jumlah nilai adalah jumlah_a+=kelas[1][b]

Dan rumus kelass b mecari nilai tertinggi adalah maks_b=kelas[2]


[b],mencari nilai terendah adalah minim_b=kelas[2][b],dan mencari
jumlah nilai adalah jumlah_b+=kelas[2][b] Dan mencari rata-rata kelas
X-11

a adlah rata_a=jumlah_a/5 dan rata-rata kelas b adalah


rata_b=jumlah_b/5;

VI.7 Tugas Praktikum ke-3:

Tugas 3

1. Source code :
#include <iostream>
using namespace std;
int main(){
int a,b,c;
char kalimat[30];
cout<<"=====Program Membalik
Kalimat====="<<endl<<endl;
cout<<"Masukkan Kalimat :
";cin.getline(kalimat,30);
cout<<endl;
for (a=0; a<=kalimat[a];a++)
{
c = a+1;
}
cout<<"Jika dibalik Menjadi : ";
for (b=c; b>=0;b--)
{
cout<<kalimat[b];
}
cout <<endl;
}

2. Tampilan Program :. program membalik kalimat


X-12

Gambar 1.4 Tugas Praktikum ke-3 (program membalik kalimat)

3. Analisa Program

pada program diatas variabel a,b dan cbertipe data integer dan
variabel nama bertipe char kemudian pada cin>> kita menginputkan
sebuah kalimat setelah itu pada perulangan pertama, kita melakukan
perhitungan untuk menentukan nomor index paling terakhir,
X-13

VI.8 Kesimpulan

1. dalam C++, Indeks array selalu di mualai dari 0, bukan 1.


2. Untuk mendeklarasian sebuah array kita harus menggunakan tanda [..]
(bracket).
3. array 2 dimensi berbeda adalah daya tampung datanya. Jika di array 1
dimensi, kita perlu inisialisasi 1 angka untuk menunjukkan berapa data
yang bisa dimasukkan. Di array 2 dimensi

Anda mungkin juga menyukai