Ask array 2 dimensi dan multidimensi c++ AdityaDS - AdityaDees

Hot

https://publishers.chitika.com/

Contact us for advertising.

23 August 2019

Ask array 2 dimensi dan multidimensi c++ AdityaDS

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



Array


Array 2 Dimensi


C++ juga menyediakan array 2 dimensi. Array ini dapat digunakan untuk banyak keperluan program sobat. Sebagai gambaran agar sobat lebih mudah paham, 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

No comments:

Post a Comment

Komentar yang bermutu Insyaallah akan mendapatkan berkah

https://payclick.com/

Contact us for advertising.