miercuri, 19 iunie 2013

Bacalaureat 2013 - Problema 5 - Subiectul 2 (Sesiunea speciala)

Se consideră un text cu cel mult 100 de caractere (litere mici ale alfabetului englez şi spaţ ii), în care cuvintele sunt separate prin câte un spaţ iu. Înaintea primului cuvânt şi după ultimul cuvânt nu există spa ţii.
Scrieţ i un program C/C++ care citeşte de la tastatură un text de tipul men ţionat mai sus şi determină transformarea acestuia în memorie prin înlocuirea fiecărui cuvânt format din trei litere cu simbolul *. Programul afişează pe ecran textul ob ţinut.
Exemplu: pentru textul

bun este izvorul ce are apa rece

se afişează

* este izvorul ce * * rece

Algoritmul reţine adresa de început a fiecărui cuvânt şi numără numărul de litere din fiecare cuvânt până când întâlneşte un caracter spaţiu.
Aici se verifică dacă a fost întâlnit un cuvânt de 3 litere, caz în care se deplasează tot şirul spre stânga, iar pe prima poziţie din cuvânt se inserează caracterul *.
Indiferent dacă a fost găsit un cuvânt de 3 litere, după fiecare spaţiu începe un nou cuvânt ceea ce înseamnă că start este actualizat, iar cnt este resetat.

Arată Soluţia

Niciun comentariu:

Trimiteți un comentariu

Rețineți: Numai membrii acestui blog pot posta comentarii.