Sunteți pe pagina 1din 11

Tablouri unidimensionale ---probleme pe tipuri

Fișa nr. 1. Parcurgerea cu prelucrarea elementelor :


1. Se citesc elementele unui tablou unidimensional cu n (n<=100) componente, numere întregi din
cel mult 4 cifre fiecare. Să se calculeze media aritmetica a componentelor tabloului.

2. Se citesc elementele unui tablou unidimensional cu n (n<=100) componente, numere întregi din
cel mult 4 cifre fiecare. Să se determine Valoarea minimă şi valoarea maximă.

3. Se citesc elementele unui tablou unidimensional cu n (n<=100) componente, numere întregi din
cel mult 4 cifre fiecare. Să se afişeze valoarea componentei cu număr maxim de divizori. In cazul în
care sunt mai multe astfel de componente se v-a afişa cea cu valoarea cea mai mică. Exemplu.
pentru a=(10, 49, 35, 25, 6, 3) se afişează 6.

4. Se citesc elementele unui tablou unidimensional cu n (n<=100) componente, numere întregi din
cel mult 4 cifre fiecare. Să se determine valoarea maximă şi de câte ori apare aceasta în tablou.

5. Se citesc elementele unui tablou unidimensional cu n (n<=1OO) componente, numere întregi din
cel mult 4 cifre fiecare. Să se verifice dacă tabloul este ordonat (crescător sau descrescător).

6. Se citesc elementele unui tablou unidimensional cu n (n<=100) componente, numere întregi din
cel mult 4 cifre fiecare. Să se realizeze următoarele prelucrări:
a. Să se afişeze şi să se numere elementele pare de pe poziţiile impare ale unui vector.
b. Să se numere elementele pozitive şi pare.
c. Calculati produsul elementelor negative.
d. Să se calculeze media aritmetica a elementelor pozitive.

7. Se citesc elementele unui tablou unidimensional cu n (n<=100) componente, numere întregi din
cel mult 4 cifre fiecare. Să se determine dacă oricare doua elemente alaturate din tablou au parităţi
diferite. Se va afişa Da sau Nu. Exemplu. pentru n:5 şi V=(3, 6, 1, 18, 13) se afişează Da

8. Se citesc elementele unui tablou v unidimensional cu n (n<=100) componente numere întregi din
cel mult 4 cifre fiecare. Să se determine dacă oricare două elemente alăturate din tablou au semne
diferite. Se va afişa Da sau Nu. Exemplu. pentru n=5 şi V:(3, -6, 1, -8, 13) se afişează Da

9. Se citesc elementele unui tablou v unidimensional cu n (n<=100) componente, numere întregi


din cel mult 4 cifre fiecare. Sa se realizeze următoarele prelucrări: a. Să se afişeze valorile prime. b.
Să se afişeze numerele prime a căror invers este tot un număr prim.

10.Se citesc elementele a doua tablouri unidimensionale a si b cu m respectiv n (m,n<=100)


componente, numere întregi din cel mult 4 cifre fiecare. Sa se determine câte din elementele
tabloului a sunt strict mai mici decât toate elementele din b.

11. Se citesc elementele unui tablou v unidimensional cu n (n<=1OO) componente numere întregi
din cel mult 4 cifre fiecare. Să se determine elementul cu numărul de ordine k din tabloul ordonat
Crescător, fără a se ordona tabloul. Exemplu. pentru n=8, k=4 şi v=(3, -6, 1, O, 2, 6, -8, 13) se
afişează 0.

12. Se citesc elementele unui tablou v unidimensional cu (n<=1OO) componente numere întregi din
cel mult 4 cifre fiecare. Sa se determine pe ce poziţie se va situa primul element din tablou după
ordonare crescatoare, fără a se ordona tabloul. Exemplu. pentru n=8, şi v:(3, -6, 1, O, 2, 6, -8, 13) se
afişează 6.

13. Se citesc elementele unui tablou v unidimensional cu n (n<=1OO) componente, numere întregi
din cel mult 4 cifre fiecare. Să se numere câte elemente sunt egale media aritmetica vecinilor săi.

14. Să se verifice dacă elementele unui şir de n (n<=1OO) numere întregi pot forma: a. o progresie
aritmetica b. o progresie geometrică. Dacă şirul este progresie să se afişeze raţia.

15.Să se determine dacă un tablou unidimensional de numere întregi are toate elemente egale. Se
va afişa Da sau Nu.

16. Se citesc elementele unui tablou unidimensional cu cel mult n componente intregi (n<=100)
ordonate Crescător. Să se afişeze fiecare valoare şi frecvenţa ei în tablou.

17. Scrieţi un program care citeşte de la tastatură un număr natural n din intervalul [2,10O0O] şi
apoi n numere reale şi afişează pe ecran câte dintre cele n numere reale sunt egale cu media
aritmetică a celorlalte n-l numere reale.

