Programarea calculatoarelor 2 - Laborator 13
Scrieți un program care verifică ortografia unui text, afișând cuvintele
care nu se regăsesc în dicționar.
Textul se află într-un fișier cu numele dat pe linia de comandă.
Un cuvânt e un șir de caractere alfanumerice. Orice alte
caractere sunt separatori și se ignoră. Nu se fac limitări asupra textului,
dar se știe că orice cuvânt din dicționar are cel mult 31 de caractere.
Dicționarul se află în fișierul /usr/share/dict/words, câte un
cuvânt pe fiecare linie, ordonate alfabetic cu ignorarea diferențelor
dintre litere mici și mari (se vor considera egale și la comparație).
Indicații
Implementați mai întâi separarea în cuvinte a textului de verificat.
Citiți dicționarul și memorați-l într-o structură simplu și rapid de
implementat, dar și potrivită pentru căutare rezonabil de eficientă
(de exemplu tabelă de dispersie sau tablou ordonat, cu căutare binară).
Veți studia ulterior că pentru dicționar se poate folosi și o structură
numită trie, un arbore cu litere în noduri, în care fiecare
cale de la rădăcină corespunde unui cuvânt, și două cuvinte au aceeași
cale pe porțiunea de prefix comun (un nod-literă are până la 26 de succesori,
unul pentru fiecare continuare posibilă).
Marius Minea
Last modified: Wed Jan 12 09:58:49 EET 2005