Dalam tutorial ini, kita akan belajar bekerja dengan array. Kita akan belajar mendeklarasikan, menginisialisasi, dan mengakses elemen array dalam pemrograman C ++ dengan bantuan contoh.
Di C ++, array adalah variabel yang dapat menyimpan banyak nilai dengan tipe yang sama. Sebagai contoh,
Misalkan sebuah kelas memiliki 27 siswa, dan kita perlu menyimpan nilai semuanya. Alih-alih membuat 27 variabel terpisah, kita cukup membuat sebuah array:
double grade(27);
Di sini, nilai adalah larik yang dapat menampung maksimal 27 elemen double
tipe.
Di C ++, ukuran dan tipe array tidak bisa diubah setelah deklarasinya.
Deklarasi Array C ++
dataType arrayName(arraySize);
Sebagai contoh,
int x(6);
Sini,
int
- jenis elemen yang akan disimpan- x - nama array
6
- ukuran array
Akses Elemen dalam C ++ Array
Di C ++, setiap elemen dalam array dikaitkan dengan angka. Angka tersebut dikenal sebagai indeks array. Kita dapat mengakses elemen array dengan menggunakan indeks tersebut.
// syntax to access array elements array(index);
Pertimbangkan array x yang telah kita lihat di atas.

Beberapa Hal yang Perlu Diingat:
- Indeks array dimulai dengan
0
. Artinya x (0) adalah elemen pertama yang disimpan di indeks0
. - Jika ukuran sebuah array adalah
n
, elemen terakhir disimpan di index(n-1)
. Dalam contoh ini, x (5) adalah elemen terakhir. - Elemen array memiliki alamat yang berurutan. Misalnya, alamat awal
x(0)
adalah 2120d. Kemudian, alamat elemen berikutnyax(1)
adalah 2124d, alamatnyax(2)
adalah 2128d dan seterusnya.
Di sini, ukuran setiap elemen bertambah 4. Ini karena ukurannyaint
adalah 4 byte.
C ++ Inisialisasi Array
Di C ++, dimungkinkan untuk menginisialisasi array selama deklarasi. Sebagai contoh,
// declare and initialize and array int x(6) = (19, 10, 8, 17, 9, 15);

Metode lain untuk menginisialisasi array selama deklarasi:
// declare and initialize an array int x() = (19, 10, 8, 17, 9, 15);
Di sini, kami belum menyebutkan ukuran array. Dalam kasus seperti itu, kompilator secara otomatis menghitung ukurannya.
C ++ Array Dengan Anggota Kosong
Di C ++, jika sebuah array memiliki ukuran n
, kita dapat menyimpan hingga n jumlah elemen dalam array. Namun, apa yang akan terjadi jika kita menyimpan kurang dari n jumlah elemen.
Sebagai contoh,
// store only 3 elements in the array int x(6) = (19, 10, 8);
Di sini, array x memiliki ukuran 6
. Namun, kami telah menginisialisasi hanya dengan 3 elemen.
Dalam kasus seperti itu, kompilator memberikan nilai acak ke tempat yang tersisa. Seringkali, nilai acak ini sederhana 0
.

Bagaimana cara memasukkan dan mencetak elemen array?
int mark(5) = (19, 10, 8, 17, 9) // change 4th element to 9 mark(3) = 9; // take input from the user // store the value at third position cin>> mark(2); // take input from the user // insert at ith position cin>> mark(i-1); // print first element of the array cout <> mark(i-1);
Contoh 1: Menampilkan Elemen Array
#include using namespace std; int main() ( int numbers(5) = (7, 5, 6, 12, 35); cout << "The numbers are: "; // Printing array elements // using range based for loop for (const int &n : numbers) ( cout << n << " "; ) cout << "The numbers are: "; // Printing array elements // using traditional for loop for (int i = 0; i < 5; ++i) ( cout << numbers(i) << " "; ) return 0; )
Keluaran
Nomor-nomor tersebut adalah: 7 5 6 12 35 Nomor-nomor tersebut adalah: 7 5 6 12 35
Di sini, kami telah menggunakan for
loop untuk beralih dari i = 0
ke i = 4
. Di setiap iterasi, kami telah mencetak numbers(i)
.
Kami kembali menggunakan rentang berbasis loop untuk mencetak elemen dari array. Untuk mempelajari lebih lanjut tentang loop ini, periksa C ++ Ranged for Loop.
Catatan: Dalam loop berbasis jangkauan kami, kami telah menggunakan kode dan const int &n
bukan int n
sebagai deklarasi rentang. Namun, const int &n
lebih disukai karena:
- Menggunakan
int n
hanya menyalin elemen array ke variabel n selama setiap iterasi. Ini tidak hemat memori.
& n, bagaimanapun, menggunakan alamat memori dari elemen array untuk mengakses datanya tanpa menyalinnya ke variabel baru. Ini hemat memori. - Kami hanya mencetak elemen array, bukan memodifikasinya. Oleh karena itu, kami menggunakan
const
agar tidak secara tidak sengaja mengubah nilai-nilai array.
Contoh 2: Ambil Input dari Pengguna dan Simpan di Array
#include using namespace std; int main() ( int numbers(5); cout << "Enter 5 numbers: " << endl; // store input from user to array for (int i = 0; i > numbers(i); ) cout << "The numbers are: "; // print array elements for (int n = 0; n < 5; ++n) ( cout << numbers(n) << " "; ) return 0; )
Keluaran
Enter 5 numbers: 11 12 13 14 15 The numbers are: 11 12 13 14 15
Once again, we have used a for
loop to iterate from i = 0
to i = 4
. In each iteration, we took an input from the user and stored it in numbers(i)
.
Then, we used another for
loop to print all the array elements.
Example 3: Display Sum and Average of Array Elements Using for Loop
#include using namespace std; int main() ( // initialize an array without specifying size double numbers() = (7, 5, 6, 12, 35, 27); double sum = 0; double count = 0; double average; cout << "The numbers are: "; // print array elements // use of range-based for loop for (const double &n : numbers) ( cout << n << " "; // calculate the sum sum += n; // count the no. of array elements ++count; ) // print the sum cout << "Their Sum = " << sum << endl; // find the average average = sum / count; cout << "Their Average = " << average << endl; return 0; )
Output
The numbers are: 7 5 6 12 35 27 Their Sum = 92 Their Average = 15.3333
In this program:
- We have initialized a double array named numbers but without specifying its size. We also declared three double variables sum, count, and average.
Here,sum =0
andcount = 0
. - Then we used a range based
for
loop to print the array elements. In each iteration of the loop, we add the current array element to sum. - Kami juga meningkatkan nilai hitungan
1
di setiap iterasi, sehingga kami bisa mendapatkan ukuran array pada akhir perulangan for. - Setelah mencetak semua elemen, kami mencetak jumlah dan rata-rata semua angka. Rata-rata angka diberikan oleh
average = sum / count;
Catatan: Kami menggunakan for
loop jarak jauh daripada for
loop normal .
for
Perulangan normal mengharuskan kita menentukan jumlah iterasi, yang ditentukan oleh ukuran array.
Tetapi for
loop jarak jauh tidak memerlukan spesifikasi seperti itu.
C ++ Array Di Luar Batas
Jika kita mendeklarasikan sebuah array berukuran 10, maka array tersebut akan berisi elemen dari indeks 0 hingga 9.
Namun, jika kita mencoba mengakses elemen pada indeks 10 atau lebih dari 10, ini akan menghasilkan Perilaku Tidak Terdefinisi.