Sabtu, 25 Mei 2013


Pada array bagian 2 ini menjelaskan tentang pengurutan nilai elemen array 1 dimensi, Penjumlahan array 2 dimensi yang memiliki ordo sama, dan inisialisasi nilai pada array 2 dimensi.

1.     Mengurutkan Array
Data atau nilai yang  terdapat pada elemen-elemen array  dapat diurutkan  (sorting). Metoda pengurutan dapat dilakukan secara menaik (ascending) maupun  menurun  (descending).  Salah  satu kegunaan  pengurutan data dengan  menggunakan  array  adalah  untuk mempercepat dan  mempermudah  proses pencarian data.

Source code yang telah berisi penjelasan per-baris tentang pengurutan nilai elemen array 1 dimensi dapat dilihat sebagai berikut.

Coding Modul 8_1

Source code serta penjelasan per-baris tentang pengurutan nilai elemen array 1 dimensi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
/*
Moudul 8-1
Pengurutan Array
Nama : I Nyoman Yoga Setyawan
NRP  : 49013017
*/
#include <iostream>//pemanggilan file header iostream untuk input output
using namespace std;//pendeklarasian standar input output
int main()//fungsi utama bertipe integer yg akan pertama kali dijalankan
{//pembuka fungsi utama
  int A[7];//pendeklarasian array A denga jumlah elemen 7 yang bertipe integer
  int C;//pendeklarasian variabel C bertipe integer yg akan digunakan pada proses pengisian dan menampilkan kembali dari nilai elemen array
  cout<<"Masukkan nilai pada elemen array : "<<endl;//output berupa perintah pada jendela running
  for (C=0; C<7; C++)//perulangan for dengan 7 iterasi yang akan digunakan untuk melakukan pengisian nilai elemen array A
  {//pembuka perulangan for
    cout<<"A["<<C<<"] = ";//mengeluarkan elemen atau indeks array A sebanyak iterasi pada pengulangan
    cin>>A[C];//menampung nilai inputan user sebanyak iterasi pd pengulangan ke elemen array A
  }//penutup perulangan for
  cout<<"\n Nilai elemen array sebelum diurutkan : "<<endl;
  for (C=0; C<7; C++)//perulangan for dengan 7 iterasi yang akan digunakan untuk mengeluarkan nilai elemen array
  {//pembuka perulangan for
    cout<<"A["<<C<<"] = "<<A[C];//mengeluarkan elemen beserta nilai elemen pada array A
    cout<<endl;//membuat baris baru atau enter
  }//penutup perulangan for

  //pengurutan metode maksimum
  int j,k,jmaks,U,temp;//pendeklarasian variabel j,k,jmaks,U,temp bertipe integer yang akan digunakan pada proses mengurutkan nilai elemen array A
  U=6;//inisialisasi nilai awal variabel U sama dengan 6
  for (j=0; j<6; j++)//pengulangan for dengan 6 iterasi dari 0 sampai 5
  {//pembuka perulangan for pertama utk proses penguturan
    jmaks=0;//isisialisasi nilai awal variabel jmaks sama dengan 0
    for (k=1;k<=U;k++)//pengulangan for di dalam for pertama yang akan digunakan untuk menjalankan kondisi membandingkan nilai elemen array
    {//pembuka perulangan for kedua di dlm for pertama utk proses penguturan
       if (A[k] > A[jmaks])//kondisi yang akan membandingkan nilai array indeks A dengan indeks jmaks
       {
              jmaks = k;//pengisian nilai jmaks dengan nilai k apabila kondisi if terpenuhi atau bernilai true
       }
    }//penutup perulangan for kedua di dlm for pertama utk proses penguturan

       //proses pertukaran nilai array A pada indeks U dengan array A pada indeks jmaks
       temp = A[U];//mengisi nilai temp dengan nilai array A pada indeks U
       A[U] = A[jmaks];//mengisi nilai array A pd indeks U dengan nilai array A pd indeks jmaks
       A[jmaks] = temp;//mengisi nilai array A pd indeks jmaks dengan nilai temp
       U--;//dekremen variabel U, atau pengurangan nilai 1 pd nilai variabel U
  }//penutup perulangan for pertama utk proses penguturan
  cout<<endl;//membuat baris baru
  for (C=0; C<7; C++)//perulangan for dengan 7 iterasi yang akan digunakan untuk mengeluarkan nilai elemen array A yang telah dilakukan proses pengurutan secara ascending
  {//pembuka pengulangan for
       cout<<"A["<<C<<"] = "<<A[C];//mengeluarkan elemen beserta nilai elemen array A yang telah terurut secara ascending
       cout<<endl;
  }//penutup pengulangan for
  system("pause");//Menahan atau mempause jendela running
  return 0;//Akhir dari fungsi utama yang mengembalikan nilai 0
}//penutup fungsi utama

