0609 - Dublare Vocale: Difference between revisions

From Bitnami MediaWiki
 
Line 13: Line 13:
<br>
<br>


== Exemplu 2 ==
== Exemplul 2 ==
; Intrare
; Intrare
  catalin12345
  catalin12345
Line 19: Line 19:
  Datele de intrare nu corespund restrictiilor impuse
  Datele de intrare nu corespund restrictiilor impuse
<br>
<br>
== Rezolvare ==
== Rezolvare ==
<syntaxhighlight lang="python" line>
<syntaxhighlight lang="python" line>

Latest revision as of 17:11, 25 December 2023

Cerinţa

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

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

Date de ieșire

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

Exemplul 1

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


Exemplul 2

Intrare
catalin12345
Iesire
Datele de intrare nu corespund restrictiilor impuse


Rezolvare

<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>