18. Scrieţi un program care citeşte de la tastatură un număr natural n din intervalul [2,100OO] şi
apoi n numere întregi şi afişează pe ecran “DA” daca toate numerele impare sunt ordonate
Crescător şi cele pare sunt ordonate descrescător, altfel se afişează “NU”. Exemplu. pentru n=10, şi
v=(1,l0, 5, 8, 7, 9, 9, 6, 6, 2) se afişează DA.

19. Fie un tablou cu n numere reale pozitive (1<=n<=1OO) ordonate Crescător. Scrieţi un program
care determină numărul minim de intervale închise de forma [x;x+1], cu x număr natural, a căror
reuniune include toate numerele reale din tablou. Exemplu: Dacă tabloul are conţinutul: 2.3, 2.8,
5.1, 5.7, 5.9, 6.3 atunci se afişează 3 (intervalele [2;3], [5;6], [6;7] sunt cele 3 intervale de forma
cerută care conţin numere din tablou).

20. Scrieţi un program care citeşte de la tastatură două numere întregi a, b cu cel mult patru cifre
fiecare, un număr natural n din intervalul [2,1OO00] şi apoi n numere întregi cu cel mult 4 cifre şi
afişează pe ecran acele numere care au o valoare inclusa în intervalul [a,b].

21. Se citesc de la tastatură un număr natural nenul n (n<=100) şi apoi cele n numere întregi
nenule, de maximum 4 cifre, reprezentând elementele unui tablou unidimensional v. Scrieţi un
program care afişează câte dintre elementele tabloului pot fi scrise ca sumă a celor două elemente
alaturate. În cazul în care nu existã nici un astfel de element se va afişa valoarea O. Exemplu: Dacă
tabloul are conţinutul: 2 7 5 1 4 2 -2 5 se afişează 2.

22. Se citesc elementele unui tablou unidimensional cu n (n<=100) numere reale cu cel mult şase
zecimale fiecare, un număr natural x (x<6). Să se determine câte dintre numerele citite au mai mult
de x zecimale.

23. Se citesc elementele unui tablou unidimensional cu n (n<=100) numere întregi cu cel mult patru
cifre. Să se afişeze perechile de elemente alaturate a căror sumă are cea mai mare valoare.

24. Să se dubleze valorile egale cu Valoarea minimă dintr-un tablou unidimensional cu n (n<=100)
numere întregi cu cel mult patru cifre citit de la tastatură.
25. Se citesc elementele unui tablou unidimensional a cu n (n<=100) numere întregi cu cel mult
patru cifre. Să se genereze tabloul b pentru care fiecare componentă memorează prima cifră a
elementului de pe aceeaşi poziţie din tabloul a. Exemplu. Dacă a=(345, 61, 8, 900) se generează
b=(3, 6, 8, 9).

26. Se citesc elementele unui tablou unidimensional a cu n(n<=100) numere întregi cu cel mult
patru cifre. Să se genereze tabloul b pentru care fiecare componentă memorează cea mai mare
cifră a elementului de pe aceeaşi poziţie din tabloul a. Exemplu. Dacă a=(3485, 61, 182, 900) se
generează b=(8, 6, 8, 9).

27. Se citesc elementele unui tablou unidimensional a cu n (n<=100) numere întregi cu cel mult
patru cifre. Să se genereze tabloul b pentru care fiecare componentă memorează numărul de
divizori ai elementului de pe aceeaşi poziţie din tabloul a. Exemplu. Dacă a=(1O, 49, 13, 12) se
generează b=(4, 3, 2, 6).

28. Se citesc elementele unui tablou unidimensional a cu n (n<=100) numere întregi cu cel mult
patru cifre. Să se genereze tabloul b pentru care fiecare componentă memorează numãrul de cifre
al elementului de pe aceeaşi poziţie din tabloul a. Exemplu. Dacă a=(345, 61, 8, 900) se genermnî
b=(3, 2, 1, 3).

Fișa nr. 2. Căutarea secvenţială


1. Fie mulţimea A cu n elemente (n<=100). Să se determine dacă valoarea x aparţine mulţimii A. Se
Va afişa “DA” sau “NU”.

2. Fie un tablou v unidimensional cu n numere întregi (n<=100). Să se inlocuiasca toate valorile


egale cu valoarea minimă cu Valoarea maximă din tablou.

3. Se citesc elementele unui tablou unidimensional cu n (n<=10O) numere întregi cu cel mult patru
cifre şi un număr întreg X. Să se determine media aritmetică a elementelor din tablou diferite de x.

4. Fie un tablou v unidimensional cu n numere întregi (n<=100). Să se determine câte dintre


elementele tabloului sunt egale cu prima sau ultima valoare din tablou.

