+ All Categories
Home > Documents > M07 ARRAY LARIK

M07 ARRAY LARIK

Date post: 24-Jan-2023
Category:
Upload: mercubuana
View: 0 times
Download: 0 times
Share this document with a friend
22
ARRAY (LARIK)
Transcript

ARRAY (LARIK)

Larik merupakan sekumpulan data yang mempunyai nama dan tipe yang sama. Larik sering disebut juga variabel berindeks. Nilai suatu data dalam larik ditentukan oleh nama dan indeks. Larik banyak digunakan pada operasi yang melibatkan indeks seperti pada statistik dan matriks.

Tipe data larik dapat berupa larik satu demensi, dua demensi, tiga demensi atau banyak dimensi.

Bentuk Umum Larik Satu Dimensi :  tipe_larik nama_larik [ukuran]    Bentuk Umum Larik Dua Dimensi : tipe_larik nama_larik [ukuran1][ukuran2]

Bentuk Umum :

Tanda kurung [ ] digunakan untuk menunjukkan elemen array

  Perhitungan elemen array dimulai dari 0, bukan 1

   C++ tidak mengecek array. Bila anda menyatakan int x[10], ini artinya 10 elemen yang dimulai dari 0. Karena itu elemen terakhir array adalah x[9]. Bila anda salah mereferensikannya dengan x[10], anda akan mendapatkan harga yang tidak terpakai. Akan lebih buruk lagi jika anda memberikan harga ke x[10], yang tidak dapat diterima.

Perhatikan :

Misalkan kita memiliki sekumpulan data ujian seorang siswa, ujian pertama bernilai 90, kemudian 95,78,85. Sekarang kita ingin menyusunnya sebagai suatu data kumpulan ujian seorang siswa. Dalam array kita menyusunnya sebagai berikut

ujian[0] = 90; ujian[1] = 95; ujian[2] = 78; ujian[3] = 85;

Empat pernyataan diatas memberikan nilai kepada array ujian. Tetapi sebelum kita memberikan nilai kepada array, kita harus mendeklarasikannya terlebih dahulu, yaitu :

int ujian[4];

REPRESENTASI LARIK

Perhatikan bahwa nilai 4 yang berada didalam tanda kurung menujukkan jumlah elemen larik, bukan menunjukkan elemen larik yang ke-4. Jadi elemen larik ujian dimulai dari angka 0 sampai 3.

Pemrogram juga dapat menginisialisasi larik sekaligus mendeklarasikannya, sebagai contoh :

 int ujian[4] = {90,95,78,85};

Elemen terakhir dari larik diisi dengan karakter ‘\0’. Karakter ini memberitahu kompiler bahwa akhir dari elemen larik telah dicapai. Walaupun pemrogram tidak dapat melihat karakter ini secara eksplisit, namun kompiler mengetahui dan membutuhkannya.

Sekarang kita akan membuat daftar beberapa nama pahlawan di Indonesia

char pahlawan[3][15] ;

char pahlawan[0][15] = “Soekarno”; char pahlawan[1][15] = “Diponegoro”; char pahlawan[2][15] = “Soedirman”;

Larik diatas terlihat berbeda denga contoh larik pertama kita. Perhatikan bahwa pada larik pahlawan memilih dua buah tanda kurung [ ][ ]. Larik seperti itu disebut larik dua dimensi.

Tanda kurung pertama menyatakan total elemen yang dapt dimiliki oleh larik pahlawan dan tanda kurung kedua menyatakan total elemen yang dapat dimiliki setiap elemen larik pahlawan. Dalam contoh diatas, tanda kurung kedua menyatakan karakter yang menyatakan nama pahlawan.

#include <iostream>int main() {// Mendeklarasikan array A dengan 5 buah elemen bertipe int

int A[5];

// Memasukkan nilai ke dalam elemen array for (int C=0; C<5; C++) { cout<<"A["<<C<<"] = "; cin>>A[C]; }

return 0;}

Karena fungsi sizeof() mengembalikan jumlah byte yang sesuai dengan argumennya, maka operator tersebut dapat digunakan untuk menemukan jumlah elemen array, misalnya

int array[ ] = {26,7,82,166};

cout<<sizeof(array)/sizeof(int);

akan mengembalikan nilai 4, yaitu sama dengan jumlah elemen yang dimiliki larik.

