188 pbinfo urgent Se dau două cuvinte a şi b şi o propoziţie s formată numai din litere mici ale alfabetului englez şi spaţii. Cerinţa Să se modifice s, înlocuind fiecare apariţie a cuvântului a cu cuvântul b. Date de intrare Fişierul de intrare inlocuirecuvant.in conţine pe prima linie cuvintele a şi b, separate printr-un spaţiu, iar pe a doua linie propoziţia s. Date de ieşire Fişierul de ieşire inlocuirecuvant.out va conţine pe prima linie propoziţia s, modificată în conformitate cu cerinţa. Restricţii şi precizări propoziţia s va avea cel mult 100 caractere cuvintele a şi b vor avea cel mult 10 caractere cuvintele sunt formate numai din litere mici ale alfabetului englez Exemplu inlocuirecuvant.in dar insa dar nu trebuie dar e mai bine astfel inlocuirecuvant.out insa nu trebuie insa e mai bine astfel
Răspunsuri la întrebare
Răspuns de
3
Răspuns:
In C++:
#include <bits/stdc++.h>
using namespace std;
ifstream fin("inlocuirecuvant.in");
ofstream fout("inlocuirecuvant.out");
int main()
{
char a[20],b[20],s[500],*p;
fin >> a >> b;
fin.getline(s,500);
fin.getline(s,500);
p = strstr(s,a);
while(p>0)
{
if( (p==s || *(p-1)==' ') && (*(p+strlen(a))<'a' || *(p+strlen(a))>'z') )
{
char t[500];
strcpy(t,p+strlen(a));
strcpy(p,b);
strcpy(p+strlen(b),t);
p = strstr(p+strlen(b) , a);
}
else p = strstr(p+strlen(a) , a);
}
fout << s << "\n";
return 0;
}
Succes! ♡♣♡
ana427257:
functia strcpy(a, b) copiaza in a pe b
Alte întrebări interesante
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Matematică,
8 ani în urmă
Geografie,
9 ani în urmă
Limba română,
9 ani în urmă