2584 - Insert Invers

From Bitnami MediaWiki

Cerinţa[edit | edit source]

Se dă un șir de caractere care conține cuvinte formate doar din litere mici și mari ale alfabetului englez, separate printr-un spațiu. Să se afișeze cuvintele din șir, fiecare fiind urmat de inversul său. Cuvintele afișate sunt separate printr-un spațiu.

Date de intrare[edit | edit source]

Programul citește de la tastatură un șir de caractere.

Date de ieşire[edit | edit source]

Programul va afișa pe ecran cuvintele conform cerinței.

Restricții și precizări[edit | edit source]

  • șirul conține maximum 255 de caractere

Exemplul 1[edit | edit source]

Intrare
ana are mere
Ieșire
Datele introduse corespund restricțiilor impuse.
ana ana are era mere erem


Exemplul 2[edit | edit source]

Intrare
99573483
Ieșire
Datele introduse nu corespund restricțiilor impuse.


Rezolvare[edit | edit source]

<syntaxhighlight lang="python" line>

  1. Definim funcția de verificare a valorilor s

def verificare(s_val):

   # Verificăm dacă s respectă restricțiile problemei
   if 1 <= len(s_val) <= 255 and all(c.isalpha() or c.isspace() for c in s_val):
       # Dacă valorile sunt valide, returnăm True
       return True
   else:
       # Dacă valorile nu sunt valide, ridicăm o excepție
       raise ValueError


  1. Definim funcția pentru afișarea cuvintelor și a inverselor lor

def afisare_cuvinte_si_inversee(s_afisare):

   cuvinte = s_afisare.split()
   rezultat = []
   for cuvant in cuvinte:
       rezultat.append(cuvant)
       rezultat.append(cuvant[::-1])
   return ' '.join(rezultat)


if __name__ == '__main__':

   try:
       # Citim șirul de caractere
       s = input("Introduceti sirul de caractere: ")
       # Verificăm dacă datele introduse sunt valide
       if verificare(s):
           # Dacă datele sunt valide, afișăm un mesaj de confirmare
           print("Datele introduse corespund restricțiilor impuse.")
       # Afișăm cuvintele și inversele lor
       print(afisare_cuvinte_si_inversee(s))
   # Tratăm cazul în care datele introduse nu sunt valide
   except ValueError:
       # Afișăm un mesaj de eroare
       print("Datele introduse nu corespund restricțiilor impuse.")


</syntaxhighlight>