0095 - Perechi Vocale

From Bitnami MediaWiki
Revision as of 14:19, 27 March 2023 by Hotico Iulia Denisa (talk | contribs) (Pagină nouă: == Cerința == Se dă un șir de caractere reprezentând o propoziție formată din litere mici ale alfabetului englez și spații. Determinați numărul de perechi de vocale consecutive din propoziție. == Date de intrare == Programul citește de la tastatură propoziția dată. == Date de ieșire == 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 numărul de perechi de vocale conse...)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)

Cerința

Se dă un șir de caractere reprezentând o propoziție formată din litere mici ale alfabetului englez și spații. Determinați numărul de perechi de vocale consecutive din propoziție.

Date de intrare

Programul citește de la tastatură propoziția dată.

Date de ieșire

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 numărul de perechi de vocale consecutive. În caz contrar, se va afișa mesajul:" Datele de intrare nu corespund restrictiilor impuse".

Restricții și precizări

-șirul de caractere citit conține cel mult 255 de caractere
-se consideră vocale caracterele din mulțimea {a,e,i,o,u}

Exemplu 1

Intrare
aceasta familie are doua case
Ieșire
Datele introduse corespund restricțiilor impuse.
4


Exemplu 2

Intrare
123
Ieșire
Datele de intrare nu corespund restricțiilor impuse.


Rezolvare

<syntaxhighlight lang="python" line>

  1. 0095 PerechiVocale

def validare(propozitie):

   if len(propozitie) > 255:
       raise ValueError
   for litera in propozitie:
       if litera < 'a' or litera > 'z':
           if litera != ' ':
               raise ValueError
   print("Datele de intrare corespund restrictiilor impuse")
   return True


def vocala(litera):

   lista_vocale = "aeiouAEIOU"
   if litera in lista_vocale:
       return True
   else:
       return False


def perechivocale(propozitie):

   nr_perechi = 0
   for i in range(len(propozitie)-1):
       if vocala(propozitie[i]) is True and vocala(propozitie[i+1]) is True:
           nr_perechi += 1
   print(nr_perechi)


if __name__ == '__main__':


   try:
       cuv = input(f"Introduceti textul ")
       validare(cuv)
       perechivocale(cuv)
   except ValueError:
       print("Datele de intrare nu corespund restrictiilor impuse")
   except IndexError:
       print("Datele de intrare nu corespund restrictiilor impuse")

</syntaxhighlight>