0094 - Eliminare Vocale

From Bitnami MediaWiki
Revision as of 19:29, 2 May 2023 by Hotico Iulia Denisa (talk | contribs)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerința[edit | edit source]

Se dă un şir de cel mult 20 caractere ce conţine numai litere mici ale alfabetului englez. Să se afişeze şirul obţinut prin eliminarea din șir a fiecărei vocale.

Date de intrare[edit | edit source]

Programul va citi de la tastatură şirul dat.

Date de ieșire[edit | edit source]

Dacă datele sunt introduse corect, pe ecran se va afișa: " Datele de intrare corespund restrictiilor impuse", apoi pe un rand nou va afișa şirul transformat corespunzător. În caz contrar, se va afișa mesajul:" Datele de intrare nu corespund restrictiilor impuse"

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

  • se consideră vocale literele din mulțimea {a,e,i,o,u}

Exemplu 1[edit | edit source]

Intrare
romancier
Ieșire
Datele introduse corespund restricțiilor impuse.
rmncr


Exemplu 2[edit | edit source]

Intrare
BUNA ZIUA!
Ieșire
Datele de intrare nu corespund restricțiilor impuse.


Rezolvare[edit | edit source]

<syntaxhighlight lang="python" line="1">

  1. 0094 - Eliminare Vocale

def validare(sir_caractere): # functia de validare a datelor de intrare

   if len(sir_caractere) > 20:
       raise ValueError
   # daca dsatele de intrare nu corespund, ridicam eroarea ValueError
   for caracter in sir_caractere:
       if caracter < 'a' or caracter > 'z':    # trebuie sa fie doar litera mica
           raise ValueError
   print("Datele de intrare corespund restrictiilor impuse")


def vocala(litera): # functia care verifica daca e vocala

   if litera in "aeiou":
       return True
   return False


def vocmax(sir_caracterte): # functia de verificare

   sir_fara_vocale = ""        # ne creem sirul fara vocale
   for caracter in sir_caracterte:
       if vocala(caracter) is False:       # daca nu e vocala, o adaugam in sir
           sir_fara_vocale += caracter
   print(sir_fara_vocale)      # afisam sirul


if __name__ == '__main__':

   # din cauza datelor de intrare pot aparea 2 tipuri de erori, valueError sau IndexError pe care le tratam
   try:
       cuvant = input("Introduceți șirul de caractere: ")      # citirea sirului
       validare(cuvant)            # apelul functiei de verificare
       vocmax(cuvant)              # apelul functiei de rezolvare
   except ValueError:
       print("Datele de intrare nu corespund restrictiilor impuse")
   except IndexError:
       print("Datele de intrare nu corespund restrictiilor impuse")
       

</syntaxhighlight>