-->

Pusat Ilmu Secara Detil

Operasi-operasi Array pada Pemrograman C

Operasi-operasi Array pada Pemrograman C

Tutorial Struktur Data dengan  menggunakan Pemrograman Bahasa C kita kali ini akan mempelajari materi tentang Operasi-operasi pada Array.

Seperti yang kita ketahui bahwa Array merupakan kontainer yang dapat menampung banyak variabel, namun harus memiliki tipe data yang sama. Jadi kalau kita ingin menampung nilai integer pada variabel umur andi, umur budi, maka kita dapat menjadikan variabel umur menjadi Array.

Berikut ini adalah istilah yang perlu dipahami dalam Array:
  • Elemen
    Setiap item yang disimpan dalam sebuah array disebut dengan elemen
  • Index
    Setiap lokasi dari sebuah elemen dalam array memiliki nomor index yang digunakan untuk mengidentifikasi elemen.

Index

Dari gambar diatas:
  • Index sebuah array selalu dimulai dari 0
  • Panjang arrah adalah 8 yang artinya array tersebut menyimpan 8 elemen.
  • Tiap-tiap elemen dapat diakses melalui indexnya. Contoh untuk mengakses elemen 41, maka indexnya adalah 4.

Cara Deklarasi Array

Untuk mendeklarasi array terdapat beberapa cara :
  • Cara Pertama:
    int x[5];
    x = {1, 2, 3, 4, 5};

  • Cara Kedua
    int x[5] = {1, 2, 3, 4, 5};
    

Operasi-Operasi Dasar Terhadap Array

Berikut ini adalah operasi-operasi dasar yang dapat dilakukan pada array:
  • Traverse
    Mencetak semua elemen satu persatu.
  • Insertion
    Menambah sebuah elemen pada index tertentu
  • Delete
    Menghapus sebuah elemen pada index tertentu.
  • Search
    Mencari suatu elemen array dengan menggunakan index atau nilai yang diberikan.
  • Update
    Melakukan proses pembaharuan nilai elemen pada posisi index tertentu.

Contoh Operasi Traverse pada Array

#include<stdio.h>
#include<conio.h>
int main()
{
    int Angka[] = {1,3,5,7,8};
    int n    = 5;
    int i;
    
    printf("Cetak Elemen Array Satu Persatu :\n");
    for(i=0;i<n;i++)
    {
		printf("Angka[%d] = %d \n",i,Angka[i]);          
    }
    getch();
}

Outputnya adalah :
Cetak Elemen Array Satu Persatu :
Angka[0] = 1
Angka[1] = 3
Angka[2] = 5
Angka[3] = 7
Angka[4] = 8

Contoh Operasi Insertion pada Array

Operasi insert adalah proses menambah sebuah elemen atau lebih dalam sebuah array. Elemen-elemen tersebut dapat ditambahkan diawal, diakhir ataupun pada suatu index array yang dikehendaki.
#include<stdio.h>
#include<conio.h>
int main()
{
    int Nilai[] = {1,3,5,7,8};
    int item = 10;
    int k    = 3;
    int n    = 5;
    int i    = 0;
    int j    = n;
    
    printf("Elemen array awal :\n");
    
    for(i=0;i<n;i++)
    {
		printf("Nilai[%d] = %d \n",i,Nilai[i]);
	                    
    }
	n = n+1;
	while(j>=k)
	{
		Nilai[j+1] = Nilai[j];
		j		= j-1;
	}
	
	Nilai[k] = item;
	printf("\nElemen array setelah operasi insertion :\n");
	for(i=0;i<n;i++)
	{
		printf("Nilai[%d] = %d \n",i,Nilai[i]);
	}
    
 getch();
}

Outputnya :
Elemen array awal :
Nilai[0] = 1
Nilai[1] = 3
Nilai[2] = 5
Nilai[3] = 7
Nilai[4] = 8

Elemen array setelah operasi insertion :
Nilai[0] = 1
Nilai[1] = 3
Nilai[2] = 5
Nilai[3] = 10
Nilai[4] = 7
Nilai[5] = 8

