👤

Un text are cel mult 100 de caractere, iar cuvintele sale sunt formate doar din litere mici ale alfabetului englez și sunt separate prin câte un spațiu. Scrieți un program C/C++ care citește de la tastatură un text de tipul precizat mai sus și îl transformă în memorie prin înlocuirea fiecărui cuvânt format din număr par de litere cu simbolul #. Programul afișează pe ecran textul obținut sau mesajul nu exista dacă textul citit nu conține astfel de cuvinte.

Răspuns :

#include <iostream>
#include <cstring>

using namespace std;

char s[100];

int main()
{

    cin.getline(s,100);
    int k=0,ok=0;

    for(unsigned i=0;i<strlen(s);i++)
    {
        k++;
        if(i==strlen(s)-1 or s[i+1]==' ')
        {
            if(k%2==0)
            {
                s[i-k+1]='#';
                strcpy(s+i-k+2,s+i+1);
                ok=1;
            }
            i-=k-1;
            k=-1;
        }
    }

    if(ok)
        cout << s;
    else
        cout << "nu exista";

    return 0;

}