Salve .... devo scrivere un programma che letta da input una stringa ed un elenco di parole elimina via via i caratteri dell elenco di parole che compaiono nella frase... esempio:
se io metto la frase:"importante ridurre il debito" e l elnco : {dame,rudi}...alla prima iterazione la frase dovrebbe diventare "iportnt riurre il debito" perche il programma prende la parola "dame" e scorre la stringa eliminando la prima ricorrenza della "d" e poi passa alla "a" ed elimina la prima ricorrenza di "a" che incontra nella frase e poi passa alla "m" e cosi via...
ora io ho pensato di dichiarami un array di stringhe che contiene l elenco di parole e poi mi dichiaro u puntatore che punta al primo carattere della prima parola dell elenco e scorrere via via la stringa eliminando le occorrenze e al tempo stesso aumentando il puntatore...ma sbaglio qualcosa e non capisco cosa...
int main()
{
char frase[100];
int k=0;
int j=0;
cout<<"inserisci una frase :"<<endl;
cin.getline(frase,100);
char *elenco[]={"dame","rudi"};//,"tinte","birre","il"};
char *p=*elenco;
for(int x=0;x<strlen(frase);x++)
{
for(int y=0;y<strlen(frase);y++)
{
if(frase[x]== *(p+k))
{
frase[x]=' ';
k++;
break;
}
}
}