Esercizio C++: Conteggio caratteri di una stringa in un'altra stringa

Esercizio C++: Conteggio caratteri di una stringa in un'altra stringa

Esercizio

Date due stringhe, contare quante volte i caratteri della seconda stringa sono contenuti nella prima. Considerare eventuali ripetizioni.

Soluzione

#include <iostream>
#include <string>

using namespace std;

unsigned int conteggio_caratteri(string source, string search_string) {
  auto found_chars_counter = 0; 
  for(char search_char: search_string) {
    cout << "search_char: "<< search_char<< endl;
    auto pos = 0; //posizione da dove iniziare la ricerca
    while (pos != string::npos) {
      cout << "search from pos "<< pos<< endl;
      pos = source.find(search_char,pos+1);
      found_chars_counter++;
      cout << "found " << search_char << " at pos " << pos << endl;
    }
  }
  return found_chars_counter;
}


int main() {
  std::cout << conteggio_caratteri("Pinco Pallo","aeiuo") << endl;
  return 0;
}
Tags :
Share :

Related Posts

descriptive text

50 Esercizi sulle matrici in C++

## Esercizi di livello base1. Dichiarare una matrice di interi di dimensioni m x n. 2. Riempire una matrice di interi di dimensioni m x n con numeri casuali. 3. Stampare una matrice di interi di dim

Leggi
descriptive text

7 Esercizi sui file in C++

## Esercizio 1: Scrivi un programma C++ che crei un file di testo vuoto chiamato "dati.txt".## Esercizio 2: Scrivi un programma C++ che apra un file di testo chiamato "dati.txt" in modalità scritt

Leggi
descriptive text

7 Esercizi intermedi C++ su funzioni, array, matrici e stringhe

Ecco un elenco di esercizi su funzioni, array, matrici e stringhe, dedicato per chi sta studiando C++ e vuole iniziare ad affrontare problemi piú complessi di quelli che si trovano spesso online (ch

Leggi
descriptive text

7 Esercizi sulle struct in C++

Ecco un elenco di esercizi sulle strutture con l'utilizzo delle `struct`, dedicato per chi sta studiando `C++` e vuole iniziare ad affrontare problemi piú complessi di quelli che si trovano spesso o

Leggi
descriptive text

Esercizi in C++ sulle struct [parte 1]

## Esercizio 1Definire una struct chiamata "Persona" che rappresenti una persona con i seguenti campi: nome, cognome, età e indirizzo. Scrivere una funzione per stampare i dettagli di una persona.

Leggi
descriptive text

Esercizio C++ | Mappe e altitudini

Ci é stato fornito una mappa delle altezze del suolo di una porzione di Marte di lato 20 metri. La risoluzione con cui è stata salvata è di 1 metro (abbiamo un valore per ogni metro quadrato di supe

Leggi
descriptive text

Esercizio C++ | Macchina quasi Turing

Creare un simulatore per una macchina quasituring. La macchina ha una memoria di una sola cella, contenente un intero. La macchina quasituring è composta da una serie di operazioni che si eseguono s

Leggi
descriptive text

Esercizio C++ | Visita di Marte

Su Marte, la sonda [Curiosity](https://mars.nasa.gov/msl/home/) ha una posizione iniziale (0,0). Data una porzione di territorio di lato 20 metri, come nel problema [mappe e altitudini](/esercizio-c

Leggi
descriptive text

Funzioni in C++

Una funzione è un blocco di codice che, quando viene chiamato, esegue una serie di istruzioni. Una funzione può essere chiamata da altre funzioni, e può essere chiamata da altri blocchi di codice. Un

Leggi
descriptive text

Corso completo di Svelte.js: Costruisci applicazioni web reattive e dinamiche

Rust è un linguaggio di programmazione moderno, sicuro e veloce. È stato creato nel 2010 da Mozilla e da allora è stato adottato da una crescente comunità di sviluppatori. Rust è adatto per una varie

Leggi
descriptive text

Esplorando l'incredibile mondo della simulazione del Physarum

Cari appassionati di simulazioni e biologia computazionale, oggi vi porterò alla scoperta di un'affascinante simulazione: il Physarum polycephalum. Questo organismo unicellulare, noto anche come "Muf

Leggi
descriptive text

Esercizi sui sistemi distribuiti

## Esercizio 1: Progettazione di un'architettura distribuitaScenario: Immaginate di dover progettare un sistema distribuito per una piattaforma di e-commerce che supporta un grande numero di utenti

Leggi