Contact Form

Name

Email *

Message *

Tutorial Bahasa Pemrograman C: Memahami Konsep Dasar Tipe Data Array

Post a Comment

Array / larik merupakan sekumpulan data dengan tipe yang sama, yang termuat didalam satu nama variabel.

Data-data yang ada didalam Array biasa disebut sebagai elemen.

Setiap elemen yang ada didalam Array, dibedakan berdasarkan indeksnya.

Elemen pertama menempati indeks 0, elemen kedua menempati indeks 1, dst.

Misal terdapat 5 elemen didalam Array, elemen tersebut akan terindeks secara berurutan mulai dari 0 s.d 4

Selain sebagai identifikasi tiap elemen, Indeks juga berfungsi untuk mengakses elemen didalam Array tersebut.

Terdapat berbagai macam Array berdasarkan dimensinya, yaitu:

  • Array berdimensi satu / Array berbentuk vektor yang digunakan untuk menyimpan satu larik data.
  • Array berdimensi dua / Array berbentuk tabel kolom, biasa digunakan untuk operasi matriks atau mengolah data dengan tabel dan kolom.
  • Array berdimensi tiga / Array berbentuk ruang, digunakan untuk membuat rubrik atau diagram tiga dimensi.


Pendeklarasian Array

Sama halnya dengan variabel lainnya, yang dimana setiap kali mau menggunakannya harus dideklarasikan terlebih dahulu.

Begitu juga dengan variabel yang bertipe Array, maka harus dideklarasikan terlebih dahulu. Yang bertujuan agar kompiler mengenali data tersebut sebagai data yang akan diolah didalam program.

Array biasa dituliskan dengan syntax seperti berikut.

  	
    // Pendefinisian Array
  	tipeData namaArray[ukuran];
    
    // Contoh
    int angka[5];
  

  • tipeData, Tipe data didalam Array menyatakan tipe isi/elemen yang disimpan.

    Contoh: int angka[5]; Variabel angka pada contoh disamping bertipe Array of int, (kumpulan dari integer) yang berarti bahwa Array/larik tersebut memuat data-data bertipe integer.

    Jadi, int angka[5]; bukan bertipe int, tetapi bertipe array of int.

    char nama[10]; varibel nama bertipe Array of char.

    float rataRata[10]; variabel rataRata bertipe Array of float,

    Dst.


  • namaArray, Nama Array (identifier) sebagai nama dari Array tsb. Usahakan nama Array yang digunakan merepresentasikan isi/elemen dari Array tsb.

  • [ukuran], Ukuran merupakan jumlah maksimal data yang akan dimuat didalam Array.

    int angka[5]; yang berarti bahwa variabel angka akan menyimpan data int sebanyak 5 elemen.

    Usahakan pada saat input data, tidak melebihi ukuran yang telah di-set, Untuk menghindari terjadinya buffer overflow (kelebihan muatan) yang dapat mengakibatkan program error dan sulit ditemukan penyebabnya.

    Hal ini terjadi karena, pada saat kita men-setting ukuran Array, komputer akan memesan ruang didalam memori sebanyak ukuran yang telah di-set tadi.

    Begitu juga sebaliknya, jika kita menginputkan banyaknya elemen Array kurang dari ukuran yang telah disetting, maka akan menyisakan ruang didalam memori yang telah dipesan tadi dan ruang (memori) yang seharusnya bisa digunakan untuk program lain akan terbuang sia-sia.

    Jadi, usahakan menginputkan elemen didalam Array secara pas sesuai ukurannya.


Array juga dapat langsung diinisialisasikan langsung pada saat pendeklarasiannya.

Elemen-elemen yang ada didalam array tersebut dimuat didalam tanda kurung kurawal { } dan dipisahkan dengan koma.

Perhatikan program berikut.

  	
    // Inisialisasi Array
    int angka[5];
    int angka[5] = {1,2,3,4,5};
    char huruf[5] = {'a','b','c','d','e'};
    int numbers[] = {1,2,3,4,5};
    char sayHello[] = "Hello Brodahh..!";
    float rataRata[3];
    Dst.
  

Pada saat penginisialisasian Array, kita diperbolehkan untuk tidak memberikan ukurannya, tetapi harus langsung diberikan nilai.

Pada contoh diatas, int numbers[] dan char sayHello[] tidak kita berikan ukuran elemen Array-nya.

Dalam hal ini, Kompiler C secara otomatis akan memesan ruang didalam memori sejumlah elemen yang diinisialisasikan tadi.


Itu tadi merupakan contoh pendeklarasian dan penginisialisasian Array.

Lalu bagaimana jika kita ingin menampilkan elemen-elemen didalam Array.

Elemen-elemen didalam Array dapat kita tampilkan dengan menyebutkan nama Array beserta indeksnya.

  	
    // Mengakses Elemen Array
  	namaArray[Index];
  

Perhatikan program berikut.

  	
  	#include <stdio.h> 
int main(){   int number[5] = {1,2,3,4,5};   printf("%d\n", number[0]); return 0; }

Didalam Array number[] kita ingin menampilkan angka 1, angka 1 merupakan elemen pertama dari Array number[];

Elemen pertama berada pada indeks 0.

Maka, didalam fungsi printf() kita tuliskan number[0], maka akan menghasilakan output angka 1.

Perhatikan kembali program berikut..

  	
  	#include <stdio.h> 
int main(){   char *namaHari[7] = {"Ahad","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"};   printf("%s\n", namaHari[5]); return 0; }

Program diatas kita menyimpan nama-nama hari didalam Array namaHari[].

Lalu, kita ingin menampilkan hari "Jumat".

