0889 - Cuvinte Comune
Cerința[edit | edit source]
Se dau două propoziții formate din litere mari și mici ale alfabetului englez și spații. Să se afișeze în ordine alfabetică cuvintele care apar în ambele șiruri.
Date de intrare[edit | edit source]
Programul citește de la tastatură cele două propoziții, separate printr-un caracter newline.
Date de ieșire[edit | edit source]
Programul va afișa pe ecran cuvintele comune, scrise cu litere mici, fiecare pe o linie, în ordine alfabetică.
Restricții și precizări[edit | edit source]
- șirurile date au cel mult 255 de caractere
- nu se face distincție între literele mari și cele mici
- dacă un cuvânt comun apare de mai multe ori, se va afișa o singură dată
Exemplu:[edit | edit source]
Intrare
Ana si Maria au mere si nuci
ana are MERE si Pere si prune
Ieșire
ana
mere
si
Rezolvare<syntaxhighlight lang="python">
- Citirea celor două propoziții de la tastatură
propozitie1 = input("Introduceti prima propozitie: ").lower() propozitie2 = input("Introduceti a doua propozitie: ").lower()
- Validare șiruri pentru a avea cel mult 255 de caractere
if len(propozitie1) > 255 or len(propozitie2) > 255:
print("Eroare: Una sau ambele propozitii au mai mult de 255 de caractere.") exit()
- Obținerea listelor de cuvinte pentru fiecare propoziție
cuvinte1 = propozitie1.split() cuvinte2 = propozitie2.split()
- Obținerea cuvintelor comune și eliminarea duplicatelor
cuvinte_comune = list(set(cuvinte1) & set(cuvinte2))
- Sortarea cuvintelor comune în ordine alfabetică
cuvinte_comune.sort()
- Afișarea cuvintelor comune pe linii separate
for cuvant in cuvinte_comune:
print(cuvant)
</syntaxhighlight>