0609 - Dublare Vocale

From Bitnami MediaWiki

Cerinţa[edit | edit source]

Se dă un şir format din cel mult 100 de caractere – litere mici ale alfabetului englez şi spaţii. Să se modifice acest şir prin dublarea fiecărei vocale.

Date de intrare[edit | edit source]

Programul citește de la tastatură şirul dat.

Date de ieșire[edit | edit source]

Programul va afișa pe ecran şirul obţinut în urma efectuării operaţiilor cerute.

Exemplul 1[edit | edit source]

Intrare
problema aceea frumoasa
Iesire
Datele de intrare corespund restrictiilor impuse
proobleemaa aaceeeeaa fruumooaasaa


Exemplul 2[edit | edit source]

Intrare
catalin12345
Iesire
Datele de intrare nu corespund restrictiilor impuse


Rezolvare[edit | edit source]

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

   # Citirea șirului de caractere de la tastatură
   sir = input().strip()
   # Verifică dacă șirul respectă restricțiile
   if len(sir) > 100:
       print("Datele de intrare nu corespund restrictiilor impuse")
       return
   if any(not caracter.islower() and not caracter.isspace() for caracter in sir):
       print("Datele de intrare nu corespund restrictiilor impuse")
       return
   print("Datele de intrare corespund restrictiilor impuse")
   # Dublarea fiecărei vocale din șir
   vocale = 'aeiou'
   sir_dublat = .join([caracter*2 if caracter in vocale else caracter for caracter in sir])
   # Afișarea șirului obținut
   print(sir_dublat)

if __name__ == "__main__":

   main()

</syntaxhighlight>