5. Fie un tablou v unidimensional cu n numere întregi (n<=100). Să se afişeze indicii componentelor


egale cu cea de a doua componentă din tablou.

Fișa nr. 3. Inserarea


1. Fie un tablou v unidimensional cu n numere întregi (n<=100). Să se insereze valoarea X pe poziţia
p (p<=n) unde n, v, X şi p se citesc de la tastatură.

2. Se citesc elementele unui tablou unidimensional cu n (n<=10O) numere întregi cu cel mult patru
cifre fiecare. Să se insereze între oricare două elemente suma acestora.

3. Se citesc elementele unui tablou unidimensional cu n (n<=10O) numere întregi cu cel mult patru
cifre. Să se insereze după fiecare număr impar din tablou dublul acestuia.

4. Se citesc elementele unui tablou unidimensional cu n (n<=10O) numere întregi cu cel mult patru
cifre. Să se insereze după fiecare număr par din tablou inVersul acestuia.
5. Se citesc elementele unui tablou v unidimensional cu n (n<=10O) numere întregi cu cel mult
patru cifre. Să se insereze după fiecare valoare egală cu 0 din tablou valorile 1, 2 şi 3. Exemplu. Dacã
v=(5, O, 4, O, O, 7) se obţine: v=(5, O, 1, 2, 3, 4, 0, 1, 2, 3, O, 1,2, 3, 7)

6. Se citesc elementele a două tablouri v, w unidimensionale cu m respectiv n (m,n<=100)


componente numere întregi cu cel mult patru cifre fiecare. Să se insereze Valorile tabloului w
înainte de componenta de indice p din tabloul v. Exemplu. Dacă V:(3,4,1,5,7), w=(8,9,1O,11), p=4 se
obţine: v=(3,4,1,8,9,10,11,5,7).

7. Se citesc elementele unui tablou v unidimensional cu n (n<=100) numere intregi cu cel mult
patru cifre fiecare şi un număr natural x (X59). Să se insereze intre oricare două elemente alăturate
vi, vi+1 cu o diferenţă mai mică decât valorile de la vi, la Vi+1. Exemplu. Dacă V=(8, 43, 1, 5, 128,33,
29), x=7 se obţine v:(8, 43, 1, 2, 3, 4, 5, 128, 33, 32, 31, 30, 29).

Fișa nr. 4. Ştergerea


1. Fie un tablou V unidimensional cu n numere întregi (n<=100). Să se elimine valoarea de pe
poziţia p.

2. Să se elimine valoarea x dintr-un tablou v unidimensional cu n numere intregi (n<=100) care


memorează valori distincte.

3. Să se elimine toate valorile egale cu x dintr-un tablou v unidimensional cu numere întregi


(n<=100).

4. Fie un tablou v unidimensional cu n numere întregi (n<:l00). Să se mute la sfărşitul tabloului


zerourile fără a schimba ordinea elementelor nenule.

5. Fie un tablou v unidimensional cu n numere întregi (n<=100). Sa se elimine valorile pare din
tablou.

6. Fie un tablou v unidimensional cu n numere întregi (n<=100). Sa se elimine valorile din tablou
care nu sunt numere prime.

7. n (n<=1OO) numere întregi sunt aşezate pe circumferinta unui unui cerc, astfel incãt al n-lea
ajunge lângă primul număr. Începând cu numărul de pe poziţia p citit, se elimina numerele din k în
k, după fiecare eliminare cercul strângându-se. Care va fi numărul rămas?

8. Se citesc elementele unui tablou unidimensional a cu n (n<=100) numere intregi cu cel mult
patru cifre. Să se elimine din componente astfel încât oricare două componente alaturate să aibă
Valoare diferită. Exemplu. pentru a=(3, 4, 4, 4, 3, 3, 2, 6) se obţine a:(3, 4, 3, 2, 6).

9. Se citesc elementele unui tablou unidimensional a cu n (n<=100) numere întregi cu cel mult
patru cifre. Să se elimine din componente astfel încât oricare două componente alãturate să aibă
paritate diferită. Exemplu. pentru a=(3, 4, 6, 4, 3, 3, 2, 6, 1) se obţine a=(3, 4, 3, 2, 1).

10. Se citesc elementele unui tablou unidimensional cu n (n<=100) numere întregi cu cel mult patru
cifre, ordonate crescător. Să se elimine duplicatele din tablou astfel încât fiecare Valoare să apară o
singură dată. Exemplu pentru v=(2, 3, 3, 3, 4, 7, 7, 8,10) se obţine: V:(2, 3, 4, 7, 8,10).
11. Fie un tablou v unidimensional cu n numere întregi (n<=100). Sa se elimine valori din tablou
astfel încât suma componentelor să nu depăşească un S citit iar numărul de componente rămase să
fie cât mai mare.

Fișa nr.5.Ordonarea componentelor


