0% au considerat acest document util (0 voturi)
329 vizualizări17 pagini

Probleme Vectori PDF

Încărcat de

Bogdan Davidoaia
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd
0% au considerat acest document util (0 voturi)
329 vizualizări17 pagini

Probleme Vectori PDF

Încărcat de

Bogdan Davidoaia
Drepturi de autor
© All Rights Reserved
Respectăm cu strictețe drepturile privind conținutul. Dacă suspectați că acesta este conținutul dumneavoastră, reclamați-l aici.
Formate disponibile
Descărcați ca PDF, TXT sau citiți online pe Scribd

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.

[Link] 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 seafiş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).

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.

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).

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.

[Link] 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.

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.

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:

10 20 30 49
20 30 49 10
30 49 10 20
49 10 20 30.

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 [Link] 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 [Link] 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. 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ă [Link]: 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 namrale 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


100 de numere naturale cu cel mult 4 cifre ordonate strict crescător. 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. 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.

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 [Link] 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.

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 [Link] 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ş[Link] are conţinutul alăturat: 4 pe ecran se va afisa: 17 20 2 6 2
6 17 20 1O 15 8 16.

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.
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 [Link] 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.

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).

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) .

16 Vectori de frecvenţe (numărare)

1. În fişierul [Link] 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 [Link] 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 [Link] 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 [Link] 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 [Link] 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 [Link] 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 rezolvare eficient din punct
de vedere al memoriei utilizate şi al timpului de execuţie. Exemplu: dacă
fişierul [Link] conţine: 267 39628 79 se va tipări 9987766322.

9. În fişierul [Link] 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 rezolvare eficient din punct
de vedere al memoriei utilizate şi al timpului de execuţie. Exemplu: dacă
fişierul [Link] conţine: 267 39608 79 se va tipări: 2036677899.

10. În fişierul [Link] 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 [Link] 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 [Link] 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 [Link]. 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 51 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