Sunteți pe pagina 1din 2

TEST - Programarea calculatoarelor

Fie dat un fisier de intrare de tip text in.txt format din una sau mai multe linii de cuvinte. Cuvintele sunt
separate prin spatii.
1. Sa se afiseze pe ecran cuvintele de pe fiecare linie, care reprezinta un palindrom. Fiecare cuvant se afiseaza
pe linia sa initiala a fisierului de intrare (1p).
2. Sa se afiseze pe ecran liniile fisierului modificate prin rotirea cuvintele de pe fiecare linie de k ori.( k
reprezinta numarul de cuvinte palindrom gasite pe fiecare linie). Rotirea cuvintelor se va realiza in mod
alternativ: prima linie se va roti la stanga, a doua se va roti la dreapta, a treia la stanga, etc (2p).
3. Se considera un fisier de tip text, puncte.txt, care contine pe fiecare linie coordonatele unui punct in spatiu
xOy. Sa se afiseze perechile de punctele care se afla la o distanta mai mare decat o valoarea d, citita de la
tastatura (1p).
4. Sa se gaseasca tripletele de puncte, din fisierul puncte.txt, care formeaza tringhuri astfel: fiecare dintre cele
trei puncte se afla intr-un cadran diferit al spatiului xOy. Sa se afiseze tripletele gasite ordonate descrecator
in functie de aria tringhiului determinat de cele trei puncte. (1.5p)
5. Sa se realizeze o functie cu prototipul char* codifica ( char *sir, unsigned int k ) de codificare a unui sir
pe baza unei chei k. Sirul se va codifica astfel: se determina secventele de litere identice din sir de lungime
mai mare sau egala cu k; secventa astfel determinata va fi inlocuita cu numarul de aparitii si litera care se
repeta.
Sa se foloseasca functia pentru a codifica un fisier de intrare text in.txt in fisierul codificat.txt. Fiecare sir
de caractere din acest fisier se va codifica cu o cheie diferita obtiuta din fisierul puncte.txt astfel: o cheie va
reprezenat partea intreaga a distantei dintre doua puncte consecutive din fisier.
Ordinea cuvintelor din fisierul initial nu se modifica in fisierul codificat.
(2.5p)
1p din oficiu
1p modul de scriere al codului: ordonat, structurat pe functii, fara var globale, alocari dinamice de memorie
pentru optimizarea consumului de memorie.

Exemplu: Daca fisierul de intrare in.txt este:


Acestaaaa estse fiiiiiisierrrrul text
ede intrare cec va fi procesat acum
dddde prrrogrammmul de teset
1) estse
ede cec
teset
2) estse fiiiiiisierrrrul text Acestaaaa
procesat acum ede intrare cec va fi
programul de teset dddde
3) Daca puncte.txt contine:
1 1
-2 -1
2 -1
2 2
Si d = 3 atunci se va afisa :
( 1,1 ) ( -2, -1)
( -2, -1) ( 2, -1)
( -2, -1) ( 2, 2)
( 2, -1) ( 2, -1)
4) ( 2, 2) ( -2 ,
( 1, 1) ( -2 ,

-1) (2 ,
-1) (2 ,

-1)
-1)

5) Fisierul codificat este :


Acest4a estse f6isie4rul text
ede intrare cec va fi procesat acum
4d p3rogra3mul de teset