Se citesc elementele unui tablou unidimensional cu n (n<=100) numere întregi cu cel mult patru
cifre. Să se realizeze următoarele prelucrări:
1. Să se ordoneze crescator elementele tabloului.

2. Să se ordoneze crescător elementele de pe poziţii pare şi descrescător elementele de pe poziţii


impare.

3. Să se ordoneze Crescător prima jumătate şi descrescător cea de a doua jumătate.

4. Să se ordoneze Crescător elementele tabloului după ultima cifră.

5. Să se ordoneze Crescător elementele tabloului după prima cifră.

6. Să se añşeze elementele pare ordonate Crescător şi elementele impare ordonate descrescător.

7. Scrieţi un program care citeşte de la tastatură un număr natural nenul n (n<=100) şi apoi n
numere naturale nenule, de maximum 4 cifre fiecare, reprezentând elementele unui tablou
unidimensional. Programul afişează mesajul Da în cazul în care elementele tabloului reprezintă o
permutare a elementelor mulţimii { 1,2,3,…,n}, iar în caz contrar afişează mesajul Nu.

Fișa nr.6. Căutarea binară


1. Se citesc elementele unui tablou unidimensional cu n (n<=l00) numere întregi cu cel mult patru
cifre ordonate Crescător. Să se determine dacă valoarea x citită de la tastatură se găseşte în tablou.
În caz afirmativ se va afişa o poziţie pe care acesta se găseşte altfel se va afişa un mesaj.

2. Se citesc elementele unui tablou unidimensional cu n (n<=100) numere întregi cu cel mult patru
cifre ordonate crescător. Să se determine dacă valoarea x citită de la tastatură se găseşte în tablou.
În caz afirmativ se va afişa cel mai mic indice pe care acesta se găseşte în tablou altfel se va afişa un
mesaj.

3. Se citesc elementele a două tablouri unidimensionale v şi W cu m (m<=100) respectiv n (n<=l00)


componente întregi cu maxim patru cifre ordonate strict crescător. Să se afişeze elementele
comune celor două tablouri.

Fișa nr.7 Schimbarea ordinii componentelor după diverse criterii


1. Se citesc elementele unui tablou unidimensional cu n (n<=l00) numere întregi cu cel mult patru
cifre fiecare. Să se inverseze ordinea componentelor astfel încât primul element devine ultimul, al
doilea penultimul etc.

2. Permutare circulară la stânga.


a. Să se rearanjeze componentele unui tablou de numere întregi astfel încât primul element devine
ultimul iar toate celelalte componente se deplasează cu o poziţie la stânga. Exemplu: Dacă n=6,
v=(2,4,5,7,8,9) rezultă: v=(4,5,7,8,9,2)
b. Să se afişeze componentele tabloului după k permutări circulare la stânga. Exemplu: Dacă n=6,
v=(2,4,5,7,8,9), k=3 rezultă: V=(7,8,9,2,4,5)
3. Permutare circulara la dreapta.
a. Să se rearanjeze componentele unui unui tablou de numere întregi astfel încât ultimul element
devine primul iar toate celelalte componente se deplasează cu o poziţie la dreapta. Exemplu: Dacă
n=6, v=(2,4,5,7,8,9) rezultă: v=(9,2,4,5,7,8).
b. Să se afişeze componentele tabloului după k permutări circulare la dreapta. Exemplu: Dacă n=6,
v=(2,4,5,7,8,9), k=3 rezulta: v=(7,8,9,2,4,5)

4. Să se mute la sfârşitul unui tablou toate elementele nule (nu se vor utiliza secvenţe de ştergere).

5. Să se rearanjeze elementele unui tablou unidimensional de numere întregi astfel încât valorile
pare sa fie la început iar cele impare la sfârşit

6. Sa se rearanjeze elementele unui tablou unidimensional de numere întregi astfel încât valorile
pare să fie la început Crescător iar cele impare la sfârşit descrescător.

7. Sa se rearanjeze elementele unui tablou unidimensional de numere intregi astfel incat numerele
prime sa fie situate la inceput crescator iar numerele care nu sunt prime sa fie grupate la sfarsit
descrescator.

8. Sa se rearanjeze elementele unui tablou unidimensional de numere atfel incat valorile reale sa fie
la inceput iar cele intregi la sfarsit. Exemplu : pentru n=7 si v=(7, 3,4.21, 4,10,56.23,0.9) o solutie
este : v=(4.21,56.23,0.9,7,4,10).

9. Scrieti un program care citeste de la tastatura un numar natural nenul n (n<=100) apoi n numere
naturale reprezentand elementele unui tablou unidimensional , apoi afiseaza pe ecran toate
permutarile circulare , cu o pozitie spre stanga , ale elementelor tabloului. Elementele fiecarei
permutari se vor afisa pe cate o linie , separate prin cate un spatiu. Exemplu : daca n=4 si tabloul
unidimensional are continutul alaturat : 10 20 30 49, atunci se vor afişa: lO 20 30 49 20 30 49 lO 30
49 l0 20 49 lO 20 30.

