Makalah Array Function, pengertian, cara kerja dan contoh program
BAB
I
DASAR
TEORI
1.1.
ARRAY / LARIK
Array merupakan
bagian dasar pembentukan suatu struktur data yang lebih kompleks. Hampir setiap
jenis struktur data kompleks dapat di sajikan secara logik oleh array.
Array adalah suatu
tipe data terstuktur yang berupa sejumlah data sejenis (bertipe data sama) yang
jumlahnya tetap dan diberi suatu nama tertentu.
Elemen-elemen
array tersusun secara sekuensial di dalam memori sehingga memiliki alamat yang
berdekatan. Array dapat berupa array 1 dimensi, 2 dimensi, bahkan n-dimensi.
Elemen-elemen array bertipe data sama tapi bisa bernilai sama atau
berbeda-beda. Array digunakan untuk menyimpan data-data yang diinputkan
masing-masing kedalam memory komputer. Jadi jumlah datanya banyak namun satu
jenis.
Karaktersitik
Array :
1. mempunyai
batasan dari pemesanan alokasi memory (bersifat statis)
2. mempunyai type
data sama (homogen)
3. dapat di akses
secara acak.
4. berurutan
(terstruktur)
Array
Mempunyai Dimensi :
1.1.1. Array Dimensi satu (vektor)
Elemen-elemen
array dapat diakses oleh program menggunakan suatu indeks tertentu. Pengaksesan
elemen array dapat dilakukan berurutan atau random berdasarkan indeks tertentu
secara langsung. Pengisian dan pengambilan nilai pada indeks tertentu dapat
dilakukan dengan mengeset nilai atau menampilkan nilai pada indeks yang
dimaksud.
Array satu dimensi
juga disebut array dimensi satu atau biasa juga disebut Vektor karena hanya
memiliki satu arah.
Deklarasi array
satu dimensi :
tipe_data nama_var
[ukuran_array]
Ket :
–type_data :
menyatakan type elemen array misal int, char, float
–nama_var : nama
variabel array
–ukuran :
menyatakan jumlah maksimal elemen arraynya
1.1.2.
Array Dimensi banyak
-
Dimensi dua (matrix / tabel )
- Dimensi tiga (kubik)
Array multi
dimensi berarti array yang kita deklasaikan dapat dikembangkan ke array dimensi
2 dan seteruanya. Array multi dimensi merupakan topik yang menarik dalam
matematika. Setiap dimensi dalam array direpresentasikan sebagai sub bagian
dalam array.
Oleh karena itu,
array dua dimensi array memiliki dua sub bagian, sebuah array tiga-dimensi
memiliki tiga sub bagian dan sebagainya. Sebuah contoh bentuk nyata yang baik
dari array dua dimensi adalah sebuah papan catur. Satu dimensinya merupakan
delapan baris, sedangkan dimensi lainnya merupakan delapan kolom.
Array dua dimensi
sering kali digambarkan/dianalogikan sebagai sebuah matriks atau bentuk grid.
Jika array berdimensi satu hanya terdiri dari 1 baris dan banyak kolom, array
berdimensi dua terdiri dari banyak baris dan banyak kolom yang bertipe sama.
Array dua dimensi
merupakan array yang terdiri dari M buah baris dan N buah kolom. Bentuknya dapat
berupa matriks atau tabel.
Bentuk Umum :
Tipe_Data
Nama_Variabel [index-1] [index-2]
1.2.
FUNGSI/PROSEDURE
Function ( Fungsi
) merupakan blok dari kode yang dirancang untuk melaksanakan tugas khusus. Pada
intinya fungsi berguna untuk :
·
Mengurangi pengulangan penulisan program
yang berulangan atau sama.
·
Program menjadi terstruktur, sehingga
mudah dipahami dan dikembangkan.
Fungsi-fungsi yang
sudah kita kenal sebelumnya adalah fungsi main(), yang bersifat mutlak, karena
fungsi ini program akan dimulai, sebagai contoh yang lainnya fungsi printf()
yang mempunyai tugas untuk menampilkan informasi atau data kelayar dan masih
banyak lainnya.
Ø Struktur
Fungsi
Sebuah fungsi
sederhana mempunyai bentuk penulisan sebagai berikut :
nama_fungsi(argumen)
{
… pernyataan /
perintah;
… pernyataan /
perintah;
… pernyataan / perintah;
}
Ø Prototipe
Fungsi
Prototipe fungsi
digunakan untuk menjelaskan kepada kompiler mengenai :
·
Tipe keluaran fungsi.
·
Jumlah parameter.
·
Tipe dari masing-masing parameter.
Salah satu
keuntungan pemakai prototipe, kompiler akan melakukan konversi antara tipe
parameter dalam definisi dan parameter saat pemanggilan fungsi tidak sama atau
akan menunjukkan kesalahan jika jumlah parameter dalam definisi dan saat
pemanggilan berbeda.
Contoh prototipe
fungsi :
float total (
float a, float b); (menggunakan titik koma)
Jika dalam
penggunaan fungsi yang dideklarasikan dengan menggunakan prototipe, maka bentuk
definisi harus diubah. Sebagai contoh pada pendefinisian berikut :
float total(a, b)
float a, y;
Bentuk
pendefinisian diatas harus diubah menjadi bentuk modern pendefinisian fungsi :
float total(float
a, float b) (Tidak menggunakan titik koma)
Ø Parameter
Fungsi
Terdapat dua macam
para parameter fungsi, yaitu :
·
Parameter formal adalah variabel yang ada
pada daftar parameter dalam definisi fungsi.
·
Parameter Aktual adalah variabel yang
dipakai dalam pemanggilan fungsi.
Bentuk penulisan
Parameter Formal dan Parameter Aktual.
ü Pemanggilan
dengan nilai ( Call by Value )
Pemanggilan dengan
nilai merupakan cara yang dipakai untuk seluruh fungsi buatan yang telah
dibahas didepan. Pada pemanggilan dengan nilai, nilai dari parameter aktual
akan ditulis keparameter formal. Dengan cara ini nilai parameter aktual tidak
bisa berubah, walaupun nilai parameter formal berubah.
ü Pemanggilan
dengan Referensi (Call by Reference)
Pemanggilan dengan
reference merupakan upaya untuk melewatkan alamat dari suatu variabel kedalam
fungsi. Cara ini dapat dipakai untuk mengubah isi suatu variabel diluar fungsi
dengan melaksanakan pengubahan dilakukan didalam fungsi.
ü Inline
Function
Fungsi inline (
inline function ) digunakan untuk mempercepat proses program, terutama
program-program yang menggunakan sering menggunakan fungsi, terutama
program-program yang menggunakan pernyataan perulangan proses seperti for,
while dan do – while. Inline function dideklarasikan dengan menyisipkan kata
kunci inline didepan tipe data.
ü Function
Overloading
Function
Overloading adalah mendefinisikan beberapa fungsi, sehingga memiliki nama yang
sama. Dapat diartikan bahwa fungsi yang overload berarti menyediakan versi lain
dari fungsi tersebut. Salah satu kelebihan dari C++ adalah Overloading. Sebagai
contoh membentuk fungsi yang sama dengan tipe yang berbeda-beda dan dibuatkan
pula nama fungsi yang berbedabeda pula.
BAB
II
PRAKTIKUM
PROGRAM
A. PROGRAM
ARRAY
1. PROGRAM
1
#include <iostream>
using namespace std;
int main() //fungsi utama//
{
char kar[5]; //mendeklarasikan kar dengan array=5//
int i;
//mendeklarasikan variabel i//
kar[0]='A'; //array
pertama di hitung mulai dengan 0 dengan nilai A//
kar[1]='E'; //array
kedua angka 1 dengan nilai E//
kar[2]='I'; //array
ketiga angka 2 dengan nilai I//
kar[3]='U'; //array
keempat angka 3 dengan nilai U//
kar[4]='O'; //array
kelima angka 4 dengan nilai O//
for (i=0;i<5;i++)//perulangan yang mana
i adalah array yang akan diulangi
sebanyak 5 kali//
cout<<kar[i]<<"\n"; //pemanggilan kar[i] yg
merupakan output akhir
//yg mana [i] adalah kar[0] sampai kar[4] atau
array//
return 0; //kembali
ke awal//
}
2. PROGRAM
2
#include <iostream>
using namespace std;
int main() //fungsi utama//
{
char kar[5]; //mendeklarasikan kar
dengan array=5 //dengan array
yang
dideklarasikan dibawah secara terpisah//
int i; //mendeklarasikan variabel i//
kar[0]='A'; //array
pertama di hitung mulai dengan 0 dengan nilai A//
kar[1]='E'; //array
kedua angka 1 dengan nilai E//
kar[2]='I'; //array
ketiga angka 2 dengan nilai I//
kar[3]='U'; //array
keempat angka 3 dengan nilai U//
kar[4]='O'; //array
kelima angka 4 dengan nilai O//
for (i=0;i<5;i++)//perulangan yang mana
i adalah array yang akan diulangi
sebanyak 5 kali//
cout<<kar[3]<<"\n"; //pemanggilan kar[3]yg merupakan output akhir//
//yg mana dalam program ini Cuma 1 dari 5
array yang
dipilih yaitu array 3 dngan nilai U//
return 0; //kembali
ke awal//
}
3. PROGRAM
3
#include <iostream>
using namespace std;
int main()
{
char kar[]={'A','E','I','U','O'}; //mendeklarasikan
kar yang nilai arraynya
langsung
di deklarasikan setelah kar[]=//
int i; //mendeklarasikan
i dalam integer//
for (i=0;i<5;i++) //perulangan yang mana i adalah array yang akan
diulangi
sebanyak 5 kali//
cout<<kar[i]<<"\n"; //pemanggilan kar[i] yg merupakan output
akhir
//yg mana [i] adalah kar[0] sampai kar[4] atau
array//
return 0;
}
4. PROGRAM
4
#include <iostream>
using namespace std;
int main()
{
char kar[]={'A','E','I','U','O'};
//mendeklarasikan kar yang nilai arraynya
langsung
di deklarasikan setelah kar[]=//
int i; //mendeklarasikan
i dalam integer//
for (i=0;i<5;i++) //perulangan yang mana i adalah array yang akan
diulangi
sebanyak 5 kali//
cout<<kar[4]<<"\n; //pemanggilan
kar[4] yg merupakan output akhir
//yg mana dalam program ini Cuma 1 dari 5
array yang
dipilih yaitu array 4
dngan nilai O,karna array dimulai
dari 0//
return 0;
}
5. PROGRAM
5
#include <iostream>
using namespace std;
int main() //fungsi utama//
{
int data [] = {10,4,2,5,3,8,9,2,4,5,3};
//mendeklarasikan data bentuk array
berupa
deretan angka//
int i;
//mendeklarasikan i sebagai integer//
int terbesar; //mendeklarasikan variabel terbesar dalam bntuk integer//
terbesar = data [0]; //mendefinisikan variabel terbesar adalah data
dengan
array dimulai dari 0//
for (i=i;i<10;i++) //pengulangan(for)mengulangi eksekusi program
sesuai
dengan
bnyak yang diperintah//
if (data[i]>terbesar) //menggunakan struktur pemilihan agar bisa
menentukan
bilangan yang terbesar//
terbesar = data [i];
//mendefinisikan kembali variabel terbesar adalah
data dengan array i,
dimana i adalah deretan angka2 pada
deklarasi array diatas//
cout<<"terbesar =
"<<terbesar<<"\n"; //pemanggilan angka terbesar
dengan
memanggil variabel terbesar//
return 0;
}
6. PROGRAM
6
#include <iostream>
#include <stdio.h>
#include <string>
using namespace std;
int main()
{
string negara [5] [2]; //deklarasi negara
dengan 2 array maka digunakan
string,
array nya 5 dan 2//
int baris; //mendeklarasikan
variabel baris//
negara[0][0]= "INDONESIA";
//memasukkan array 0 0 yaitu indonesia//
negara[0][1]= "JAKARTA";//memasukkan
array 0 1 yaitu jakaarta//
negara[1][0]= "PILIPINA";//memasukkan
array 1 0 yaitu pilipina//
negara[1][1]= "MANILA";//memasukkan
array 1 1 yaitu manila//
negara[2][0]= "AUSTRIA";//memasukkan
array 2 0 yaitu austria//
negara[2][1]= "VIENA";//memasukkan
array 2 1 yaitu viena//
negara[3][0]= "USA";//memasukkan
array 3 0 yaitu usa//
negara[3][1]= "DC";//memasukkan
array 3 1 yaitu dc//
negara[4][0]= "MALAYSIA";//memasukkan
array 4 0 yaitu malaysia//
negara[4][1]= "KUALA";//memasukkan
array 4 1 yaitu kuala//
//dimana array pertama
untuk nama negara array kedua nama ibukota nya//
for (baris=0;baris<5;baris++)
//perulangan baris yang berisi nama negara
dan
ibukotanya//
cout<<negara [baris][0]
<<" "<<negara
[baris][1]<<"\n";
//output dan pemanggilan
negara baris [0] yang mana array pertama(negara) dengan pemanggilan negara
baris [1] yang merupakan array kedua//
return 0;
}
7. PROGRAM
7
#include <iostream>
#include <stdio.h>
#include <string>
using namespace std;
double keliling (double panjang,
double lebar) //deklarasi variabel keliling
yang berisi panjang dan
lebar//
{
double keliling; //deklarasi keliling //
keliling = 2*(panjang+lebar); //rumus keliling yang akan di eksekusi//
return keliling;
}
int main() //fungsi utama//
{
double k, panjang, lebar; //deklarasi
variabel k,panjang dan lebar//
panjang = 56.4;
lebar = 2;
k = keliling(panjang, lebar); //pemanggilan
kembali fungsi yang di
definisikan
sebagai keliling yang berisi panjang dan lebar//
cout<<"keliling :
"<<k; //pemanggilan hasil akhir//
return 0;
}
B. PROGRAM
FUNGSI
8. PROGRAM
8
#include <iostream>
#include <stdio.h>
#include <string>
using namespace std;
void garis()
//mendefinisikan fungsi untuk membentuk garis//
{
cout<<"==================================="<<endl;
//output
yang berupa garis//
}
int main() //fungsi
utama//
{
garis(); //pemanggilan
fungsi awal//
cout<<"MY NAME IS ARY
IRFANDI"<<endl;//output yang akan
keluar
garis();//pemanggilan fungsi awal yang berupa
garis //
getchar();
}
9. PROGRAM
9
#include <iostream>
#include <stdio.h>
#include <string>
using namespace std;
void DT()
//mendefinisikan fungsi sebagai DT(data mhs)//
{
string nama[4]; //mendeklarasikan nama
dengan array [4]//
int indeks; //mendeklarasikan indeks dalam
integer//
for (indeks=0;indeks<=3;indeks++)
//perulangan, yg mana yg diulang
adalah
indeks//
{
cout<<"masukkan nama
mahasiswa = "; cin>>nama[indeks]; //inputkan
nama mahasiswa dengan
banyak sesuai perintah perulangan//
}
cout<<"daftar nama mahasiswa
\n";
cout<<"No | nama mahasiswa \n"<<endl;
for(indeks=0;indeks<=3;indeks++)
//perulangan kembali yaitu
pemanggilan
data yang diinput dengan banyak sesuai perulangan dengan output setelah yang
diatas//
{
cout<<indeks+1<<" "<<nama[indeks]<<endl;
//pemanggilan indeks+1 dengan maksud dimulai
dari 1 dan tiap diulang ditambah 1, kemudian pemanggilan spasi agar no dengan
namany tidak dempet(bisa juga pakai setw) kemudian pemanggilan nama array
indeks//
}
}
int main()
{
DT(); //pemanggilan kembali fungsi diatas
yang mana telah lengkap yang
akan ditampilkan di
output//
return 0;
}
10. PROGRAM
TAMBAHAN (Cari Sendiri)
#include<iostream>
using namespace std;
void volume_limas()
//mendefinisikan fungsi sebagai volume_limas//
{
double p, l, t;
//deklarasi panjang, lebar,tinggi//
cout<<"Volume
limas Segi Empat"<<endl;
cout<<"Masukkan
panjang: ";
cin>>p;
cout<<"Masukkan
lebar: ";
cin>>l;
cout<<"Masukkan
tinggi: ";
cin>>t;
cout<<"Volume
limas segi empat: "<<p*l*t/3<<endl; //hasil disertai rumus
volume
limas//
}
void volume_kerucut()
//mendefinisikan fungsi sebagai volume_kerucut//
{
double r, t; //deklarasi
jari2 dengan tinggi dalam bntuk double//
cout<<"Volume
kerucut"<<endl;
cout<<"Masukkan
jari2: ";
cin>>r;
cout<<"Masukkan
t: ";
cin>>t;
cout<<"Volume
kerucut: "<<3.14*r*r*t/3<<endl; //hasildan rumus vol
kerucut//
}
void volume_bola() //mendefinisikan fungsi sebagai
volume_bola//
{
double r; //deklarasi jari2 dalam bntuk double//
cout<<"Volume
bola"<<endl;
cout<<"Masukkan
nilai r= ";
cin>>r;
cout<<"Volume
bola= "<<4*3.14*r*r*r/3<<endl; //hasildan rumus vol bola//
}
int main() //fungsi utama;
{
volume_limas();
//pemanggilan kembali fungsi yg didefinisikan volume
limas
diatas//
volume_kerucut();//pemanggilan
kembali fungsi yg didefinisikan volume
kerucut
diatas//
volume_bola();//pemanggilan
kembali fungsi yg didefinisikan volume
bola
diatas//
return 0;
}
BAB III
KESIMPULAN
Berdasarkan materi
mata kuliah alpro hari kamis 14 januari 2016 yang dirangkum dalam laporan
praktikum ini, dapat disimpulkan :
Ø Array
merupakan bagian dasar pembentukan suatu struktur data yang lebih kompleks. Array
juga merupakan suatu tipe data terstuktur yang berupa sejumlah data sejenis
(bertipe data sama) yang jumlahnya tetap dan diberi suatu nama tertentu.
Ø Function
( Fungsi ) merupakan blok dari kode yang dirancang untuk melaksanakan tugas
khusus.
Ø Pada
intinya fungsi berguna untuk :
a. Mengurangi
pengulangan penulisan program yang berulangan atau sama.
b. Program
menjadi terstruktur, sehingga mudah dipahami dan dikembangkan.
Ø Dapat
diketahui dari program awal bahwa array lebih bisa menghemat memori dan
meringankan kerja komputer.
Ø Array
bisa berbentuk 1 dimensi maupun multi dimensi.
Ø Program
no 6 adalah salah satu bentuk array 2 dimensi yang menunjukkan negara beserta
ibukotanya.
Ø Pada
program no 6 juga bisa menggunakan setw untuk memberi jarak antara negara dan
ibukota atau array pertama dan array kedua.
DAFTAR
PUSTAKA
Agusta , Andi pengertian
prosedur dan fungsi dalam C++, diambil kamis 14 januari 2016 link : http://andiagusta.blogspot.co.id/2014/01/pengertian-prosedur-dan-fungsi-adalah.html.
Mr.Dark Wizard,
array pada C++, diambil kamis 14 januari 2016 link : http://darkzone7.blogspot.co.id/2013/04/array-pada-c.html.
Prawisata, angan
array pada c++, diambil pada 14 januari 2016 link : https://wistaprawista.wordpress.com/materi/algoritma-dan-struktur-data/array-pada-c/.
Suhardi,ardi,
modul ajar teori array pada c++, diambil 14 januari 2016 link : http://dokumen.tips/search/?q=Modul+ajar+teori+Array+pada+C%2B%2B.