0893 - Cuvinte0
Cerinţa[edit | edit source]
Se dă un șir de caractere format din cuvinte, separate prin spații. Cuvintele conțin doar litere mici ale alfabetului englez. Afișați, în ordine lexicografică, cuvintele distincte din șir.
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 cuvintele în ordinea cerută, câte un cuvânt pe o linie.
Restricții și precizări[edit | edit source]
- șirul dat va avea cel mult 255 de caractere și va conține cel mult 100 de cuvinte
- lungimea unui cuvânt este de cel mult 15 caractere
Exemplul 1[edit | edit source]
- Intrare
maria are doua pere si ana are doua mere
- Ieșire
Datele introduse corespund restricțiilor impuse. ana are doua maria mere pere si
Exemplul 2[edit | edit source]
- Intrare
acesttextaremaimultde15caractere
- Ieșire
Datele introduse nu corespund restricțiilor impuse.
Rezolvare[edit | edit source]
<syntaxhighlight lang="python" line>
- Definim funcția de verificare a valorilor s
def verificare(s_val):
# Verificăm dacă s respectă restricțiile problemei if 1 <= len(s_val) <= 255 and all(c.islower() or c.isspace() for c in s_val): # Dacă valorile sunt valide, returnăm True return True else: # Dacă valorile nu sunt valide, ridicăm o excepție raise ValueError
- Definim funcția pentru afișarea cuvintelor în ordine lexicografică
def afisare_cuvinte(s_afisare):
# Transformăm șirul în listă de cuvinte cuvinte = s_afisare.split() # Eliminăm dublurile și ordonăm cuvintele cuvinte = sorted(set(cuvinte)) return cuvinte
if __name__ == '__main__':
try: # Citim șirul de caractere s = input("Introduceti sirul de caractere: ")
# Verificăm dacă datele introduse sunt valide if verificare(s): # Dacă datele sunt valide, afișăm un mesaj de confirmare print("Datele introduse corespund restricțiilor impuse.")
# Afișăm cuvintele în ordine lexicografică for cuvant in afisare_cuvinte(s): print(cuvant)
# Tratăm cazul în care datele introduse nu sunt valide except ValueError: # Afișăm un mesaj de eroare print("Datele introduse nu corespund restricțiilor impuse.")
</syntaxhighlight>