Fișa nr.8. Interclasarea a doi Vectori


1. Se considera doua tablouri unidimensionale a si b , fiecare avand numere naturale cu cel mult 4
cifre fiecare , ordonate crescator. Tabloul a contine n numere (1<n<100) pare , iar tabloul b contine
m (1<m<100) numere impare . Scrieti un program care citeste de la tastatura valoarea lui n si cele n
elemente ale tabloului a , apoi valoarea lui m si cele m elemente ale tabloului b , dupa care scrie in
fisierul date.txt un numar maxim de elemente ale tablourilor date , numerele scrise fiind in ordine
crescatoare , separate prin cate un spatiu, iar cele aflate pe pozitii consecutive fiind de paritate
diferita. Exemplu : pentru n=6 , m=5 si tablourile : a=(2,4,8,1O,14,16) şi b=(3,5,7,11,15) fişierul
date.txt va avea următorul conţinut : 2 3 4 5 8 11 14 15 16.

2. Se consideră două tablouri unidimensionale a şi b ñecare având numere naturale cu cel mult 4
cifre ñecare, Fiecare dintre tablouri conţine cel mult 100 de valori ordonate strict Crescător. Tabloul
a contine n numere (1<n<100) , iar tabloul b contine m (1<m<100) numere .Se cere să se afişeze pe
ecran, în ordine crescătoare, numerele divizibile cu 5 care se găsesc doar în unul din cele două
tablouri. Exemplu: a=(1 2 3 4 7 20 60), iar b=(3 5 7 8 9 10 12 20 24) atunci se vor afişa pe ecran
Valorile: 5 10 60.

3. Se consideră două tablouri unidimensionale a şi b fiecare având cel mult 100 de numere naturale
cu cel mult 4 cifre ordonate strict crescator. Se cere să se afişeze pe ecran, în ordine crescătoare
numerele care se găsesc doar în unul din cele două tablouri. Exemplu: a=(1 2 3 4 7 20 24 60), iar
b=(1 3 4 7 8 9 10 20 24) atunci se vor afişa pe ecran valorile: 2 8 9 10 60.
4. Se consideră două tablouri unidimensionale a şi b fiecare având cel mult lOO de numere naturale
cu cel mult 4 cifre ordonate strict crescător.Tabloul a contine n numere (1<n<100) , iar tabloul b
contine m (1<m<100) numere . Se cere să se afişeze pe ecran, în ordine crescătoare, a numerelor
care se găsesc ambele tablouri. Exemplu: a=(1 2 3 4 7 20 24 60), iar b=(1 3 4 7 8 9 10 20 24) atunci
se vor afişa pe ecran valorile: 1 3 4 7 20 24.

5. Se consideră două tablouri unidimensionale a şi b fiecare având cel mult 100 de numere naturale
cu cel mult 4 cifre ordonate strict crescator.Tabloul a contine n numere (1<n<100) , iar tabloul b
contine m (1<m<100) numere . Se cere să se afişeze pe ecran, în ordine crescatoare, a numerelor
prime din cele doua tablouri. Exemplu: a=(1 2 3 4 7 20 24 60), iar b:(1 3 4 7 8 9 10 20 24) atunci se
vor afişa pe ecran valorile: 2 3 3 7 7 9.

6.Se consideră două tablouri unidimensionale a şi b fiecare având cel mult 100 de numere naturale
cu cel mult 4 cifre ordonate strict crescator.Tabloul a contine n numere (1<n<100) , iar tabloul b
contine m (1<m<100) numere .Se cere să se afişeze pe ecran:
a. elementele celor doi vectori , in ordine crescătoare
b. elementele celor doi vectori , in ordine descrescătoare
c. elementele celor doi vectori care apar cel puțin în unul, in ordine crescătoare
d. elementele celor doi vectori care apar cel puțin în unul dintre ei, in ordine descrescătoare
e. elementele comune celor doi vectori , in ordine crescătoare
f. elementele comune celor doi vectori , in ordine descrescătoare
g. elementele pare care apar cel puțin în unul dintre ei , in ordine crescătoare
h. elementele pare care apar cel puțin în unul dintre ei , in ordine descrescătoare
i. elementele divizibile cu 5 care apar cel puțin în unul dintre ei , in ordine crescătoare
h. elementele divizibile cu 5 care apar cel puțin în unul dintre ei , in ordine descrescătoare

Fișa nr. 9 Operaţii cu mulţimi