Hari Jumat merupakan elemen ke-6 dari Array tersebut, elemen keenam berada pada indeks 5.

Maka ketika kita panggil namaHari[5]  akan menghasilkan output.


Lalu, bagaimana jika kita ingin menampilkan seluruh elemen yang ada didalam Array.

Apakah harus menampilkannya satu-persatu..??

Untuk menampilkan seluruh elemen didalam Array, dapat kita gunakan statement perulangan / looping.

Perhatikan program berikut.

  	
  	#include <stdio.h> 
int main(){   char *namaHari[7] = {"Ahad","Senin","Selasa","Rabu","Kamis","Jumat","Sabtu"};   for(int i=0; i<=6; i++){     printf("%s\n", namaHari[i]);   } return 0; }

Maka akan menghasilkan output

Itu tadi contoh pendeklarasian dan cara mengakses Array berdimensi satu.

Selanjutnya kita akan mempelajari cara deklarasi dan cara mengakses Array dimensi dua.

...

Didalam Array dimensi dua ini, elemen-elemen yang ada didalamnya tersimpan didalam sebuah tabel dan kolom.

Berikut merupakan syntax penulisan Array dua dimensi.

  	
    // Pendefinisian Array Dimensi Dua
  	tipeData namaArray[ukuranBaris][ukuranKolom];
    
    // Contoh
    int matriks[4][3];
  

  • ukuranBaris menyatakan banyaknya baris elemen dari Array tersebut
  • ukuranKolom menyatakan banyaknya kolom elemen dari Array tersebut.

Untuk mengakses elemen didalam Array dimensi dua, kita tuliskan nama Array-nya beserta indeks([baris][kolom]) berapa elemen tersebut disimpan.

Perhatikan program berikut.

  	
  	#include <stdio.h> 
int main(){   int matriks[4][3] = {     {23,24,25},     {10,20,30},     {26,27,28},     {40,50,60}   };   printf("%d\n", matriks[0][0]);   printf("%d\n", matriks[2][1]); return 0; }

Pada program diatas, kita ingin mengakses angka 23 dan 27.

Angka 23 berada pada indeks baris 0 dan indeks kolom 0.

Sedangkan angka 27, berada pada indeks baris 2 dan indeks kolom 1.

Maka akan menghasilkan output.


Untuk mengakses seluruh elemen didalam Array dua dimensi ini, kita dapat menggunakan statement perulangan bertingkat / nested loop.

Perhatikan program berikut.

  	
  	#include <stdio.h> 
int main(){   int matriks[4][3] = {     {23,24,25},     {10,20,30},     {26,27,28},     {40,50,60}   };   for(int i=0; i<=3; i++){     for(int j=0; j<=2; j++){       printf("%d\n", matriks[i][j]);       if(j == 2) printf("\n");     }   } return 0; }

Variabel i akan mengakses indeks baris didalam Array, Sedangkan variabel j akan mengakses indeks kolom.

Maka akan menghasilkan output.


Contoh diatas merupakan cara penginisialisasian Array secara manual.

Lalu bagaiamana cara Inisialisasi Array lewat inputan dari User..??

...

Array juga dapat digunakan sebagai parameter fungsi.

Perhatikan program berikut.

  	
  	#include <stdio.h> 
int jml; void inputNilai([]); void tampilNilai([]); int main(){   int nilaiMhs[5];   inputNilai(nilaiMhs);   printf("\n");   tampilNilai(nilaiMhs); return 0; } void inputNilai(int nilai[]){;   printf("Masukkan Jumlah mahasiswa : ");   scanf("%d", &jml);   for(int i=0; i<jml; i++){     printf("Masukkan nilai mahasiswa %d : ", i+1);     scanf("%d", &nilai[i]);   } } void tampilNilai(int nilai[]){;   for(int i=0; i<jml; i++){     printf("Nilai Mhs %d : %d \n", i+1, nilai[i]);   } }

Program diatas, kita ingin menginputkan nilai mahasiswa yang disimpan didalam Array nilaiMhs[].

Didalam fungsi main() kita panggil fungsi inputNilai() dan fungsi tampilNilai().

Didalam fungsi inputNilai() program meminta inputan nilai mahasiswa yang nantinya akan disimpan didalam Array nilaiMhs[] lewat parameter nilai[].

Selanjutnya didalam fungsi tampilNilai() program akan menampilkan nilai mahasiswa yang sebelumnya telah tersimpan didalam Array nilaiMhs[].

Maka akan menghasilkan output.


Sebagai pendalaman terhadap materi Array, Coba kerjakan Latihan Soal berikut.

  1. Buatlah sebuah variabel array of int yang memiliki ukuran MAKS. Dengan menggunakan looping for(), masukkan sebanyak n data ke dalam array tsb kemudian carilah nilai terbesar yang ada dalam array tsb. 

  2. Buat penjumlahan dua matriks A[2][2]dengan B[2][2]. Hasil penjumlahantersebut disimpan dalam matrik C. Tampilkan di layar masing-masing isi dari matriks A, B dan C

  3. Buatlah program yang terdiri atas :
    • fungsi input() yang bertugas menanyakan jumlah data sekaligus_memasukkan data bilangan sebanyak yang diminta ke dalam array nilai[]

    • fungsi findmax() yang bertugas mencari nilai terbesar yang ada pada array nilai[] tsb

    • fungsi main() yang memanggil fungsi input() dan fungsi findmax(), selanjutnya menampilkan nilai terbesar yang ada pada array nilai[]

    Petunjuk : jadikan array sebagai parameter fungsi



Related Posts

Post a Comment