0136 - Numarare Cuvinte: Difference between revisions

From Bitnami MediaWiki
Pagină nouă: == Cerinţa == Să se scrie un program care citește o propoziție și determină numărul de cuvinte din propoziție care încep și se termină cu vocală. == Date de intrare == Programul citește de la tastatură o propoziție. == Date de ieșire == Programul afișează pe ecran valoarea cerută. == Restricţii şi precizări == * propoziția va conține cel mult '''150''' de caractere; * propoziția conține doar litere ale alfabetului englez și spații * se consideră v...
 
Line 9: Line 9:
* propoziția conține doar litere ale alfabetului englez și spații
* propoziția conține doar litere ale alfabetului englez și spații
* se consideră vocale caracterele din mulțimea '''{a,e,i,o,u,A,E,I,O,U}'''
* se consideră vocale caracterele din mulțimea '''{a,e,i,o,u,A,E,I,O,U}'''
== Exemplu 1 ==
== Exemplul 1 ==
; Intrare
; Intrare
  Eratostene a sugerat ca anii bisecti se repeta la fiecare patru ani
  Eratostene a sugerat ca anii bisecti se repeta la fiecare patru ani
Line 16: Line 16:
  4
  4
<br>
<br>
== Exemplu 2 ==
== Exemplu 2 ==
; Intrare
; Intrare

Revision as of 17:38, 25 December 2023

Cerinţa

Să se scrie un program care citește o propoziție și determină numărul de cuvinte din propoziție care încep și se termină cu vocală.

Date de intrare

Programul citește de la tastatură o propoziție.

Date de ieșire

Programul afișează pe ecran valoarea cerută.

Restricţii şi precizări

  • propoziția va conține cel mult 150 de caractere;
  • propoziția conține doar litere ale alfabetului englez și spații
  • se consideră vocale caracterele din mulțimea {a,e,i,o,u,A,E,I,O,U}

Exemplul 1

Intrare
Eratostene a sugerat ca anii bisecti se repeta la fiecare patru ani
Iesire
Datele de intrare corespund restrictiilor impuse
4


Exemplu 2

Intrare
Catalin1234!
Iesire
Datele de intrare nu corespund restrictiilor impuse


Rezolvare

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

   # Citirea propoziției de la tastatură
   propozitie = input().strip()
   # Verifică dacă propoziția respectă restricțiile
   if len(propozitie) > 150:
       print("Datele de intrare nu corespund restrictiilor impuse")
       return
   if any(not caracter.isalpha() and not caracter.isspace() for caracter in propozitie):
       print("Datele de intrare nu corespund restrictiilor impuse")
       return
   print("Datele de intrare corespund restrictiilor impuse")
   # Determinarea numărului de cuvinte din propoziție care încep și se termină cu vocală
   vocale = 'aeiouAEIOU'
   cuvinte = propozitie.split()
   cuvinte_vocale = [cuvant for cuvant in cuvinte if cuvant[0] in vocale and cuvant[-1] in vocale]
   # Afișarea numărului de cuvinte care încep și se termină cu vocală
   print(len(cuvinte_vocale))


if __name__ == "__main__":

   main()

</syntaxhighlight>

Explicatie

Cuvintele din propoziție care respectă proprietatea precizată sunt: Eratostene, a, anii, ani.