1. Se citesc valori întregi până se memoreazã m valori respectiv n valori distincte în tablourile
unidimensionale a şi b care reprezintă două mulţimi.
Să se realizeze următoarele prelucrări:
a. Să se genereze un tablou c care memoreazã intersecţia celor doua mulţimi
b. Să se genereze un tablou d care memoreazã diferenţa celor douã mulţimi (a-b)
c. Să se genereze un tablou r care memorează reuniunea celor doua mulţimi.

2. Din fişierul date.in se citesc n mulţimi astfel: pe prima linie se memorează numarul n (n<=1OO)
de mulţimi. Pe următoarele n linii se memorează pe fiecare linie o valoare p (p<=200) apoi p
numere întregi de cel mult 5 cifre fiecare care reprezintă componentele unei mulţimi. Să se
genereze un tablou c care memorează intersecţia celor n mulţimi.

Fișa nr. 10 Prelucrarea tuturor perechilor sau tripletelor care îndeplinesc o condiţie dată
Se citesc elementele unui tablou unidimensional cu n (n<=100) numere întregi cu cel mult patru
cifre. Să se realizeze următoarele prelucrări:
1. Să se decidă dacă elementele tabloului sunt distincte.

2. Să se determine câte perechi din tablou sunt prime intre ele.

3. Să se determine câte perechi din tablou au valori egale.

4. Să se determine câte perechi din tablou au suma un număr prim cu cifra unităţilor egală cu 3.
5. Să se determine câte triplete din tablou au valori egale.

6. Să se determine câte triplete din tablou au proprietatea că una dintre valori este egală cu suma
celorlalte două.

7. Să se afişeze fiecare valoare din tablou o singură dată şi frecvenţa ei în tablou.

8. Să se afişeze tripletele a căror sumă este egală cu s citit. Exemplu. v=(3,5,1,2,4) şi s=10. Se
afişează nu obligatoriu în această ordine: 3, 5, 2 5, 1, 4.

9. Fisierul intervale.txt conţine pe prima linie un număr natural nenul n (n<=l000), iar pe fiecare
dintre următoarele n linii, câte două numere întregi a şi b (1<=a<b<=32000), fiecare pereche
reprezentând un interval închis de forma [a,b]. Scrieţi un program care determină intervalele care
au proprietatea că intersecţia cu oricare dintre celelalte n-l intervale este vidă şi afişează pe cîte o
linie a ecranului, separate printr-un spaţiu, numerele care reprezintă capetele intervalelor
determinate. Exemplu: dacă fişierul intervale.txt are conţinutul alăturat: 4 pe ecran se va afisa: 17
20 2 6 2 6 17 20 1O 15 8 16.
Fișa nr.11. Prelucrarea secvenţelor de valori alăturate

Se citesc elementele unui tablou unidimensional cu n (n<=100) numere întregi cu cel mult patru
cifre. Să se realizeze următoarele prelucrări:
1. Să se determine câte elemente conţine cea mai lungă secvenţă de valori alăturate ordonate
Crescător din tablou.

2. Să se determine câte elemente conţine cea mai lungă secvenţă de valori egale alăturate din
tablou. In cazul în care sunt mai multe astfel de secvenţe de lungime maxima se va afişa numărul
lor.

3. Să se determine câte elemente conţine cea mai lungă secvenţă de valori alăturate din tablou care
au exact 2 cifre. In cazul in care sunt mai multe secvenţe descrescătoare de lungime maximă se va
afişa prima.

4. Să se determine câte elemente conţine cea mai lunga secvenţă de numere pare alăturate din
tablou. In cazul in care sunt mai multe secvenţe de lungime maximă se va afişa numărul lor.

5. Să se afişeze pe ecran lungimea maximă a unei secvenţe din tablou cu proprietatea că oricare
două elemente aflate pe poziţii consecutive sunt prime între ele. Exemplu: dacă tabloul conţine
valorile: 16 25 6 12 1O 4 5 se va afişa 3 pentru că cea mai lungă secvenţa cu proprietatea cerută
este 16 25 6.

6. Să se determine cea mai lunga secvenţă palindromică din tablou. (de elemente
alăturate) Exemplu. pentru tabloul V:(3, 4, 7, 9, 2, 9, 7, 5) se afişează valoarea 5.

7. Să se determine secvenţa de elemente alăturate a căror sumă are valoare maximă. Secvenţa se
va afişa pe ecran.

Fișa nr. 12. Calculul unor expresii


1. Fie doua tablouri unidimensionale x si y care memoreaza n(n<=100) numere intregi pozitive de
cel mult 4 cifre fiecare.
Să se calculeze valoarea următoarelor expresii:
a. E=(X1+Y1)* (X2+Y2)* –- –*(Xn+Yn)
b. E=X1*Yl+ X2*y2 + …. -~+Xn*yn
c. E=min(x1,y1)+min(x2,y2)+ …. ..
d. E=min(x1,yn)+min(X2,yn-1)+…+min(xn,y1)
e. Ultima cifra a expresiei E = x1^y1+x2^y2+ … xn^yn

