Larik: Perbedaan antara revisi

Konten dihapus Konten ditambahkan
k wkf, stub, kat, iw
 
(65 revisi perantara oleh 43 pengguna tidak ditampilkan)
Baris 1:
'''Larik'''Dalam ([[Bahasailmu Inggriskomputer]]:, ''array'larik''' ({{lang-en|array}}), dalam [[ilmu komputer]], adalah suatu [[tipe data]] terstruktur yang dapat menyimpan banyak [[data]] dengan suatu nama yang sama dan menempati tempat di [[memori]] yang berurutan ([[kontigu]]) serta bertipe data sama pula.
 
Larik dapat diakses berdasarkan [[indeks|indeksnya]]nya. Indeks larik ada yangumumnya dimulai dari 0 dan ada pula yang dimulai dari 1.angka bukan 0. Pengaksesan larik biasanya dibuat dengan menggunakan perulangan (''looping'').
 
== Larik Satu Dimensi ==
{{komputer-stub}}
Larik satu dimensi merupakan jenis larik dasar dan jenis larik yang paling sering digunakan,
pemakaian larik satu dimensi terutama dipakai dalam tipe data string (terutama dalam bahasa [[Bahasa pemrograman C]]).
 
== Larik Dua Dimensi ==
Larik dua dimensi merupakan tipe larik yang lain. Larik dua dimensi sering dipakai untuk merepresentasikan tabel dan matriks dalam pemrograman.
 
== Larik dalam beberapa bahasa pemrograman ==
 
=== Bahasa Pascal ===
 
Larik dalam bahasa Pascal dapat didefinisikan dengan indeks awal dan indeks akhirnya.
 
Contoh:
program larik;
var arr: array[1..10] of integer; //larik dengan indeks awal 1 dan indeks akhir 10
begin
arr[1]:= 5; //memasukkan nilai ke indeks 1
writeln(arr[i]); //mencetak angka 5
end.
 
=== Bahasa C ===
 
Larik dalam bahasa C selalu dimulai dari indeks 0. Larik dapat didefinisikan secara '''statik''' atau '''dinamik'''. Jika didefinisikan statik, ukuran larik akan tetap dari awal program hingga akhir program. Jika didefinisikan dinamik, ukuran larik dapat berubah selama program berjalan karena memesan tempat pada memori [[heap]]. Proses pemesanan tempat pada memori disebut dengan [[alokasi]]. Sedangkan proses pembebasan memori yang sudah dipesan disebut dengan [[dealokasi]].
 
Contoh larik statik:
#include <stdio.h>
int main(){
int arr[10]; //indeks awal 0 dan indeks akhir 9
arr[0] = 5;
printf("%d\n", arr[0]);
}
 
Contoh larik dinamik:
#include <malloc.h>
int main(){
int * arr;
arr = (int *) malloc(10 * sizeof(int)); //memesan 10 tempat pada memori
arr[0] = 5;
free(arr); //menghancurkan larik. Memori pada heap dibebaskan
arr = (int *) malloc(5 * sizeof(int)); //memesan 5 tempat baru pada memori
free(arr); //di akhir program jangan lupa untuk menghancurkan larik dinamik
}
 
=== Bahasa Java ===
 
Dalam bahasa Java tipe data larik direpresentasikan sebagai sebuah [[Objek (ilmu komputer)|objek]] khusus. Karena itu pada bahasa Java larik yang dibuat selalu bersifat dinamik. Namun walaupun bersifat dinamik, larik pada bahasa Java tidak perlu dihancurkan karena proes penghancuran dilakukan secara [[otomatis]] melalui suatu prosedur yang disebut dengan [[Pengumpulan sampah (ilmu komputer)|pengumpulan sampah]] ([[bahasa Inggris|Inggris]]: Garbage Collecting).
 
Sama seperti bahasa C, indeks larik selalu dimulai dari 0.
 
Contoh:
public class larik {
public static void main(String args[]) {
int[] arr = new arr[10];
arr[0] = 5;
System.out.println(arr[0]);
}
}
 
=== PHP ===
 
Sama seperti di JAVA larik di PHP juga merupakan sebuah object lebih tepatnya lagi [[Map (ilmu komputer)|map]] terorder. Ada dua tipe larik di PHP, indexed array (simple array) dan associated array (key=>value array). Di PHP, element larik bisa berupa [[String (ilmu komputer)|string]], Bilangan, [[Boolean (ilmu komputer)|boolean]], dan semua tipe data primitive lainnya, termasuk larik juga bisa menjadi element larik lainnya.
 
Cara medefinisikan larik:
#mendefinisikan array kosong
$larik = array();
 
Contoh indexed array (simple array):
$jam = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12);
$hari = array('senin', 'selasa', 'selasa', 'rabu', 'kamis', 'jumat', 'sabtu');
 
Contoh associated array:
$bulan = array('1'=>'January', '2'=>'February', '3'=>'Maret', '4'=>'April');
$komponenKalender = array(
'bulan'=> array(1, 2, 3, 4, 5, 6, 7, 8, 9,10, 11, 12),
'hari' => array('senin', 'selasa', 'selasa', 'rabu', 'kamis', 'jumat', 'sabtu')
);
 
== Pranala luar ==
* {{en}} [http://php.net/manual/en/language.types.array.php PHP: Array Manual]
* {{id}} [http://www.myphptutorials.com/tutorials/8/conditional-array-perulangan-di-php Conditional, Array & Perulangan di PHP]
 
[[Kategori:Struktur data]]
 
 
[[en:Array]]
{{komputer-stub}}