0085 - Interclasare Asterisc
De la Universitas MediaWiki
Cerința
Să se scrie un program care citește un text și inserează după fiecare vocală caracterul "*".
Date de intrare
Programul citeşte de la tastatură un şir de caractere, reprezentând textul dat.
Date de ieșire
Programul afişează pe ecran textul obținut.
Restricții și precizări
- şirul de caractere citit va conţine cel mult 100 de caractere, litere mici ale alfabetului englez și spații;
- se consideră vocale următoarele caractere: a, e, i, o, u;
- dacă cuvântul nu conține vocale se va afișa doar mesajul "FARA VOCALE";
Exemplul 1
- Intrare
- ana are mere
- Ieșire
- a*na* a*re* me*re*
- Datele de intrare corespund restricțiilor impuse.
Exemplul 2
- Intrare
- QWRTSFG
- Ieșire
- Datele de intrare nu corespund restricțiilor impuse.
- FARA VOCALE
Rezolvare
#0085 - Interclasare Asterisc
# definim funcția care primește un text și inserează un asterisc după fiecare vocală
# cu excepția literelor majuscule
def inserare_vocale(text):
vocale = "aeiou" # definim o variabilă care conține toate vocalele
text_nou = "" # definim un șir vid pentru a stoca textul modificat
for litera in text:
text_nou += litera # adăugăm litera la textul modificat
if litera.lower() in vocale: # dacă litera este vocală, adăugăm un asterisc după ea
text_nou += "*"
return text_nou # returnăm textul modificat
if __name__ == '__main__':
text = input("Introduceți textul: ")
text_fara_spatii = text.replace(" ", "") # eliminăm spațiile din text
if not any(litera.lower() in "aeiou" for litera in text_fara_spatii): # verificăm dacă textul
# conține cel puțin o vocală
print("Datele de intrare nu corespund restricțiilor impuse.")
print("FARA VOCALE")
else:
# apelăm funcția 'inserare_vocale' pentru a modifica textul
text_inserat = inserare_vocale(text)
print(text_inserat) # afișăm textul modificat
print("Datele de intrare corespund restricțiilor impuse.")