2. Sa se determine suma si produsul a doua polinoame. Coeficientii celor doua plinoame se vor
memora in doua tablouri unidimensionale.

3. Sa se calculeze cel mai mare divizor comun si cel mai mic multiplu comun al componentelor unui
tablou unidimensional care memoreaza n(n<=100) numere naturale nenule.

4. Sa se afiseze divizorii comuni ai tuturor componentelor unui tablou unidimensional cu n


( n<=100) componente numere intregi nenule cu cel mult patru cifre fiecare.

5. Fie tabloul unidimensional care memoreaza n(n<=50) numere intregi. Sa se determine factorul
prim care apare la puterea cea mai mare in descompunerea produsului celor n numere.

6. Operatii cu fractii :
a. Sa se determine suma si produsul a n (n<=100) fractii. Pentru fiecare fractie se citesc valorile
numaratorului respectiv numitorului ca numere intregi nenule de cel mult patru cifre
fiecare.Rezultatele se vor afisa ca fractii ireductibile.
b. Sa se determine cea mai mica fractie din cele n citite.

7. Sa se determine daca radical de ordinul m (m este numar natural <10) din (x1*x2*x3*…*xn) este
numar natural , unde xi sunt numere naturale de cel mult patru cifre fiecare.

Fișa nr.13 Probleme de generare


1. Sa se memoreze intr-un tablou unidimensional primele n ( n<=200) numere prime.

2. Să se memoreze intr-un tablou unidimensional numerele prime pana la n citit care, inversate,
sunt tot prime, unde n este număr natural cu cel mult 8 cifre.

3. Să se memoreze intr-un tablou unidimensional primele n elemente din şirul lui Fibonacci (F[1]=l,
F[2]=1, F[n]=F[n-1]+F[n-2], n>2).

4. Să se genereze toate submulţimile mulţimii {l,2,3…n}

5. Să se genereze toate submulţimile mulţimii {a[1],a[2],a[3]…a[n]}

6. Scrieţi programul care citeşte de la tastatură un număr natural n impar şi construieşte în


memorie un tablou unidimensional A=(A1, A2,…, An) cu elementele mulţimii (1 ,2 , . . . ,n) astfel
încât elementele de pe poziţii impare formează şirul Crescător 1,2, . . . , [ (n+1) /2] iar elementele
de pe poziţii pare şirul descrescător n,n-1 , . . . , [ (n+1) /2] +1 . Exemplu: pentru n=11 se va construi
tabloul A =(1, 11, 2, 1O, 3, 9, 4, 8, 5, 7, 6).

Fișa nr.14 Operaţii cu numere mari


1. In fişierele nr1.txt şi nr2.txt sunt scrise douã numere mari (cu cel mult 1000 de cifre fiecare).
a. Să se afişeze suma celor două numere
b. Să se înmulţească primul număr cu un număr format dintr-o singură cifră x a cărei valoare se
citeşte de la tastatură
c. Să se determine produsul celor două numere
d. Să se determine câtul şi restul împărţirii celor două numere.

15 Prelucrarea numerelor în diferite sisteme de numeraţie


1. Să se transcrie un număr natural x cu cel mult 9 cifre din baza l0 în baza 2.

2. Să se transcrie un număr natural x cu cel mult 9 cifre din baza lO în baza b (2<=b<=9).

3. Să se determine dacă numărul natural x scris in baza lO are în baza 2 un număr de cifre de O egal
cu numărul cifrelor de 1.

4. Se citesc cele n cifre c (c<=9) ale numărului x şi baza b în care este scris numărul x. Să se afişeze
numărul x în baza 1O.

5. Se citesc două numere naturale x şi y. Să se determine dacă unul dintre numere poate reprezenta
transcrierea celuilalt număr intr-un sistem de numeraţie mai mic sau egal cu 9. În caz afirmativ se
va afişa sistemul de numeraţie. Exemplu: pentru x=68 şi y=2112 se afişează 3 deoarece
2112(3)=68(10) .

Fișa nr.16 Vectori de frecvenţe (numărare)


1. În fişierul cifra.txt sunt memorate cel mult un milion de cifre separate prin unul sau mai multe
spaţii. Să se afişeze utilizând o metodă eficientă din punct de vedere a spaţiului de memorie şi a
timpului de execuţie cifrele toate ordonat Crescător.

2. În fişierul cifra.ţxt sunt memorate cel mult un milion de cifre separate prin unul sau mai multe
spaţii. Să se afişeze utilizând o metodă eficientă din punct de vedere a spaţiului de memorie şi a
timpului de execuţie cifrele o singură dată ordonate Crescător.

