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 arrayX : 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 (); }
Tidak ada komentar:
Posting Komentar