Menu
CoddyTech

Mengakses Elemen

Termasuk bagian Logika dan Alur dalam perjalanan C++ di Coddy. Pelajaran 12 dari 56.

Sekarang kamu sudah bisa membuat vector dan menambahkan elemen ke dalamnya, kamu perlu tahu cara mengambil elemen tertentu dari vector-mu. C++ menyediakan dua cara utama untuk mengakses elemen satu per satu: operator tanda kurung siku dan method .at().

Operator tanda kurung siku [] bekerja seperti pada array biasa. Kamu menentukan indeks elemen yang ingin kamu akses:

std::vector<int> numbers = {10, 20, 30, 40};
int first = numbers[0];    // Mengambil 10
int third = numbers[2];    // Mengambil 30

method .at() menyediakan cara alternatif untuk mengakses elemen dengan satu perbedaan penting, yaitu method ini memeriksa batas:

int first = numbers.at(0);    // Mengambil 10
int third = numbers.at(2);    // Mengambil 30

Perbedaan utamanya adalah keamanan: jika kamu mencoba mengakses indeks yang tidak ada, [] dapat menyebabkan perilaku yang tidak terduga, sedangkan .at() akan melemparkan exception untuk memberi tahu kamu tentang error tersebut. Untuk tujuan pembelajaran, kedua cara ini berfungsi dengan baik, tetapi .at() memberikan perlindungan tambahan agar kamu tidak mengakses posisi yang tidak valid dalam vector.

challenge icon

Tantangan

Mudah

Buat program yang menunjukkan cara mengakses elemen vector dengan mengambil elemen tertentu dari vector menggunakan operator kurung siku dan method .at().

Input berikut akan diberikan:

  • Integer n yang menunjukkan jumlah elemen dalam vector
  • Kemudian n integer untuk mengisi vector
  • Integer index1 yang menunjukkan indeks pertama yang akan diakses
  • Integer index2 yang menunjukkan indeks kedua yang akan diakses

Programmu harus:

  1. Membuat std::vector<int> bernama data
  2. Menggunakan push_back() untuk menambahkan setiap angka input dari n ke vector
  3. Mengakses elemen pada index1 menggunakan operator kurung siku [] dan menyimpannya dalam variabel bernama value1
  4. Mengakses elemen pada index2 menggunakan method .at() dan menyimpannya dalam variabel bernama value2
  5. Mencetak nilai yang diakses beserta indeksnya
  6. Mencetak elemen pertama dan terakhir dari vector menggunakan akses berbasis indeks

Gunakan format output berikut secara persis:

Element at index [index1]: [value1]
Element at index [index2]: [value2]
First element: [first value]
Last element: [last value]

Untuk mengakses elemen terakhir, gunakan data.size() - 1 sebagai indeks dengan operator kurung siku.

Coba sendiri

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

int main() {
    // Baca input
    int n;
    cin >> n;
    
    vector<int> data;
    
    // Baca n bilangan bulat dan tambahkan ke vector
    for (int i = 0; i < n; i++) {
        int num;
        cin >> num;
        data.push_back(num);
    }
    
    int index1, index2;
    cin >> index1;
    cin >> index2;
    
    // TODO: Tulis kodemu di bawah ini
    // Akses elemen menggunakan operator [] dan method .at()
    // Simpan nilai yang diakses dalam value1 dan value2
    
    // Tampilkan hasilnya sebagai output
    cout << "Element at index " << index1 << ": " << value1 << endl;
    cout << "Element at index " << index2 << ": " << value2 << endl;
    cout << "First element: " << /* akses elemen pertama */ << endl;
    cout << "Last element: " << /* akses elemen terakhir menggunakan data.size() - 1 */ << endl;
    
    return 0;
}
quiz iconUji dirimu

Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.

Semua pelajaran di Logika dan Alur

Latihan sendiri: Compiler C++ online