1873 - Cuvinte pare

From Bitnami MediaWiki
Revision as of 13:18, 3 January 2024 by Codrut Borcutean (talk | contribs) (Pagină nouă: == Cerinţa == 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 cit...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerinţa[edit | edit source]

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.

Date de intrare[edit | edit source]

Programul citește de la tastatură un text.

Date de ieșire[edit | edit source]

Programul va afișa textul modificat.

Restricţii şi precizări[edit | edit source]

  • textul are cel mult 100 de caractere
  • cuvintele sunt formate doar din litere mici ale alfabetului englez

Exemplu 1[edit | edit source]

Intrare
anii de liceu sunt foarte frumosi
Iesire
Datele de intrare corespund restrictiilor impuse
# # liceu # # frumosi


Exemplu 2[edit | edit source]

Intrare
ANII DE LICEU SUNT FOARTE FRUMOSI
Iesire
Datele de intrare nu corespund restrictiilor impuse


Rezolvare[edit | edit source]

<syntaxhighlight lang="python" line> def transforma_text(text):

   # Înlocuiește fiecare cuvânt format din număr par de litere cu simbolul #
   cuvinte = text.split()
   for i in range(len(cuvinte)):
       if len(cuvinte[i]) % 2 == 0:
           cuvinte[i] = '#'
   return ' '.join(cuvinte)


def main():

   text = input().strip()
   # Verifică dacă textul respectă restricțiile
   if len(text) > 100 or not text.islower():
       print("Datele de intrare nu corespund restrictiilor impuse")
       return
   print("Datele de intrare corespund restrictiilor impuse")
   # Transformă textul și afișează rezultatul
   text_transformat = transforma_text(text)
   if '#' in text_transformat:
       print(text_transformat)
   else:
       print("nu exista")


if __name__ == "__main__":

   main()


</syntaxhighlight>