Pertemuan 4 - Dynamic Array

 

Dynamic Array di C++

Nama: Hadryan Rizky Dimas Saputra
NRP: 5025251027
Kelas: Struktur Data (D) 2026
Pertemuan: 4

Source Code: pertemuan_4

Implementasi Dynamic Array pada C++

Deskripsi (Fungsi) Program: 

Program ini mengimplementasikan konsep Dynamic Array pada C++ dengan menggunakan pointer dan alokasi memori dinamis. Program berfungsi untuk membuat array satu dimensi yang ukurannya dapat ditentukan langsung oleh pengguna saat program berjalan (runtime). Setelah memori dialokasikan menggunakan operator new, program akan meminta input data untuk mengisi setiap elemen array, menampilkan isi array tersebut ke layar, dan diakhiri dengan membebaskan/mendealokasi memori menggunakan operator delete[] untuk mencegah terjadinya memory leak (kebocoran memori).

Code:

#include <bits/stdc++.h>
using namespace std;

int main(void) {
int n;
cout << "Masukkan jumlah data: ";
cin >> n;

// membuat dynamic array
int* data = new int[n];

// input data
for(int i = 0; i < n; i++) {
cout << "Data ke-" << i+1 << ": ";
cin >> data[i];
}

cout << "\nIsi array:\n";
for(int i = 0; i < n; i++) {
cout << data[i] << " ";
}

// menghapus memori
delete[] data;

return 0;
}

Hasil/Output Program:

Penjelasan Program:

Bagian Kode

Penjelasan

#include <bits/stdc++.h>


using namespace std;

Mengimpor seluruh library standar C++ dan menggunakan namespace std agar penulisan kode objek standar (seperti cout dan cin) lebih ringkas tanpa harus menambahkan awalan std::.

int n;


cout << "Masukkan jumlah data: ";


cin >> n;

Mendeklarasikan variabel n sebagai penentu kapasitas array. Program menampilkan teks perintah dan membaca input angka dari pengguna untuk disimpan ke dalam variabel n.

int* data = new int[n];

Inisialisasi Dynamic Array: Memesan ruang di heap memory secara dinamis sebesar n elemen bertipe integer. Pointer data digunakan untuk menyimpan alamat memori indeks pertama dari array tersebut.

for(int i = 0; i < n; i++)


{ cin >> data[i]; }

Melakukan perulangan (looping) sebanyak n kali untuk meminta pengguna memasukkan nilai satu per satu, kemudian menyimpan nilainya ke dalam array data pada indeks ke-i.

for(int i = 0; i < n; i++)


{ cout << data[i] << " "; }

Melakukan perulangan untuk menelusuri array dan mencetak (menampilkan) seluruh nilai yang telah disimpan di dalam array data secara berurutan ke layar.

delete[] data;

Dealokasi Memori: Membebaskan blok memori yang ditunjuk oleh pointer data yang sebelumnya dipesan menggunakan new. Langkah ini sangat krusial dan wajib dilakukan pada akhir penggunaan dynamic array untuk mencegah memory leak.

return 0;

Mengakhiri fungsi main dan mengembalikan kode 0 kepada sistem operasi, sebagai tanda bahwa eksekusi program telah selesai dan berjalan tanpa masalah.

Komentar

Postingan populer dari blog ini

Pertemuan 12 - BTree & BST

Pertemuan 11 - Studi Kasus 1 | Sistem Folder Komputer (General Tree)