Potete aiutarmi?
Inserire nella stringa st1 dopo ogni occorrenza della stringa st2 la stringa st3, e restituire il valore di inserimenti effettuati
ESEMPIO:
st1:non ricordo il nome di quel ragazzo
st2:no
st3: pippo
Risultato
nopippon ricordo il nopippome di quel ragazzo
valore restituito:2
ci ho provato per giorni ma non ci sono riuscito
Scusate per eventuali errori gravi dopo milioni di tentativi ho provato con cose insensate
codice:
#include <cstdlib>
#include <iostream>
#include <cstring>
#include <string>
using namespace std;
int concatena(char st1[],char st2[],char st3[],int N,int S,int P)
{
if(N==0)
return 0;
else if(S==0)
return 0;
else if(st1[N]==st2[S])
return 1+concatena(strcat(st1,st3),st2,strlen(st1),strlen(st2),strlen(st3));
else
return concatena(st1,st2,st3,strlen(st1),strlen(st2),strlen(st3));
}
int main(int argc, char *argv[])
{
char st1[100];
char st2[100];
char st3[100];
cin.getline(st1,100);
cin.getline(st2,100);
cin.getline(st3,100);
cout<<concatena(st1,st2,st3,strlen(st1),strlen(st2),strlen(st3));
cout<<st1;
system("PAUSE");
cout << "Press the enter key to continue ...";
cin.get();
return EXIT_SUCCESS;
}