Răspuns :
Răspuns:
include <iostream>
#include <cstring>
using namespace std;
int main()
{
char vocale[]="aeiou", sir[103];
int gasit = 0;
cin.get(sir,102);
strrev(sir);
for(int i = 0; i < strlen(sir)-1; i++ )
{
if ( strchr(vocale,sir[i]) )
{
strcpy(sir+i,sir+i+1);
gasit = 1;
break;
}
}
strrev(sir);
if ( gasit == 0 )
cout << "Sirul nu contine vocale.";
else
cout << sir;
}
Explicație:
Pentru a face un numar de pasi mai putini prin parcurgeri am ales sa inversez sirul prin functia strrev( sir ) care practic transforma sirul in oglinditul sau.
Exemplu:
Sirul este: ana are mere
Dupa apelul functiei strrev(sir) sirul de caractere va fi erem era ana.
Astfel ca putem verifica prima vocala care apare in sir, ceea ce am si facut in cod, dupa care, odata ce s-a gasit o vocala, atribuim peste acea pozitie restul sirului ramas cu exceptia acelei vocale.
Pe baza exemplului anterior inseamna ca primul e din erem era ana va fi sters ramanand rem era ana. Urmatorul pas este sa inversam din nou sirul deoarece noi am facut un mic artificiu inversandu-l prima data iar cerinta ne cere sa afisam sirul initial fara acea vocala.
Apelam strrev(sir), sirul va fi: ana are mer
Afisam sirul.