Page 120 - PEMROGRAMAN DASAR MENGGUNAKAN C
P. 120

tukarkan  nilainya  dengan  A[3] sehingga  sampai  di  sini  array  akan  terurut  secara
                      menaik seperti yang terlihat di bawah ini.

                         4       7      8       30      40
                       A[0]  A[1]  A[2]  A[3]  A[4]

                      Pada  proses  di  atas,  dapat  kita  lihat  bahwa  ada  4  tahapan  yang  harus  dilalui  untuk
                      melakukan proses pengurutan 5 buah elemen array. Secara umum, apabila proses di atas
                      akan  kita  terjemahkan  ke  dalam  kode  program  dalam  bahasa  C,  maka  kita  akan
                      menuliskannya sebagai berikut.


                      int N;        /* Mendeklarasikan variabel untuk menampung banyak
                                        elemen array */
                      int j, k; /* Mendeklarasikan variabel sebagai indeks
                                        pengulangan */
                      int temp; /* Mendeklarasikan variabel sebagai variabel
                                        temporari */
                      for (j=0; j<N-1; j++) {
                         for (k=N-1; k>=(j+1); k--) {
                           if (A[k] < A[k-1]) {
                              /* Melakukan proses pertukaran nilai antara A[k]
                                   dengan A[k-1] */
                              temp = A[k];
                              A[k] = A[k-1];
                              A[k-1] = temp;
                           }
                         }
                      }


                      Untuk membuktikan hal tersebut, perhatikan program lengkap di bawah ini yang akan
                      mengurutkan elemen-elemen yang terdapat pada array A di atas.


                      #include <stdio.h>

                      #define MAX 5

                      /*  Mendefinisikan  fungsi  untuk  menampilkan  elemen-elemen  dari
                      suatu array */
                      void TampilkanArray(int A[], int n) {
                         for (int j=0; j<n; j++) {
                           printf("A[%d] = %d\n", j, A[j]);
                         }
                      }

                      int main() {
                         /* Mendeklarasikan array dengan melakukan inisialisasi nilai
                            ke dalamnya */
                         int A[MAX] = { 40, 4, 30, 8, 7};
                         int j, k;         /* Mendeklarasikan variabel sebagai indeks
                                              pengulangan */
   115   116   117   118   119   120   121   122   123   124   125