#include<iostream>
#include<fstream>
#include<string.h>
using namespace std;
void inserare(char s[100],int &n,char el,int i)//s este sirul,n lungimea,el este defapt '?' iar i pozitia pe care sa fie inserat
{
int j;
for(j=n;j>=i;j--)
s[j+1]=s[j];
s[i]='?';
n++;
}
int main()
{
int i,n,rez,ok=1,j,w,pi,poz;
char s[100],v[]="aeiou",s2[16];
cin.get(s,100);
cin.get();
cin.get(s2,16);
n=strlen(s)-1;
for(i=0;i<=n;i++)//parcurg sirul
{
if(s[i]==' ')//parcurg sirul pana intalnesc spatiu
{
poz=i-1;//poz primes i-1 pentru a merge pe ultima litera a cuvantului
rez=1;
for(j=pi;j<=poz;j++)//parcurg cuvantul gasit si il compar litera cu litera cu cuvantul citit de la tastatura
for(w=0;w<strlen(s2);w++)
if(s[j]!=s2[w])
{
rez=0;
j=poz+1;//opresc parcurgerea in cazul in care gasesc un element care nu corespunde
}
ok=1;//resetez ok pentru a memora prima litera de la urmatorul cuvant
if(rez==1)
{
inserare(s,n,'?',i);
i=i+2;//stiind ca exista un singur spatiu intre fiecare cuvant sar 2 pozitii si ajung pe prima litera a cuvantului urmator
}
}
else if(ok==1)//memorez prima litera a cuvantului
{
pi=i;
ok=0;
}
}
for(i=0;i<=n;i++) cout<<s[i];
return 0;
}
Niste sfaturi pentru a rezolva aceasta problema ?
Daca cuvantul citit este ana iar sirul este : ana ana ana programul nu face nimic