Sepeti yang terlihat pada contoh diatas, kita akan menambah elemen array pada index ke-3, sehingga nilai "7" yang awalnya berada pada index ke-3 berubah menjadi index ke-4.


Contoh Operasi Delete pada Array

Operasi delete mengacu kepada menghapus elemen yang telah ada pada sebuah array serta mengatur kembali tata letak semua elemen pada array tersebut.
#include<stdio.h>
#include<conio.h>
int main()
{
    int Nilai[] = {1,3,5,7,8};
    int k =3, n=5;
    int i,j;
    
    printf("Elemen array awal :\n");
    
    for(i=0;i<n;i++)
    {
		printf("Nilai[%d] = %d \n",i,Nilai[i]);
	                    
    }
	j = k;
	while(j < n)
	{
		Nilai[j-1] = Nilai[j];
		j = j+1;
	}
	n = n-1;
	
	printf("\nElemen array setelah operasi delete :\n");
	for(i=0;i<n;i++)
	{
		printf("Nilai[%d] = %d \n",i,Nilai[i]);
	}
    
 getch();
}

Outputnya :
Elemen array awal :
Nilai[0] = 1
Nilai[1] = 3
Nilai[2] = 5
Nilai[3] = 7
Nilai[4] = 8

Elemen array setelah operasi delete :
Nilai[0] = 1
Nilai[1] = 3
Nilai[2] = 7
Nilai[3] = 8

Dalam program diatas,kita akan menghapus nilai elemen 5 yang berada pada index ke-2. Jadi begitu dihapus, maka nilai-nilai elemennya akan diperharui dan secara otomatis akan berubah posisi indexnya.

Contoh Operasi Search pada Array

Pada operasi search kita akan mencari posisi index dari sebuah elemen yang dimasukkan dalam proses pencarian.
#include<stdio.h>
#include<conio.h>
int main()
{
    int Nilai[] = {1,3,5,7,8};
    int item =5, n=5;
    int i=0, j=0;
    
    printf("Elemen array awal :\n");
    
    for(i=0;i<n;i++)
    {
		printf("Nilai[%d] = %d \n",i,Nilai[i]);
	                    
    }
	
	while(j < n)
	{
		if(Nilai[j]==item)
		{
         break;                  
        }
        j = j+1;
	}
	printf("Elemen %d ditemukan pada posisi index %d\n",item, j);
   getch();
}
Ouputnya:
Elemen array awal :
Nilai[0] = 1
Nilai[1] = 3
Nilai[2] = 5
Nilai[3] = 7
Nilai[4] = 8
Elemen 5 ditemukan pada posisi index 2

Seperti yang terlihat bahwa kita akan mencari nilai elemen 5 terletak diposisi index keberapa ?. Sehingga program mampu memberitahukan bahwa nilai elemen 5 berada di index ke-2.

Operasi Update pada Array

Dalam operasi ini, kita akan mengupdate suatu nilai elemen pada array. Jadi nilai elemen pada suatu index tertentu akan digantikan dengan suatu nilai baru.
#include<stdio.h>
#include<conio.h>
int main()
{
    int Nilai[] = {1,3,5,7,8};
    int k=3, n=5, item=10;
    int i,j;
    
    printf("Elemen array awal :\n");
    
    for(i=0;i<n;i++)
    {
		printf("Nilai[%d] = %d \n",i,Nilai[i]);
	                    
    }
	
    Nilai[k-1] = item;
     
	printf("Elemen array setelah diupate\n");
	for(i=0; i<n; i++)
	{
     printf("Nilai[%d] = %d\n", i, Nilai[i]);         
    }
    getch();
}

Outputnya :
Elemen array awal :
Nilai[0] = 1
Nilai[1] = 3
Nilai[2] = 5
Nilai[3] = 7
Nilai[4] = 8
Elemen array setelah diupate
Nilai[0] = 1
Nilai[1] = 3
Nilai[2] = 10
Nilai[3] = 7
Nilai[4] = 8

Jika kita perhatikan, pertama nilai elemen pada index-2 adalah 10. Namun setelah diupdate maka elemen tersebut berubah menjadi 10.

Share this:

Related Posts
Disqus Comments