3. În fişierul cifre.txt sunt memorate cel mult un milion de cifre separate prin unul sau mai multe
spaţii. Să se afişeze utilizând o metodă eficientă din punct de vedere a spaţiului de memorie şi a
timpului de execuţie cifrele care nu se găsesc în fişier.

4. În fişierul cifre.txt sunt memorate cel mult un milion de cifre separate prin unul sau mai multe
spaţii. Să se afişeze utilizând o metodă eficientă din punct de vedere a spaţiului de memorie şi a
timpului de execuţie cifrele cu cea mai mică frecvenţă.

5. În fişierul numere.txt sunt memorate cel mult un milion de numere naturale cu cel mult patru
cifre separate prin unul sau mai multe spaţii. Să se afişeze utilizând o metodă eficientă din punct de
vedere a spaţiului de memorie şi a timpului de execuţie cele mai mari două numere de două cifre
care nu se găsesc în fişier.

6. În fişierul numere.txt sunt memorate cel mult un milion de numere naturale cu cel mult patru
cifie separate prin unul sau mai multe spaţii. Să se afişeze câte numere din fişier au prima şi ultima
cifră identice.

7. În fişierul numere.ţxt sunt memorate cel mult un milion de numere naturale cu cel mult nouă
cifre fiecare separate prin unul sau mai multe spaţii. Să se afişeze care este cifra (cifrele) care apare
de cele mai multe ori în numerele din fişier.

8. În fişierul numere.txt sunt memorate maximum 10000 de numere naturale cu cel mult 9 cifre
fiecare. Fiecare linie a fişierului conţine câte un număr. Se cere afişarea pe ecran a celui mai mare
număr care s-ar obţine din toate cifrele numerelor din fişier. Alegeţi un algoritm
de eficient din punct de vedere al memoriei utilizate şi al timpului de
execuţie. Exemplu: dacă fişierul numere.txt conţine: 267 39628 79 se va tipări 9987766322.

9. În fişierul numere.txt sunt memorate maximum 10000 de numere naturale cu cel mult 9 cifre
fiecare. Fiecare linie a fişierului conţine câte un număr. Se cere afişarea pe ecran a celui mai mic
număr care s-ar obţine din toate cifrele numerelor din fişier. Alegeţi un algoritm
de eficient din punct de vedere al memoriei utilizate şi al timpului de
execuţie. Exemplu: dacă fişierul numere.txt conţine: 267 39608 79 se va tipări: 2036677899.

10. În fişierul numere.txt sunt memorate cel mult un milion de numere naturale cu cel mult trei
cifre separate prin unul sau mai multe spaţii. Să se afişeze in ordine crescatoare numerele din fişier
care apar o singura datã.

11. In fişierul medii.txt sunt memorate cel mult un milion de medii (numere reale cu doua zecimale
cu valori cuprinse intre 1 şi 10). Să se afişeze o statistică a mediilor astfel: numărul de medii
cuprinse în intervalul [1,2], numărul de medii cuprinse în intervalul (2,3],.., numărul de medii
cuprinse în intervalul (9,l0].

12. În fişierul numere.txt sunt memorate maximum 10000 de numere naturale cu cel mult 9 cifre
fiecare. Să se afişeze câte numere au cifrele egale. Exemplu. Dacă în fişier sunt scrise numerele 234,
333, 55, 56, 33, 5632 se afişează Valoarea 3.

13. Fie un Vector v cu n elemente numere naturale (n<=100) cu cel mult 4 cifre fiecare. Se cere să
se afişeze cel mai mare număr format cu prima cifră a fiecărei componente din v. Exemplu. pentru
v=(78, 567, 7122, 5, 123) se afişează: 75751.

14. Evidenţa produselor vândute de o societate comercială este păstrată în fişierul produse.txt.
Pentru fiecare produs se cunoaşte tipul produsului (un număr natural de cel mult 2 cifre), cantitatea
exprimată în kilograme ( un număr natural mai mic sau egal cu 100) şi preţul unui kilogram (un
număr natural mai mic sau egal cu 100). Produsele de acelaşi tip pot fi vândute în cantităţi diferite,
fiecare vânzare fiind înregistrată separat. Fişierul produse. txt are cel mult 2000 de linii şi fiecare
linie conţine trei numere naturale, separate prin câte un spaţiu, ce reprezintã, în această ordine
tipul, cantitatea şi preţul de Vânzare al unui produs la un moment dat. Să se scrie un program care
determină pentru fiecare tip de produs vândut suma totală obţinută în urma vânzărilor. Programul
va afişa pe câte o linie a ecranului tipul produsului şi suma totală obţinută, separate prin câte un
spaţiu, ca în exemplu. Exemplu: dacă fişierul produse. txt are conţinutul alăturat: 3 1 5 1 20 5 2 1O
3 1 10 5 programul va afişa numerele următoare: 1 150 2 30 3 5

S-ar putea să vă placă și