Esercizi Librerie Standard C++
- Esercizio 1: Utilizzo di std::vector
- Esercizio 2: Utilizzo di std::map
- Esercizio 3: Utilizzo di std::set
- Esercizio 4: Utilizzo di std::string
- Esercizio 5: Utilizzo di std::stack
- Esercizio 6: Utilizzo di std::queue
- Esercizio 7: Utilizzo di std::array
- Esercizio 8: Utilizzo di std::algorithm
- Esercizio 9: Utilizzo di std::chrono
- Esercizio 10: Utilizzo di std::fstream
Ecco degli esercizi semplici con soluzione per praticare l’utilizzo delle librerie standard di C++.
Esercizio 1: Utilizzo di std::vector
Creare un vettore di numeri interi, aggiungere alcuni elementi e stamparli.
#include <iostream>#include <vector>
int main() { std::vector<int> numeri;
numeri.push_back(1); numeri.push_back(2); numeri.push_back(3);
for (int numero : numeri) { std::cout << numero << " "; } std::cout << std::endl;
return 0;}
Esercizio 2: Utilizzo di std::map
Creare una mappa che associa nomi a etĂ , aggiungere alcuni elementi e stamparli.
#include <iostream>#include <map>
int main() { std::map<std::string, int> eta;
eta["Alice"] = 25; eta["Bob"] = 30; eta["Charlie"] = 35;
for (const auto& pair : eta) { std::cout << pair.first << ": " << pair.second << std::endl; }
return 0;}
Esercizio 3: Utilizzo di std::set
Creare un set di numeri interi, aggiungere alcuni elementi e stamparli.
#include <iostream>#include <set>
int main() { std::set<int> numeri;
numeri.insert(3); numeri.insert(1); numeri.insert(2);
for (int numero : numeri) { std::cout << numero << " "; } std::cout << std::endl;
return 0;}
Esercizio 4: Utilizzo di std::string
Leggere una stringa dall'utente e stamparla.
#include <iostream>#include <string>
int main() { std::string parola; std::cout << "Inserisci una parola: "; std::cin >> parola; std::cout << "Hai inserito: " << parola << std::endl;
return 0;}
Esercizio 5: Utilizzo di std::stack
Creare una pila di numeri interi, aggiungere alcuni elementi e stamparli.
#include <iostream>#include <stack>
int main() { std::stack<int> pila;
pila.push(1); pila.push(2); pila.push(3);
while (!pila.empty()) { std::cout << pila.top() << " "; pila.pop(); } std::cout << std::endl;
return 0;}
Esercizio 6: Utilizzo di std::queue
Creare una coda di numeri interi, aggiungere alcuni elementi e stamparli.
#include <iostream>#include <queue>
int main() { std::queue<int> coda;
coda.push(1); coda.push(2); coda.push(3);
while (!coda.empty()) { std::cout << coda.front() << " "; coda.pop(); } std::cout << std::endl;
return 0;}
Esercizio 7: Utilizzo di std::array
Creare un array di numeri interi, aggiungere alcuni elementi e stamparli.
#include <iostream>#include <array>
int main() { std::array<int, 3> numeri = {1, 2, 3};
for (int numero : numeri) { std::cout << numero << " "; } std::cout << std::endl;
return 0;}
Esercizio 8: Utilizzo di std::algorithm
Ordinare un vettore di numeri interi usando std::sort e stamparli.
#include <iostream>#include <vector>#include <algorithm>
int main() { std::vector<int> numeri = {3, 1, 2};
std::sort(numeri.begin(), numeri.end());
for (int numero : numeri) { std::cout << numero << " "; } std::cout << std::endl;
return 0;}
Esercizio 9: Utilizzo di std::chrono
Misurare il tempo di esecuzione di un blocco di codice usando std::chrono.
#include <iostream>#include <chrono>#include <thread>
int main() { auto start = std::chrono::high_resolution_clock::now();
std::this_thread::sleep_for(std::chrono::seconds(1));
auto end = std::chrono::high_resolution_clock::now(); std::chrono::duration<double> durata = end - start;
std::cout << "Durata: " << durata.count() << " secondi" << std::endl;
return 0;}
Esercizio 10: Utilizzo di std::fstream
Scrivere e leggere dati da un file usando std::fstream.
#include <iostream>#include <fstream>#include <string>
int main() { std::ofstream fileOut("esempio.txt"); if (fileOut.is_open()) { fileOut << "Ciao, mondo!" << std::endl; fileOut.close(); }
std::ifstream fileIn("esempio.txt"); if (fileIn.is_open()) { std::string linea; while (std::getline(fileIn, linea)) { std::cout << linea << std::endl; } fileIn.close(); }
return 0;}