MENGHITUNG JUMLAH ELEMEN ARRAY

Larik dapat dikirim dan dikembalikan oleh fungsi. Pada saat larik dikirim ke dalam fungsi, nilai aktualnya dapat dimanipulasi

Contoh :

MELEWATKAN ARRAY SEBAGAI ARGUMEN FUNGSI 

Output :

#include <iostream>

int main() {

// Mendeklarasikan array A dengan 5 buah elemen bertipe int int A[5];

// Mengisikan nilai ke dalam elemen array cout<<"Masukkan nilai yang diinginkan"<<endl; for (int C=0; C<5; C++) { cout<<"A["<<C<<"] = "; cin>>A[C]; }

cout<<'\n';

// Menampilkan nilai yang terdapat dalam elemen array cout<<"Menampilkan nilai yang telah dimasukkan"<<endl; for (int J=0; J<5; J++) { cout<<"Nilai yang terdapat pada elemen ke-"; cout<<J+1<<" : "<<A[J]<<endl; }

return 0;}

#include <iostream>

int main() { // Mendeklarasikan array // dan langsung menginisialisasi nilainya int A[5] = { 10, 20, 30, 40, 50 };

// Menampilkan nilai yang terdapat pada elemen array cout<<"Sebelum dilakukan perubahan nilai"<<endl; cout<<"A[0] = "<<A[0]<<endl; cout<<"A[1] = "<<A[1]<<endl; cout<<"A[2] = "<<A[2]<<endl; cout<<"A[3] = "<<A[3]<<endl; cout<<"A[4] = "<<A[4]<<endl;

// Mengubah elemen ke-1 dan ke-2 A[0] = 12; A[1] = 25;

// Menampilkan kembali nilai yang terdapat pada elemen array cout<<"Setelah dilakukan perubahan nilai"<<endl; cout<<"A[0] = "<<A[0]<<endl; cout<<"A[1] = "<<A[1]<<endl; cout<<"A[2] = "<<A[2]<<endl; cout<<"A[3] = "<<A[3]<<endl; cout<<"A[4] = "<<A[4]<<endl; return 0;}

#include <iostream>

int main() { // Mendeklarasikan array // dengan melakukan inisialisasi nilai ke dalamnya int A[10] = { 12, 24, 13, 25, 10, 13, 21, 20, 15, 18 }; int BIL; // Variabel untuk menampung nilai yang akan dicari

// Menampilkan nilai yang terdapat // pada elemen-elemen array di atas for (int C=0, C<10; C++) { cout<<A[C]<<endl; } cout<<endl;

// Memasukkan nilai yang akan dicari cout<<"Masukkan nilai yang akan dicari : "; cin>>BIL;

// Melakukan pencarian data for (int J=0; J<10; J++) { if (A[J] == BIL) { cout<<"Nilai yang dicari terdapat pada indeks ke-"<<J; break; } }

return 0;}

#include <iostream>#include <cstring>

int main() {

// Mendeklarasikan variabel untuk menampung // kata yang akan diperiksa char* S = "KATAK";

// Mendeklarasikan variabel j dan k // untuk mendefinisikan indeks larik int j, k;

// Melakukan inisialisasi terhadap variabel j dan k j = 0; k = strlen(S);

// Melakukan pengecekan polindrom terhadap S while ((j <= k) && (S[j] = S[k-1])) { j++; k--; } if (j > k) { cout<<S<<" merupakan kata palindrom"; } else { cout<<S<<" bukan kata palindrom"; }

return 0;}

#include <iostream>

int main() {

// Mendeklarasikan sebuah array // dan melakukan inisialisasi ke dalamnya int A[10] = { 12, 34, 54, 32, 10, 67, 98, 11, 20, 22 };

/* Mendeklarasikan variabel max dan min untuk menampung nilai maksimum dan minumum */ int max = A[0], min = A[0];

// Menentukan nilai maksimum for (int C=1; C<10; C++) { if (A[C] > max) { max = A[C]; } }

// Menentukan nilai minimum for (int c=1; c<10; c++) { if (A[c] < min) { min = A[c]; } }

// Menampilkan nilai maksimum dan minimum // yang ditemukan dalam array cout<<"Nilai maksimum : "<<max<<endl; cout<<"Nilai minimum: "<<min;

return 0;}

#include <iostream>

int main() {

// Mendeklarasikan array dengan 7 buah elemen // yang bertipe int int A[7];

// Mendeklarasikan variabel-variabel bantu yang diperlukan int j, k, C, temp;

// Memasukkan nilai array cout<<"Masukkan nilai pada elemen array :"<<endl; for (C=0; C<7; C++) { cout<<"A["<<C<<" ] = "; cin>>A[C]; }

// Menampilkan nilai sebelum diurutkan cout<<"\nNilai elemen array sebelum diurutkan :"<<endl; for (C=0; C<7; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; }

// Melakukan pengurutan elemen array dengan metode gelembung for (j=0; j<6; j++) { for (k=7; k>0; k--) { if (A[k] < A[k-1]) { temp = A[k]; A[k] = A[k-1]; A[k-1] = temp;

} } }

