Podsumowanie — unikalne liczby
Część sekcji Logika i przepływ programu ścieżki C++ w Coddy. Lekcja 40 z 56.
Wyzwanie
ŁatwyUtwórz program, który odczytuje ciąg liczb całkowitych i używa std::set do automatycznego usuwania duplikatów, a następnie wypisuje liczbę unikalnych liczb. Pokazuje to główną zaletę zbiorów — przechowywanie kolekcji unikalnych elementów bez ręcznego sprawdzania duplikatów.
Podane zostaną następujące dane wejściowe:
- Liczba całkowita
nokreślająca, ile liczb zostanie wprowadzonych - Następnie
nliczb całkowitych do przetworzenia
Twój program powinien:
- Utworzyć pusty zbiór
std::set<int> - Odczytać liczbę całkowitych, które zostaną wprowadzone
- Użyć pętli do odczytania każdej liczby całkowitej i wstawienia jej do zbioru za pomocą metody
.insert() - Po przetworzeniu wszystkich liczb użyć metody
.size(), aby uzyskać liczbę unikalnych liczb - Wypisać wynik pokazujący, ile unikalnych liczb znaleziono
Użyj dokładnie następującego formatu wyjściowego:
Unique numbers: [count]Zbiór automatycznie usuwa duplikaty — gdy spróbujesz wstawić liczbę, która już istnieje, zignoruje ponowne wstawienie duplikatu. Oznacza to, że nie musisz ręcznie sprawdzać duplikatów; po prostu wstaw wszystkie liczby i pozwól zbiorowi zachować unikalność. Końcowy rozmiar zbioru dokładnie odpowiada liczbie różnych liczb w danych wejściowych.
Spróbuj swoich sił
#include <iostream>
#include <set>
using namespace std;
int main() {
// Wczytaj liczbę liczb całkowitych
int n;
cin >> n;
// Utwórz pusty zbiór do przechowywania unikalnych liczb całkowitych
set<int> uniqueNumbers;
// TODO: Napisz tutaj swój kod
// Użyj pętli, aby wczytać n liczb całkowitych i dodać je do zbioru
// Wyświetl wynik
cout << "Unique numbers: " << uniqueNumbers.size() << endl;
return 0;
}Wszystkie lekcje w sekcji Logika i przepływ programu
1Wskaźniki i pamięć
Czym jest wskaźnik?Operator pobrania adresuOperator dereferencjiWskaźniki zeroweWskaźniki i tabliceDynamiczne zarządzanie pamięcią za pomocą „new”Zwalnianie pamięci za pomocą „delete”Podsumowanie — ćwiczenia ze wskaźnikami2Wektory (tablice dynamiczne)
Wprowadzenie do std::vectorTworzenie wektoraDodawanie elementówDostęp do elementówRozmiar wektoraIterowanie za pomocą pętli forPętla for oparta na zakresieUsuwanie elementówPodsumowanie — operacje na wektorach5Projekt: Narzędzie do zarządzania zapasami
Konfiguracja projektuDodawanie i aktualizowanie produktów3Projekt: narzędzie do listy zadań
Przegląd projektuDodawanie zadania6Zbiory (unikalne elementy)
Wprowadzenie do std::setTworzenie zbioru i dodawanie elementówSprawdzanie obecności elementówUsuwanie elementówIterowanie po zbiorzePodsumowanie — unikalne liczbyPoćwicz samodzielnie: Kompilator C++ online