Untuk lebih jelasnya tentang pengurutan nilai elemen array 1 dimensi dapat dilihat pada video tutorial berikut.



Video Tutorial Mengurutkan  Nilai Elemen Array 1 Dimensi


2.     Array Multidimensi
Array multidimensi adalah array yang terdiri dari beberapa subskrip arrayArray 2 dimensi akan  mempunyai  2  subskrip  array  sedangkan  array  3  dimensi akan  mempunyai 3 subskrip array, dan seterusnya. Array  multidimensi sering  digunakan  untuk melakukan  proses perhitungan  dengan menggunakan matriks.  Array  2  dimensi mempunyai 2  subskrip, yaitu  baris dan  kolom.

 Adapun  bentuk umum pendekralasian array dua dimensi dalam bahasa pemrograman C++ adalah sebagai berikut:
tipe_data  nama_array [jumlah_elemen_baris] [jumlah_elemen_kolom];

Source code yang telah berisi penjelasan per-baris tentang penjumlahan dua buah array 2 dimensi dapat dilihat sebagai berikut.

Coding Modul 8_2

Source code serta penjelasan per-baris penjumlahan dua buah matriks 2 dimensi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
/*
Modul 8-2
Array 2 dimensi
Nama : I Nyoman Yoga Setyawan
NRP  : 49013017
*/
#include <iostream>//pemanggilan file header iostream untuk input output
using namespace std;//pendeklarasian standar input output

int main()//fungsi utama bertipe integer yg akan pertama kali dijalankan
{//pembuka fungsi utama
  typedef int matrix[3][2];//pendeklarasian array matriks 2 dimensi dgn jmlah elemn baris 3 dan jmlah elemen kolom 2 yang bertipe typedef integer
  matrix A,B,C;//pendeklarasian variabel A,B,C yang bertipe matriks
  int j,k;//pendaklariasn variabel j dan k bertipe integer
  cout<<"Masukkan nilai matriks A : "<<endl;//output berupa perintah pada jendela running dan pembuatan enter
//mengisi nilai pada elemen array 2 dimensi A
  for (j=0 ; j<3; j++)//perulangan for yang merepresentasikan baris dari dua dimensi array A
  {//pembuka perulangan for untuk baris
       for (k=0; k<2; k++)//perulangan for yang merepresentasikan kolom dari array dua dimensi A
       {//pembuka perulangan for untuk kolom
              cout<<"A ["<<j<<"] ["<<k<<"] = ";//menampilkan elemen baris dan kolom array dua dimensi A
              cin>>A[j][k];//menampung nilai inputan user sebanyak iterasi pd pengulangan baris dan kolom ke elemen array A
       }//penutup perulangan for untuk kolom
  }//penutup perulangan for untuk baris
  cout<<endl;//pembuatan baris baru atau enter
  cout<<"Masukan nilai matriks B : "<<endl;//output berupa perintah pada jendela running dan pembuatan enter
 
  //mengisi nilai pada elemen array 2 dimensi B
  for (j=0; j<3; j++)//perulangan for yang merepresentasikan baris dari array B dua dimensi
  {//pembuka perulangan for untuk baris
       for (k = 0; k<2; k++)//perulangan for yang merepresentasikan kolom dari array B dua dimensi
       {//pembuka perulangan for untuk kolom
              cout<<"B ["<<j<<"] ["<<k<<"] = ";//menampilkan elemen baris dan kolom array dua dimensi B
              cin>>B[j][k];//menampung nilai inputan user sebanyak iterasi pd pengulangan baris kolom ke elemen array B
       }//penutup perulangan for untuk kolom
  }//penutup perulangan for untuk baris
  cout<<endl;//pembuatan baris baru atau enter

  //proses penjumlahan array A dengan array B
  for (j=0; j<3; j++)//perulangan for yang merepresentasikan baris dari array dua dimensi
  {//pembuka perulangan for untuk baris
       for (k=0; k<2; k++)//perulangan for yang merepresentasikan kolom dari array dua dimensi
       {//pembuka perulangan for untuk kolom
              C[j][k] = A[j][k] + B[j][k];//menampung hasil penjumlahan nilai elemen array A dengan array B pada array C 
       }//penutup perulangan for untuk kolom
  }//penutup perulangan for untuk baris

  //menampilkan hasil penjumlahan nilai elemen array A dengan array B
  cout<<"Hasil penjumlahan dari matrik A dengan matriks B dengan ordo 3 x 2 :"<<endl;//output berupa keterangan pada jendela running dan pembuatan enter
  for (j=0; j<3; j++)//perulangan for yang merepresentasikan baris dari array dua dimensi C
  {//pembuka perulangan for untuk baris
       for (k=0; k<2; k++)//perulangan for yang merepresentasikan kolom dari array dua dimensi C
       {//pembuka perulangan for untuk kolom
              cout<<"C ["<<j<<"] ["<<k<<"] = "<<C[j][k];//menampilkan elemen baris dan kolom array dua dimensi C dan juga nilainya yang menampung nilai hasil penjumlahan nilai elemen array B dgn array A
              cout<<endl;//pembuatan baris baru atau enter
       }//penutup perulangan for untuk kolom
  }//penutup perulangan for untuk kolom

  system("pause");//Menahan atau mempause jendela running
  return 0;//Akhir dari fungsi utama yang mengembalikan nilai 0
}//penutup fungsi utama

