Fungsi & Array : Nilai Variabel, Array Sebagai Parameter, & Passing Array

7 12 2009

5. Anggap a adalah variabel :

char a[15]=”informatika”;

char b = a[5];

char c = a[12];

a.)Apakah isi dari b? Mengapa begitu?

Variabel b berisi karakter m. Hal ini terjadi karena perintah char b = a[5] akan membuat variabel b terisi dengan karakter berindeks 5 dari variabel a. Karena nomor indeks dimulai dari 0 maka b akan terisi dengan karakter keenam yaitu m.

b.)    Apakah isi dari c? Dan apa maksudnya?

Variabel c tidak terisi apa-apa. Hal ini terjadi karena perintah char c = a[12] akan membuat variabel c terisi karakter berindeks 12 dari variabel a. Sedangkan, varaiabel a hanya memiliki karakter berindeks 0 – 10.

6. Apakah yang dimaksud dengan array sebagai parameter? Bagaimana cara mempassing array sebagai parameter fungsi? berikan contohnya?

Array sebagai parameter yaitu program yang digunakan untuk memasukkan sejumlah data, kemudian data tersebut diurutkan dan dicetak ke layar. Untuk melakukan passing yang dipakai adalah buble sort. Algoritma pada metoda pengurutan ini :

a)      Atur i bernilai 0.

b)      Bandingkan x[i] dengan x[j], dengan j berjalan dari i+1 sampai n-1. pada setiap perbandingan, jika x[i] > x[j], maka isi x[i] dan x[j] ditukarkan.

c)      Naikkan nilai i sebesar satu.

d)     Bila i < (n-1), ulangi mulai langkah 2.

Catatan  :  i : nilai array

X : nama array untuk menyimpan data.

N : jumlah data.

Contoh program :

#include<stdio.h>

#include<conio.h>

#define MAKS 20

void pemasukan_data (float x[], int *pjumlah);

void pengurutan_data (float x[], int jumlah);

void penampilan_data (float x[], int jumlah);

main()

{

float data[MAKS];

int jum_data;

pemasukan_data(data, &jum_data);

pengurutan_data(data, jum_data);

penampilan_data(data, jum_data);

}

void pemasukan_data(float x[], int *pjumlah)

{

int i, jum;

printf("jumlah data: ");

scanf("%d", &jum);

for(i=0; i<jum; i++)

{

printf("data ke-%d: ", i+1);

scanf("%f", &x[i]);

}

*pjumlah = jum;

}

void pengurutan_data(float x[], int jumlah)

{

int i, j;

float smtr;

for(i=0; i<jumlah-1; i++)

for(j=i+1; j<jumlah; j++)

{

smtr = x[i];

x[i] = x[j];

x[j] = smtr;

}

}

void penampilan_data(float x[], int jumlah)

{

int i;

puts("\n data setelah diurutkan : \n");

for(i=0; i<jumlah; i++)

printf("data ke-%d, %g\n", i+1, x[i]);

getch ();

}

Posted By : Evan Yofiyanto @ Evan’s Blog : Kuliah Informatika (kuliahinformatika.wordpress.com)

[FREAX]


Actions

Information

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s




%d bloggers like this: