Skip to main content

Array 2 dimensi dan multidimensi c++




Setelah membahas mengenai pengertian array dan array 1 dimensi saatnya lanjut kepembahasan array 2 dimensi dan multidimensi.



Array 2 Dimensi


C++ juga menyediakan array 2 dimensi. Array ini dapat digunakan untuk banyak keperluan program. Berikut ada data mahasiswa baru di jurusan Teknik Informatika, Manajemen Informatika dan Sistem Informasi pada suatu Universitas dari tahun 2015 hingga 2019. Terlihat pada tabel berikut ini :


Gambar 1 tabel data mahasiswa baru

Mendefinisikan Array 2 Dimensi

Dari tabel pada Gambar 1 dapat dibuat kedalam bentuk array 2 dimensi. Pendefinisiannya :

         int data_mhs [3][5];

- 3 menyatakan jumlah baris (mewakili jurusan)
- 5 menyatakan jumlah kolom (mewakili tahun mahasiswa baru)


dari pendefinisian array diatas dapat dinyatakan pada gambar berikut ini : 

Gambar 2 array 2 dimensi

Sama seperti array 1 dimensi, data pada array juga ditempatkan pada memori yang berurutan.

Mengakses Array 2 Dimensi

Elemen-elemen pada array 2 dimensi dapat diakses dengan bentuk :

         nama_array[indeks_baris][indeks_kolom];

elemen-elemen pada Gambar 2 dapat dinyatakan dengan Gambar 3 berikut :

Gambar 3 penomoran elemen array 2 dimensi

Contoh pengaksesan elemen array :

1. data_mhs[0][3] = 180;
Instruksi memberikan nilai 180 ke baris 0 kolom 3.

2. cout<<data_mhs[0][3];
Instruksi menampilkan elemen data_mhs pada baris 0 kolom 3.

3. cin>>data_mhs[0][3];
Memberi nilai untuk elemen data_mhs pada baris 0 kolom 3.

Contoh program :

#include<iostream>
using namespace std;


int main()
{
      int data_mhs[3][5];

      int tahun,jurusan;

       data_mhs[0][0]=150; //jurusan TI 2015
       data_mhs[0][1]=200; //jurusan TI 2016
       data_mhs[0][2]=180; //jurusan TI 2017
       data_mhs[0][3]=210; //jurusan TI 2018
       data_mhs[0][4]=190; //jurusan TI 2019

       data_mhs[1][0]=160; //jurusan MI 2015
       data_mhs[1][1]=180; //jurusan MI 2016
       data_mhs[1][2]=190; //jurusan MI 2017
       data_mhs[1][3]=220; //jurusan MI 2018
       data_mhs[1][4]=200; //jurusan MI 2019

       data_mhs[2][0]=100; //jurusan SI 2015
       data_mhs[2][1]=120; //jurusan SI 2016
       data_mhs[2][2]=130; //jurusan SI 2017
       data_mhs[2][3]=150; //jurusan SI 2018
       data_mhs[2][4]=150; //jurusan SI 2019

 cout<<"Data mahasiswa baru"<<endl;
 while(1){
 cout<<"Pilihan jurusan :\n"
        <<"0. TI\n"
        <<"1. MI\n"
        <<"2. SI\n"
        <<"Pilih : ";cin>>jurusan;
        if(jurusan<3 && jurusan>=0)
               break;
 }


while(1){
       cout<<"Pilihan tahun 2015-2019 : ";cin>>tahun;
        tahun -= 2015; //konversi ke 0,1,2, 3 atau 4
        if(tahun<5 && tahun>=0)
               break;
 }
       cout<<"Jumlah mahasiswa baru : "
              <<data_mhs[jurusan][tahun]<<endl;
}

Hasil eksekusi program :



Mula-mula program mengisi data ke array mhs_data. Kemudian program meminta memasukan pilihan jurusan dan tahun. Kedua masukan tersebut dicek tidak akan berada diluar jangkauan yang telah ditentukan oleh indeks-indeks pada array mhs_data.

Inisialisasi Array 2 Dimensi

Inisialisasi pada array 2 dimensi pada contoh diatas dapat ditulis seperti :

int data_mhs[3][5]={
                                   {150,200,180,210,190},
                                   {160,180,190,220,200},
                                   {100,120,130,150,150}
                                 };


Array 3 Dimensi


Bentuk umum pendefinisian array 3 dimensi :

         tipe nama_array[indeks_x][indeks_y][indeks_z];

sebagai contoh :

         int angka[2][2][3];

sama seperti array 1 dimensi dan 2 dimensi, array 3 dimensi juga bisa diinisialisasi. Contoh :


        int huruf[2][2][3] = {
                                          { {1,2,3},{4,5,6} },

                                          { {6,7,9},{10,11,12}}
                                         };
 Gambaran array int huruf[2][2][3] diatas dilukiskan pada gambar berikut :

Gambar 4 array 3 dimensi

keterangan :
- int huruf[pertama][kedua][ketiga];

Contoh program :


#include<iostream>
using namespace std;


int main()
{
        int angka[2][2][3] = {
                                            {  {1,2,3},{4,5,6} },
                                            
{ {7,8,9},{10,11,12}}

                                           };

           for(int i=0;i<2;i++)
          {
                    for(int j=0;j<2;j++)
                    {

                             for(int k=0;k<3;k++)

                             {
                                      cout<<angka[i][j][k]<<" ";
                             }cout<<endl;
                     }cout<<endl;
           }
}

Hasil eksekusi program :



Array sebagai Argumen Fungsi


Array juga dapat berkedudukan sebagai parameter di dalam fungsi. Misalnya pada contoh program menghitung rata-rata dengan fungsi dan array berikut :



#include<iostream>

using namespace std;



float fungsi_array(float data[],int jumlah);
         
int main()
{
          int jumlah;
          cout<<"Masukan jumlah : ";cin>>jumlah;


         float data[jumlah];

                   for(int i=0;i<jumlah;i++)
                   {
                                      cout<<"Nilai ke-"<<i+1<<" = ";cin>>data[i];
                   }

         cout<<"Rata-rata = "<<fungsi_array(data,jumlah);

}

float fungsi_array(float data[],int jumlah)
{
                   float rata;
                   for(int i=0;i<jumlah;i++)
                   {
                                      rata += data[i];
                   }
                  
           return rata/jumlah;
}

Hasil eksekusi :

Gambar 5 output menghitung rata-rata dengan fungsi dan array

Keterangan :
float fungsi_array(float data[],int jumlah);
pendefinisian fungsi

cout<<"Rata-rata = "<<fungsi_array(data,jumlah);
memanggil fungsi_array 

float fungsi_array(float data[],int jumlah)
{ ... 
}

mengembalikan nilai return ke fungsi main yang memanggil fungsi tersebut.

Contoh diatas menggunakan array 1 dimensi, untuk array 2 dimensi berikut contohnya.

Contoh program :
#include<iostream>
using namespace std;


const int baris=10;

const int kolom=10;

void matriks(int data[][kolom],int &bariss,int &kolomm);
          
int main()
{
           int jbaris, jkolom ;


           int data[baris][kolom];

           matriks(data,jbaris,jkolom);

           for(int i=0;i<jbaris;i++)
           {
                      for(int j=0;j<jkolom;j++)
                      {
                                 cout<<data[i][j]<<" ";
                      }cout<<endl;
           }
 

}

void matriks(int data[][kolom],int &bariss, int &kolomm)
{
           cout<<"Masukan baris : ";cin>>bariss;
           cout<<"Masukan kolom : ";cin>>kolomm;

           for(int i=0;i<bariss;i++)
           {
                      for(int j=0;j<kolomm;j++){
                                cout<<"Elemen "<<i<<", "<<j <<" = ";cin>>data[i][j];
                      }
           }
}


Hasil eksekusi program :


Nah sekian dulu mengenai array 2 dimensi dan multidimensi.

Semoga bermanfaat. Terimakasih

Comments

Popular posts from this blog

PEMBELAJARAN KOLABORATIF DARING ( KELAS MAYA )

PEMBELAJARAN KOLABORATIF DARING ( KELAS MAYA ) Kelas Maya  adalah kelas yang diadakan tanpa tatap muka secara langsung antara pengajar dan yang menerima bahan ajar. Kelas virtual berhubungan langsung dengan internet. Dimana pengajar menyediakan sebuah forum kepada para penerima bahan ajar dan melakukan diskusi seperti kegiatan belajar mengajar dikelas. Perbedaan antara kelas maya dengan kelas biasa  adalah adanya pembatasan berkomunikasi. Dalam kelas maya dapat diketahui kemajuan proses belajar, yang dapat dipantau baik oleh guru, siswa maupun orang tua. Selain digunakan untuk proses pendidikan jarak jauh, system tersebut juga dapat digunakan sebagai penunjang kelas tatap muka. Jenis – Jenis Kelas Maya 1. Learning Management System (LMS) Learning Management System adalah perangkat lunak atau software yang dgunakan untuk keperluan administrasi, dokumentasi, laporan kegiatan belajar mengajar dan kegiatan secara online (terhubung ke internet), E-learning dan mate

KEWARGAAN DIGITAL

Warga digital adalah orang yang sadar tentang hal yang baik dan hal yang kurang / tidak baik, menunjukkan kecerdasan perilaku teknologi, dan membuat pilihan yang tepat ketika menggunakan teknologi. Warga digital merupakan individu yang memanfaatkan TI untuk membangun komunitas, bekerja, dan berekreasi. Warga digital secara umum telah memiliki pengetahuan dan kemampuan mengoperasikan TI untuk berkomunikasi maupun mengekspresikan sebuah idé atau gagasan. Contohnya bermain facebook, menulis blog, mencari informasi di forum, dan lain-lain. Sama halnya dengan warga dunia nyata, semua warga digital memiliki kewajiban untuk menjaga etiket dan norma, serta memiliki rasa tanggung jawab dalam berperilaku di dunia maya. Kewargaan digital dapat didefinisikan sebagai norma perilaku yang tepat dan bertanggung jawab terkait dengan penggunaan teknologi. Kewargaan digital adalah konsep yang dapat digunakan untuk memberikan pengetahuan mengenai penggunaan teknologi dunia maya denga

Konsep Pembuatan Video Pra Produksi (Sinopsis, Naskah dan StoryBoard)

Di era digital saat ini banyak menuntut konten lebih dari sekedar teks atau hanya grafik saja. Konsep video berfungsi sebagai media komunikasi dalam menyampaikan gagasan yang lebih menarik. Konten yang disampaikan dalam sebuah video haruslah sederhana dan mudah dimengerti oleh penggunanya. Karena manusia sebagai makhluk visual, maka akan lebih mudah mengerti dan mendapatkan informasi melihat sesuatu yang hidup, bergerak dan bersuara. Untuk itu diperlukan sebuah presentasi dalam bentuk video dimana terdapat gambar bergerak sekaligus suara yang diperlukan Proses dalam pembuatan video itu sendiri dimulai dari pencarian ide, membuat sinopsis, membuat naskah, shooting, produksi dan pasca produksi. Namun pembahasan kita kali ini adalah pembuatan video presentasi Pra Produksi. Yaitu membedakan apa itu sinopsis, bagaimana membuat naskah dan storyboard. 1.     Sinopsis Sinopsis adalah alur cerita secara singkat. Sinopsis dijelaskan dalam tulisan singkat sehingga penonton mampu

Contact