MODUL 6 ARRAY SATU DIMENSI

 Peserta didik mampu mengenali larik dimensi satu, mampu mendeklarasikan dan menggunakan larik dimensi satu dalam menyelesaikan masalah dalam pemrograman



A. Pengertian Array satu dimensi

    Tipe data yang digunakan sebelumnya adalah suatu tipe data tunggal, dimana masingmasing variable akan dapat menyimpan sebuah nilai pada satu kesempatan. Namun ada kalannya kita harus menyimpan data dalam jumlah banyak dengan tipe yang sama. Misal jika ingin menyimpan data nama peserta didik dalam satu kelas dengan jumlah peserta didik maksimum 50, maka tidak efisien jika kita menyimpanya dalam 50 variabel. Untuk menyelesaikan masalah tersebut, maka dapat digunakan tipe data array dimensi satu. 

    Jadi Array adalah variabel penyimpan sekumpulan data yang memiliki tipe sama. Setiap data menempati lokasi atau alamat memori yang berbeda-beda dan selanjutnya disebut dengan elemen array. Elemen array itu kemudian dapat diakses melalui indeks yang terdapat di dalamnya. Berbeda dengan Bahasa Pascal yang memulai indeks dari 1 (satu), indeks array pada Bahasa C dimulai dari 0 (nol). 

Alamat Indeks Nilai
Alamat 0 Nilai
Alamat 1 Nilai
Alamat 2 Nilai
Alamat 3 Nilai
Alamat 4 Nilai
Alamat 5 Nilai
... ... ...
Alamat N Nilai
Sebelum digunakan, array harus dideklarasikan terlebih dahulu menggunakan tanda [ ] (bracket). Struktur penulisannya adalah sebagai berikut :
Tipe data nama_array[jumlah array] ; 
Contoh: 
int angka[10]; 
float angka2[10]; 
char nilai[5];
Pada deklarasi di atas variable angka bertipe integer dengan jumlah elemen maksimum 10, sedangkan variable angka2 bertipe float dengan jumlah elemen maksimum juga 10, sedangkan variable nilai bertipe char dengan jumlah elemen maksimum 5. Pada variable bertipe array digunakan index untuk menyatakan elemen yang dituju. Misal angka[1] menyatakan variable angka elemen pertama, sedangkan angka[10] menyatakan elemen ke-10.

Memasukkan nilai ke dalam Larik dan mencetak hasilnya 

    Untuk memasukkan nilai ke dalam elemen-elemen larik, dapat dilakukan dapat dilakukan langsung untuk setiap elemen jika diketahui alamat indeksnya. Misal jika akan memasukkan nilai 60 ke dalam array nilai pada indeks ke 7 maka perintahnya :
nilai[7] =”A”; 
    Namun cara ini tidak direkomendasikan karena tidak efisien dan bersifat statis. Karena indeks pada array bernilai urutan data secara teratur dari 0, 1, 2, 3, 4, dan seterusnya maka lebih umum dan banyak digunakan oleh para programmer untuk mengisikan nilai ke dalam elemen-elemen array dengan perulangan (looping). Cara ini akan lebih cepat dan bersifat dinamis. 
Struktur penulisan array dengan menggunakan perulangan adalah :
#include <iostream>
using namespace std;

int main() {
    int a[10];
    int i;

    // Input data
    for (i = 0; i <= 4; i++) {
        cout << "Masukkan bilangan bulat ke-" << i << ": ";
        cin >> a[i];
    }

    cout << endl;

    // Mencetak hasil
    for (i = 0; i <= 4; i++) {
        cout << "Bilangan ke-" << i << " = " << a[i] << endl;
    }

    return 0;
}
Pada program di atas dapat dilihat bagaimana cara menginputkan dan mencetak data yang telah diisikan ke dalam elemen-elemen larik.

B. Latihan 

1. Ketikkan program berikut untuk mempelajari cara kerja dan efek penggunaan index pada larik

#include <iostream>
using namespace std;

int main() {
    int a[10];  // array untuk menyimpan maksimal 10 bilangan
    int i;

    // Input data
    for (i = 0; i <= 4; i++) {
        cout << "Masukkan bilangan bulat ke-" << i << " : ";
        cin >> a[i];
    }

    cout << endl;

    // Mencetak hasil
    for (i = 0; i <= 4; i++) {
        cout << "Bilangan ke-" << i << " = " << a[i] << endl;
    }

    return 0;
}
2. Program dibawah adalah program pengimputan n buah data kemudian dihitung jumlahnya dan dicari nilai rata-ratanya
#include <iostream>
using namespace std;

int main() {
    int a[10];
    int n, i, jumlah = 0;
    float mean;

    // Input jumlah data
    cout << "Berapa data yang akan diinputkan: ";
    cin >> n;

    // Validasi jumlah data maksimal 10
    if (n > 10) {
        cout << "Maksimum data yang diperbolehkan adalah 10." << endl;
        return 1; // keluar dari program
    }

    // Input data
    for (i = 0; i < n; i++) {
        cout << "Masukkan bilangan bulat ke-" << (i + 1) << " : ";
        cin >> a[i];
        jumlah += a[i];
    }

    // Hitung rata-rata
    mean = static_cast<float>(jumlah) / n;

    cout << "\nData yang diinputkan:\n";

    // Cetak data
    for (i = 0; i < n; i++) {
        cout << "Bilangan ke-" << (i + 1) << " = " << a[i] << endl;
    }

    // Cetak rata-rata
    cout << "Rata-rata dari bilangan di atas = " << mean << endl;

    return 0;
}

C. Tugas. 

  1. Buatlah program untuk menginputkan sejumlah bilangan, kemudian lakukan pencarian terhadap suatu bilangan, jika ketemu beri tahu posisi bilangan tersebut, jika tidak ketemu juga beri komentar. Anda bisa menggunakan variable bertipe boolen untuk menyimpan hasil pencarian. 
  2. Buatlah program untuk menentukan nilai tertinggi dan terendah dari data yang telah diinputkan ke dalam suatu array

Posting Komentar

Lebih baru Lebih lama

Formulir Kontak