Özet - Benzersiz Sayılar
Coddy'nin C++ Journey'sinin Mantık & Akış bölümünün bir parçası — ders 40 / 56.
Görev
KolayBir dizi tam sayıyı okuyan ve kopyaları otomatik olarak filtrelemek için bir std::set kullanan, ardından benzersiz sayıların sayısını yazdıran bir program oluşturun. Bu, setlerin (kümelerin) temel avantajını gösterir - manuel kopya kontrolü yapmadan benzersiz öğelerden oluşan koleksiyonları sürdürmek.
Aşağıdaki girdiler sağlanacaktır:
- Kaç adet sayının girileceğini temsil eden bir tam sayı
n - Ardından işlenecek
nadet tam sayı
Programınız şunları yapmalıdır:
- Boş bir
std::set<int>oluşturun - Girilecek tam sayıların sayısını okuyun
- Her bir tam sayıyı okumak ve
.insert()metodunu kullanarak sete eklemek için bir döngü kullanın - Tüm sayıları işledikten sonra, benzersiz sayıların sayısını almak için
.size()metodunu kullanın - Kaç tane benzersiz sayı bulunduğunu gösteren sonucu yazdırın
Aşağıdaki tam çıktı formatını kullanın:
Unique numbers: [count]Set, kopya kaldırma işlemini otomatik olarak halledecektir - zaten var olan bir sayıyı eklemeye çalıştığınızda, set kopya ekleme işlemini görmezden gelir. Bu, kopyaları manuel olarak kontrol etmenize gerek olmadığı anlamına gelir; sadece tüm sayıları ekleyin ve setin sizin için benzersizliği korumasına izin verin. Setin son boyutu, girdide tam olarak kaç tane farklı sayı olduğunu temsil eder.
Kendin dene
#include <iostream>
#include <set>
using namespace std;
int main() {
// Tam sayıların sayısını oku
int n;
cin >> n;
// Benzersiz tam sayıları saklamak için boş bir küme oluştur
set<int> uniqueNumbers;
// TODO: Kodunuzu buraya yazın
// n adet tam sayıyı okumak ve bunları kümeye eklemek için bir döngü kullanın
// Sonucu yazdır
cout << "Unique numbers: " << uniqueNumbers.size() << endl;
return 0;
}Mantık & Akış bölümündeki tüm dersler
1İşaretçiler ve Bellek
İşaretçi Nedir?Adres OperatörüDereference OperatörüNull İşaretçilerİşaretçiler ve Diziler'new' ile Dinamik Bellek'delete' ile Belleği Serbest BırakmaÖzet - İşaretçi Pratiği2Vektörler (Dinamik Diziler)
std::vector'a GirişBir Vektör OluşturmaEleman EklemeElemanlara ErişmeVektör BoyutuFor Döngüsü ile YinelemeAralık Tabanlı For DöngüsüEleman SilmeÖzet - Vektör İşlemleri3Proje: Görev Listesi Aracı
Projeye Genel BakışGörev Ekleme6Kümeler (Benzersiz Elemanlar)
std::set'e GirişKüme Oluşturma ve Eleman EklemeEleman Varlığını Kontrol EtmeEleman SilmeKüme Üzerinde YinelemeÖzet - Benzersiz Sayılar