Memeriksa Elemen
Termasuk bagian Logika dan Alur dalam perjalanan C++ di Coddy. Pelajaran 37 dari 56.
Saat bekerja dengan set, kamu sering perlu memeriksa apakah elemen tertentu ada sebelum melakukan operasi terhadapnya. Method .count() menyediakan cara sederhana untuk memastikan apakah suatu elemen terdapat dalam set-mu.
Sama seperti pada map, method .count() mengembalikan 1 jika elemen ada di dalam set, dan 0 jika tidak. Ini membuatnya cocok untuk pemeriksaan kondisi:
std::set<int> numbers = {10, 20, 30};
if (numbers.count(20)) {
std::cout << "Found 20 in the set!" << std::endl;
} else {
std::cout << "20 is not in the set" << std::endl;
}Pendekatan ini jauh lebih aman daripada mencoba mengakses elemen secara langsung, terutama saat kamu tidak yakin apakah elemen tersebut ada. Kamu bisa menggunakan .count() untuk memvalidasi input pengguna, mencegah error, atau mengambil keputusan berdasarkan data yang saat ini tersimpan di set-mu.
Tantangan
MudahBuat program yang menunjukkan cara memeriksa keberadaan elemen dalam std::set dengan aman sebelum melakukan operasi terhadapnya. Tantangan ini akan menguji pemahamanmu tentang method .count() untuk memverifikasi elemen.
Input berikut akan diberikan:
- Bilangan bulat
nyang menunjukkan jumlah elemen yang akan ditambahkan ke set pada awalnya - Kemudian
nbilangan bulat yang akan dimasukkan ke dalam set - Bilangan bulat
myang menunjukkan jumlah elemen yang akan dicari - Kemudian
mbilangan bulat yang akan diperiksa keberadaannya dalam set
Programmu harus:
- Membuat
std::set<int>kosong - Membaca jumlah elemen yang akan ditambahkan dan memasukkannya ke dalam set menggunakan
.insert() - Membaca jumlah elemen yang akan dicari
- Untuk setiap elemen yang dicari, menggunakan method
.count()untuk memeriksa apakah elemen tersebut ada dalam set - Mencetak pesan yang sesuai berdasarkan apakah setiap elemen ditemukan atau tidak
- Setelah semua pencarian, mencetak jumlah total elemen yang ditemukan
Gunakan format output persis seperti berikut:
Untuk setiap hasil pencarian:
Searching for [number]: FoundUntuk elemen yang tidak ditemukan:
Searching for [number]: Not foundRingkasan di akhir:
Total found: [count] out of [total_searches]Gunakan numbers.count(searchValue) untuk memeriksa apakah suatu elemen ada dalam set. Jika hasilnya 1, elemen tersebut ada; jika hasilnya 0, elemen tersebut tidak ada. Gunakan penghitung untuk melacak jumlah elemen yang berhasil ditemukan selama operasi pencarian.
Coba sendiri
#include <iostream>
#include <set>
using namespace std;
int main() {
// Baca jumlah elemen yang akan ditambahkan ke set
int n;
cin >> n;
// Buat set kosong
set<int> numbers;
// Baca dan masukkan n elemen ke dalam set
for (int i = 0; i < n; i++) {
int element;
cin >> element;
numbers.insert(element);
}
// Baca jumlah elemen yang akan dicari
int m;
cin >> m;
int foundCount = 0;
// TODO: Tulis kodemu di bawah ini
// Untuk setiap elemen yang dicari:
// 1. Baca nilai yang dicari
// 2. Gunakan numbers.count(searchValue) untuk memeriksa apakah elemen tersebut ada
// 3. Cetak pesan yang sesuai
// 4. Perbarui foundCount jika elemen ditemukan
// Cetak ringkasannya
cout << "Total found: " << foundCount << " out of " << m << endl;
return 0;
}Pelajaran ini berisi kuis singkat. Mulai pelajarannya untuk menjawab kuis dan melacak progresmu.
Semua pelajaran di Logika dan Alur
1Pointer dan Memori
Apa Itu Pointer?Operator Address-OfOperator DereferencePointer NullPointer dan ArrayMemori Dinamis dengan 'new'Membebaskan Memori dengan 'delete'Rangkuman: Latihan Pointer2Vektor (array Dinamis)
Memperkenalkan std::vectorMembuat VektorMenambahkan ElemenMengakses ElemenUkuran VektorIterasi dengan for loopFor loop Berbasis RentangMenghapus ElemenRangkuman: Operasi Vektor3Proyek: Alat Daftar Tugas
Ikhtisar ProyekMenambahkan Tugas6set (Elemen Unik)
Mengenal std::setMembuat set & Menambahkan ElemenMemeriksa ElemenMenghapus ElemenMenelusuri setRangkuman: Angka UnikLatihan sendiri: Compiler C++ online