Panduan Lengkap: Contoh Soal Array Satu Dimensi dalam Bahasa C++, Java, dan Python

Halo, Sobat Coder! Kembali lagi di sesi belajar pemrograman yang santai tapi berisi. Setelah sebelumnya kita membahas konsep dasar array, kali ini kita akan langsung “tancap gas” dengan praktik nyata. Sebagai calon developer, kamu pasti tahu bahwa setiap bahasa pemrograman memiliki gaya (sintaks) yang berbeda-beda dalam menangani array, meskipun logikanya tetap sama.

Apakah kamu tim C++ yang senang dengan performa cepat? Tim Java yang menyukai struktur rapi? Atau tim Python yang cinta kesederhanaan? Jangan khawatir, karena dalam artikel ini kita akan membedah contoh soal array satu dimensi menggunakan ketiga bahasa populer tersebut. Dengan membandingkan ketiganya, kamu akan memahami bahwa logika algoritma itu universal, hanya “cara bicaranya” saja yang berbeda.

Baca juga:Contoh Soal Sejarah Peradaban Amerika Kuno Beserta Pembahasan Mudah Dipahami

Apa Itu Array Satu Dimensi dalam Berbagai Bahasa?

Secara konseptual, array satu dimensi adalah kumpulan elemen dengan tipe data yang sama yang disusun secara linear.

  • Dalam C++: Array bersifat statis (ukurannya ditentukan di awal) dan sangat dekat dengan manajemen memori.
  • Dalam Java: Array dianggap sebagai objek. Kamu perlu menggunakan kata kunci new untuk mengalokasikan ruangnya.
  • Dalam Python: Python sebenarnya tidak memiliki “array” murni secara bawaan; ia menggunakan List. Namun, List di Python jauh lebih fleksibel karena bisa menampung berbagai tipe data sekaligus dan ukurannya dinamis.

Contoh Soal 1: Inisialisasi dan Menampilkan Data

Soal: Buatlah sebuah array yang menyimpan 5 nama buah, lalu tampilkan semua isi buah tersebut ke layar.

Versi C++

C++

#include <iostream>
#include <string>
using namespace std;

int main() {
    string buah[5] = {"Apel", "Jeruk", "Mangga", "Pisang", "Anggur"};
    for(int i = 0; i < 5; i++) {
        cout << "Buah ke-" << i << ": " << buah[i] << endl;
    }
    return 0;
}

Versi Java

Java

public class Main {
    public static void main(String[] args) {
        String[] buah = {"Apel", "Jeruk", "Mangga", "Pisang", "Anggur"};
        for (int i = 0; i < buah.length; i++) {
            System.out.println("Buah ke-" + i + ": " + buah[i]);
        }
    }
}

Versi Python

Python

buah = ["Apel", "Jeruk", "Mangga", "Pisang", "Anggur"]
for i, b in enumerate(buah):
    print(f"Buah ke-{i}: {b}")

Penjelasan: Di sini terlihat Python paling ringkas dengan fungsi enumerate(), sedangkan Java memiliki properti .length yang memudahkan kita mengetahui ukuran array tanpa perlu menulis angka manual.


Contoh Soal 2: Menghitung Total dan Rata-rata Nilai

Soal: Terdapat data nilai ujian [85, 90, 78, 92, 88]. Hitunglah total nilai dan rata-ratanya.

Versi C++

C++

int nilai[] = {85, 90, 78, 92, 88};
int n = sizeof(nilai)/sizeof(nilai[0]);
float total = 0;

for(int i = 0; i < n; i++) {
    total += nilai[i];
}
cout << "Rata-rata: " << total / n;

Versi Java

Java

int[] nilai = {85, 90, 78, 92, 88};
double total = 0;
for(int n : nilai) {
    total += n;
}
System.out.println("Rata-rata: " + (total / nilai.length));

Versi Python

Python

nilai = [85, 90, 78, 92, 88]
total = sum(nilai)
rata_rata = total / len(nilai)
print(f"Rata-rata: {rata_rata}")

Penjelasan: Python menang telak dalam kemudahan berkat fungsi bawaan sum(). Di C++, kita harus hati-hati dalam menghitung jumlah elemen menggunakan sizeof.


Contoh Soal 3: Mencari Nilai Tertinggi (Searching Max)

Soal: Cari angka terbesar dari array [12, 56, 34, 98, 21, 77].

Versi C++ (Logika Manual)

C++

int angka[] = {12, 56, 34, 98, 21, 77};
int max = angka[0];
for(int i = 1; i < 6; i++) {
    if(angka[i] > max) max = angka[i];
}
cout << "Nilai tertinggi: " << max;

Versi Python (Logika Built-in)

Python

angka = [12, 56, 34, 98, 21, 77]
print("Nilai tertinggi:", max(angka))

Contoh Soal 4: Membalikkan Urutan (Reverse Array)

Soal: Balik urutan array [1, 2, 3, 4, 5] menjadi [5, 4, 3, 2, 1].

Versi Python (Slicing Trick)

Python

angka = [1, 2, 3, 4, 5]
angka_terbalik = angka[::-1]
print(angka_terbalik)

Versi Java (Manual Swap)

Java

int[] angka = {1, 2, 3, 4, 5};
for(int i = 0; i < angka.length / 2; i++) {
    int temp = angka[i];
    angka[i] = angka[angka.length - 1 - i];
    angka[angka.length - 1 - i] = temp;
}

Penjelasan: Slicing [::-1] di Python adalah cara “curang” tapi sangat efisien. Namun, logika swap di Java adalah dasar algoritma yang wajib kamu pahami untuk mengasah logika pemrosesan data.


Tips Memilih Bahasa untuk Belajar Array

  1. Jika ingin paham “jeroan” komputer: Pilihlah C++. Kamu akan belajar bagaimana data disimpan di memori dan pentingnya menentukan ukuran array.
  2. Jika ingin bekerja di perusahaan besar: Pilihlah Java. Keamanan tipe data (Strongly Typed) membuatmu terbiasa menulis kode yang minim error.
  3. Jika ingin hasil instan dan riset data: Pilihlah Python. Kamu bisa fokus pada pengolahan datanya daripada pusing memikirkan sintaks yang rumit.

Baca juga:Mahasiswa FEB Universitas Teknokrat Indonesia Raih Juara III Lomba Business Plan Festival Earth Dream 2025

Penutup: Logika Adalah Raja

Sobat Coder, melalui panduan lengkap ini, kita bisa melihat bahwa meskipun sintaksnya berbeda, alur berpikir untuk menyelesaikan masalah array tetaplah sama: inisialisasi, akses index, perulangan, dan manipulasi.

Array satu dimensi adalah pondasi dari segala bentuk pengolahan data. Setelah kamu menguasai ini, materi seperti Array Dua Dimensi atau Object Oriented Programming akan terasa jauh lebih mudah. Kuncinya hanya satu: jangan hanya dibaca, tapi ketik ulang kodenya dan jalankan di komputermu!

penulis:bagas

Post Comment