0094 - Eliminare Vocale: Difference between revisions
Pagină nouă: == Cerința == Se dă un şir de cel mult 20 caractere ce conţine numai litere mici ale alfabetului englez. Să se afişeze şirul obţinut prin eliminarea din șir a fiecărei vocale. == Date de intrare == Programul va citi de la tastatură şirul 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 şirul transformat corespunzător. În caz contrar, se va afi... |
No edit summary |
||
(One intermediate revision by the same user not shown) | |||
Line 22: | Line 22: | ||
<br> | <br> | ||
== Rezolvare == | == Rezolvare == | ||
<syntaxhighlight lang="python" line> | <syntaxhighlight lang="python" line="1"> | ||
# 0094 - Eliminare Vocale | |||
def validare(sir_caractere): # functia de validare a datelor de intrare | |||
if len(sir_caractere) > 20: | |||
raise ValueError | |||
# daca dsatele de intrare nu corespund, ridicam eroarea ValueError | |||
for caracter in sir_caractere: | |||
if caracter < 'a' or caracter > 'z': # trebuie sa fie doar litera mica | |||
raise ValueError | |||
print("Datele de intrare corespund restrictiilor impuse") | |||
def vocala(litera): # functia care verifica daca e vocala | |||
if litera in "aeiou": | |||
return True | |||
return False | |||
def vocmax(sir_caracterte): # functia de verificare | |||
sir_fara_vocale = "" # ne creem sirul fara vocale | |||
for caracter in sir_caracterte: | |||
if vocala(caracter) is False: # daca nu e vocala, o adaugam in sir | |||
sir_fara_vocale += caracter | |||
print(sir_fara_vocale) # afisam sirul | |||
if __name__ == '__main__': | |||
# din cauza datelor de intrare pot aparea 2 tipuri de erori, valueError sau IndexError pe care le tratam | |||
try: | |||
cuvant = input("Introduceți șirul de caractere: ") # citirea sirului | |||
validare(cuvant) # apelul functiei de verificare | |||
vocmax(cuvant) # apelul functiei de rezolvare | |||
except ValueError: | |||
print("Datele de intrare nu corespund restrictiilor impuse") | |||
except IndexError: | |||
print("Datele de intrare nu corespund restrictiilor impuse") | |||
</syntaxhighlight> |
Latest revision as of 19:29, 2 May 2023
Cerința[edit | edit source]
Se dă un şir de cel mult 20 caractere ce conţine numai litere mici ale alfabetului englez. Să se afişeze şirul obţinut prin eliminarea din șir a fiecărei vocale.
Date de intrare[edit | edit source]
Programul va citi de la tastatură şirul dat.
Date de ieșire[edit | edit source]
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 şirul transformat corespunzător. În caz contrar, se va afișa mesajul:" Datele de intrare nu corespund restrictiilor impuse"
Restricții și precizări[edit | edit source]
- se consideră vocale literele din mulțimea {a,e,i,o,u}
Exemplu 1[edit | edit source]
- Intrare
- romancier
- Ieșire
- Datele introduse corespund restricțiilor impuse.
- rmncr
Exemplu 2[edit | edit source]
- Intrare
- BUNA ZIUA!
- Ieșire
- Datele de intrare nu corespund restricțiilor impuse.
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line="1">
- 0094 - Eliminare Vocale
def validare(sir_caractere): # functia de validare a datelor de intrare
if len(sir_caractere) > 20: raise ValueError # daca dsatele de intrare nu corespund, ridicam eroarea ValueError for caracter in sir_caractere: if caracter < 'a' or caracter > 'z': # trebuie sa fie doar litera mica raise ValueError
print("Datele de intrare corespund restrictiilor impuse")
def vocala(litera): # functia care verifica daca e vocala
if litera in "aeiou": return True
return False
def vocmax(sir_caracterte): # functia de verificare
sir_fara_vocale = "" # ne creem sirul fara vocale
for caracter in sir_caracterte: if vocala(caracter) is False: # daca nu e vocala, o adaugam in sir sir_fara_vocale += caracter
print(sir_fara_vocale) # afisam sirul
if __name__ == '__main__':
# din cauza datelor de intrare pot aparea 2 tipuri de erori, valueError sau IndexError pe care le tratam try: cuvant = input("Introduceți șirul de caractere: ") # citirea sirului
validare(cuvant) # apelul functiei de verificare vocmax(cuvant) # apelul functiei de rezolvare
except ValueError: print("Datele de intrare nu corespund restrictiilor impuse") except IndexError: print("Datele de intrare nu corespund restrictiilor impuse")
</syntaxhighlight>