Kamis, 08 Juni 2017

Modul 4 - Array dalam Fungsi

ARRAY DALAM FUNGSI
                                                                                               
Array dalam Fungsi

Dalam function dengan array adalah penggunaan variabel array pada saat pendeklarasian fungsi. Hal ini dinilai lebih efisien dalam menyelesaikan kasus matrik yang berukuran cukup besar, dengan menggunakan suatu fungsi maka proses perulangan sintaks tidak perlu dilakukan cukup hanya menjalankan fungsi yang bervariabel array Contoh :

void isi_larik (int a[10][10]);

Pendeklarasian sebuah array dalam sub program atau fungsi 
Fungsi Nama_Fungsi (Parameter Tipe_Data_Array)


Keunggulan Array:

1. Array sangat cocok pengaksesan secara acak, sembarang elemen pada array dapat diakses secara langsung tanpa melalui elemen - elemen lain. 
2. Jika berada disuatu lokasi elemen, maka sangat mudah untuk menelurusi ke elemen sekitar, baik elemen sebelumnya maupun setelahnya. 
3. Jika elemen - elemen array adalah nilai independen dan seluruhnya harus terjaga, dengan penyimpanan dengan array akan sangat efisien



Kelemahan Array:

1. Array harus bertipe homogen, kita tidak dapat memiliki elemen array yang berlainan. 
2. Kebanyakan bahasa pemrograman mengimplementasikan  array statik yang sulit diubah ukurannya diwaktu eksekusi. Bila penambahan dan pengurangan terjadi terus menerus maka representasi statis menjadi  tidak mungkin hal ini berakibat pada  :
1. Penggunaan memory menjadi tidak efisien

2. Membuang banyak waktu dalam komputasi
3. Pada suatu aplikasi, respresentasi statis tidak mungkin


Praktikum 4.1



Dalam sebuah deret bilangan yang dikumpulkan dalam variabel array yang terdiri dari 10 elemen, dari setiap bilangan tersebut memiliki alamat indeksnya. Dengan memasukan sebuah bilangan yang terdapat di variabel array kita dapat mengetahui alamat indeks dari bilangan tersebut pada nomor indeks berapa bilangan itu tersimpan.


Script :



#include <stdio.h> // lan-balon.blogspot.co.id
#include <iostream.h>
#include <conio.h>

int A[10] = {12,24,13,25,10,11,21,20,15,18}; //variabel array beserta isi elemen
int bil, c;

void cari (int bil) //fungsi mencari no indeks
{
for (c = 0; c < 10; c++)
{ //menampilkan hasil no index yang dicari
if (A[c] == bil) //pemilihan jika masukan sama dengan isi elemen
{
cout << "Bilangan yang anda cari berada di indeks ke - " << c;
break;
}
}
getch ();
}

int main()
{
//menampilkan isi elemen array
for (int i = 0; i < 10; i++)
{
cout << "Indeks - [" << i << "]" << " " << A[i] << endl;
}
cout << endl;

cout << "Masukan bilangan yang akan dicari : ";
cin >> bil; //masukan bilangan

cari (bil); //pemanggilan paramameter

for (c = 0; c < 10; c++)
{ //menampilkan jika tidak terdapat di dalam array
if (A[c] != bil)
{
cout << "Bilangan yang dicari tidak terdaftar";
break;
}
}
return 0;
}

Hasil Runningnya :





Penjelasannya :


Program ini di Buat untuk Data yang Kita buat ( Pencarian Data / Bilangan ) jadi Mudah banget kan Guys ..

Praktikum 4.2



Mobil 13 adalah perusahaan yang menjual mobil bekas, berdagang mobil bekas selama bertahun-tahun ternyata hanya ada tiga merek mobil yang selalu dicari oleh konsumen yaitu Toyota, Honda, dan Suzuki. Mobil 13 saat ini sudah memiliki cabang di kota besar  yaitu Jakarta, Surabaya, dan Medan dengan semakin banyaknya konsumen yang percaya dengan kualitas mobil bekas yang dijual oleh mobil 13. Perusahaan membutuhkan program yang dapat mencatat semua penjualan mobil bekas perbulan disetiap cabangnya. Selama ini masih di perhitungkan bersifat manual dalam bentuk bagan diatas kertas.


Script :


#include <iostream.h>  // lan-balon.blogspot.co.id


int factorial (int a) //parameter faktorial
{ //struktur pemiihian if
if (a == 0)
{ //fungsi rekursif
return 0;
}
else
if(a > 1)
{
return (a * factorial (a-1));
}
else
{
return 1;
}
}

int main()
{
int a;

cout << "\t\tProgram Menampilkan Deret Nilai Faktorial" << endl;
cout << "\nMasukan nilai factorial : ";
cin >> a; //imputan faktorial
cout << endl;
cout << "\nRekursif --> Hasil perkalian semua nilai dari " << a << "! = " << factorial (a); //pemanggilan dan menampilkan faktorial
return 0;
}

Hasil Runningnya :




Penjelasanya :


Fungsi Rekursif ini berfungsi untuk perkalian Berderet misal 5 maka hasilnya 120 seperti Gambar di atas .. 5*4*3*2*1 jadi Berderet perkaliannya ..



Praktikum 4.3


Dalam suatu kumpulan angka yang tidak beraturan kita diminta untuk mengurutkan, dari mulai terkecil hingga yang terbesar. Tipe data yang menangani kasus ini bersifat efisien adalah tipe data array.

Script :


#include <stdio.h> // lan-balon.blogspot.co.id
#include <conio.h>

void bubblesort (int data[], int n) //parameter bubblesort
{
int i, j = 0, temp, flag = 1; //variabel dan penetapan nilai di fuungsi

while (flag) //intruksi perulangan DO-WHILE dan FOR
{
flag = 0;
for (i = 0; i < n; i++)
{ //proses pengurutan angka dengan operator logika
if (data[i] > data[i + 1])
{
temp = data[i];
data[i] = data[i + 1];
data[i + 1] = temp;
flag++;
}
}
}
}

main()
{
int data[1000]; //variabel array dengan elemen 1000
int n, i, j; //variabel

printf ("BUBBLE SORT \n\n");
printf ("Masuk angka (max 1000) : ");
scanf ("%d", &n); //inputan jumlah elemen yang diguankan
printf ("Data (pisahkan angka dengan spasi) : "); //masukan dipisah dengan spasi
for (i = 0; i < n; i++) //perulangan untuk memasukan angka
{
scanf ("%d" , &data[i]);
}

bubblesort (data, n); //pemanggilan fungsi

printf ("\nOutput after sort : \n"); //menampilkan hasil sort dengan intruksi for
for (j = 0; j < n; j++)
{
printf ("%d ", data[j]);
}
}

Hasil Runningnya :



Penjelasannya :

Program ini di gunakan untuk perulangan yang kemudian nilai akan dipindah pindahkan sehingga angka dalam array dapat menjadi berurut.


Share this

0 Comment to "Modul 4 - Array dalam Fungsi"

Posting Komentar