🚀 Nuova versione beta disponibile! Feedback o problemi? Contattaci

Esercizi Librerie Standard C++

Codegrind Team•Jul 12 2024

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;
}