// Menampilkan nilai setelah diurutkan cout<<"\nNilai elemen array setelah diurutkan :"<<endl; for (C=0; C<7; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; }

return 0;}

#include <iostream>

int main() {

// Mendeklarasikan array dengan 7 buah elemen yang bertipe int int A[7];

// Mendeklarasikan variabel-variabel bantu yang diperlukan int j, k, C, temp;

// Memasukkan nilai array cout<<"Masukkan nilai pada elemen array :"<<endl; for (C=0; C<7; C++) { cout<<"A["<<C<<" ] = "; cin>>A[C]; }

// Menampilkan nilai sebelum diurutkan cout<<"\nNilai elemen array sebelum diurutkan :"<<endl; for (C=0; C<7; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; }

// Melakukan pengurutan elemen array dengan metode maksimum-minimum int jmaks, U=6;

for (j=0; j<6; j++) { jmaks = 0; for (k=1; k<=U; k++) { if (A[k] > A[jmaks]) { jmaks = k; } } temp = A[U]; A[U] = A[jmaks]; A[jmaks] = temp; U--; }

// Menampilkan nilai setelah diurutkan cout<<"\nNilai elemen array setelah diurutkan :"<<endl; for (C=0; C<7; C++) { cout<<"A["<<C<<"] = "<<A[C]<<endl; }

return 0;}

#include <iostream>

int main() {

int C; // Mendeklarasikan variabel C sebagai indeks pengulangan

// Mendefinisikan tipe data bertipe struktur typedef struct SISWA { long NIM; char Nama[25]; char Kota[30]; };

// Mendeklarasikan array A dengan tipe SISWA dan jumlah elemennya tiga SISWA A[3];

// Mengisikan nilai pada elemen array for (C=0; C<3; C++) { cout<<"NIM : "; cin>>A[C].NIM; cout<<"Nama : "; cin>>A[C].Nama; cout<<"Kota : "; cin>>A[C].Kota; cout<<'\n'; }

// Menampilkan nilai yang telah dimasukkan ke dalam elemen array for (C=0; C<3; C++) { cout<<A[C].NIM<<endl; cout<<A[C].Nama<<endl; cout<<A[C].Kota<<endl; cout<<'\n'; } return 0;}

#include <iostream>

int main() {

// Mendefinisikan tipe data yang berbentuk array dua dimensi typedef int MATRIK32 [3][2];

// Mendeklarasikan array A sebagai array dua dimensi MATRIK32 A, B, C;

int j, k; // Mendeklarasikan variabel // untuk indeks pengulangan

// Mengisikan nilai ke dalam elemen-elemen array A for (j=0; j<3; j++) { for (k=0; k<2; k++) { cout<<"A["<<j<<"]["<<k<<"] = "; cin>>A[j][k]; } } cout<<endl;

// Mengisikan nilai ke dalam elemen-elemen array B for (j=0; j<3; j++) { for (k=0; k<2; k++) { cout<<"B["<<j<<"]["<<k<<"] = "; cin>>B[j][k]; } } cout<<endl;

// Melakukan penjumlahan A dan B dan menyimpan hasilnya ke dalam array C for (j=0; j<3; j++) { for (k=0; k<2; k++) { C[j][k] = A[j][k] + B[j][k]; } }

// Menampilkan hasil penjumlahan for (j=0; j<3; j++) { for (k=0; k<2; k++) { cout<<"C["<<j<<"]["<<k<<"] = "<<C[j][k]<<endl; } }

return 0;}


Recommended