Untuk lebih jelasnya tentang  penjumlahan nilai elemen dua buah array 2 dimensi dapat dilihat pada video tutorial berikut.




Video Tutorial Penjumlahan Nilai Elemen  Array 2 Dimensi


3.     Inisialisasi Array Multidimensi
Sama seperti array  satu dimensi, pada  array  multidimensi dapat juga dilakukan  proses inisialisasi nilai pada elemen-elemennya. Ada beberapa model inisialisasi nilai yang dapat dilakukan pada array, yaitu:

Contoh Model 1:

int A [3] [3] = { 1, 2, 3, 4, 5, 6, 7, 8, 9 };

Contoh Model 2:

int B [3] [3] = { {1,2,3}, {4,5,6), {7,8,9 } } ;


Source code yang telah berisi penjelasan per-baris tentang inisialisasi nilai pada array 2 dimensi dapat dilihat sebagai berikut.

Coding Modul 8_3

Source code serta penjelasan per-baris tentang inisialisasi nilai pada array 2 dimensi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
/*
Modul 8-3
Inisialisasi array ultidimensi
Array dua dimensi
Nama : I Nyoman Yoga Setyawan
NRP  : 49013017
*/
#include <iostream>//pemanggilan file header iostream untuk input output
using namespace std;//pendeklarasian standar input output
int main()//fungsi utama bertipe integer yg akan pertama kali dijalankan
{//pembuka fungsi utama
   int A[2][4] = {{1,2,3,4},{5,6,7,8}};//pendeklarasian dan inisialisasi nilai indeks pada array dua dimensi A
   int i,j;//pendeklarasian variabel i dan j yang bertipe integer
   cout<<"Nama : I Nyoman Yoga Setyawan"<<endl;//output yang menampilkan nama pada jendela runnig dan pembuatan enter
   cout<<"NRP  : 49013017 "<<endl<<endl;//output yang menampilkan NRP pada jendela runnig dan pembuatan enter 2 kali
  
   //menampilkan inisialisasi nilai elemen pada array dua dimensi A
   for (i=0; i<2; i++)//perulangan for yang merepresentasikan baris dari array dua dimensi A
   {//pembuka perulangan for untuk baris
       for (j=0; j<4; j++)//perulangan for yang merepresentasikan kolom dari array dua dimensi A
       {//pembuka perulangan for untuk kolom
              cout<<"A ["<<i<<"]["<<j<<"] = " <<A[i][j];//menampilkan elemen baris dan kolom array dua dimensi A, dan juga nilainya
                                                                                //yang telah diinisialisasi
              cout<<endl;//pembuatan baris baru atau enter
       }//penutup perulangan for untuk kolom
   }//penutup perulangan for untuk baris

   system("pause");//Menahan atau mempause jendela running
   return 0;//Akhir dari fungsi utama yang mengembalikan nilai 0
}//penutup fungsi utama


Untuk lebih jelasnya tentang inisialisasi nilai pada array 2 dimensi dapat dilihat pada video tutorial berikut.




Video Tutorial Inisialisasi Array 2 Dimensi

0 komentar:

Poskan Komentar