Sunteți pe pagina 1din 8

1.

Sa se scrie un program care modifica un vector astfel nct el sa conin doar valori
distincte. Se va folosi un subprogram care verifica Dac o valoare exista deja in vector.
Exemplu: x=(1, 5, 2, 1, 7, 9, 5, 4, 1) => (1, 5, 2, 7, 9, 4)
2. Se da matricea A cu m linii si n coloane. Sa se permute circular spre dreapta cu k
poziii toate liniile matricei. Se va folosi un subprogram care permuta circular spre
dreapta cu o poziie o linie a matricei.
Exemplu: Dac matricea este (




) si k=2 rezulta (





).
3. Se citete de la tastatura o matrice A cu m linii si n coloane si elemente numere
ntregi. Sa se determine linia (liniile) din matrice care conine cele mai multe elemente
nenule. Se va folosi o funcie care returneaz numrul elementelor nenule de pe o linie
a crui indice i se transmite ca parametru.
Exemplu: Pentru matricea (







) liniile cerute sunt 1 si 3.
4. Elementele unei matrice A cu m linii si 2 coloane sunt coordonatele a m puncte in
plan P1, P2, , Pm, m 3. Sa se afieze numerele de ordine ale celor trei linii care
determina triunghiul de arie maxima, precum si valoarea acestei arii. Se va folosi o
funcie care returneaz aria unui triunghi de laturi date.
5. Se dau m,n N si mulimile A = {a1, a2, ..., am} si B = {b1, b2, , bn} memorate ca
vectori. Sa se scrie cate un program care calculeaz:
a) C = A B
b) C = A B
c) C = A B
Vectorii A si B se considera nesortai. Se va folosi o funcie care verifica Dac o
anumita valoare se gsete intr-un vector sau nu.
Exemplu: Dac A={1,5,2,9,12} si B={5,3,4,6,33,99,12,64} atunci a) C={5,12};
b) C={1,5,2,9,12,3,4,5,33,99,64}; c) C={1,2,9}.
6. Se considera doi vectori A cu m elemente si B cu n elemente, Se cere sa se
determine reuniunea celor doi vectori folosind:
- un subprogram pentru ordonarea unui vector;
- un subprogram pentru a insera o valoare intr-un vector ordonat pentru a rmne
ordonat (se va folosi cutarea binara a poziiei de inserare).
Exemplu: Dac A={1,5,2,9,12} si B={4,3,4,6,33,99,12,64} atunci A
B={1,4,2,9,12,3,4,6,33,99,64}
7. Numim linii gemene ntr-o matrice, dou linii care conin exact aceleai elemente,
eventual ntr-o alta dispunere pe coloane. Scriei un program care determina toate
perechile de linii gemene ntr-o matrice A data, cu m lini si n coloane, si elemente
numere ntregi. Pentru fiecare astfel de pereche, se vor afia pe un rnd indicii liniilor
componente.
Exemplu. A= (







) singura pereche este (1,3).
8. Se da o matrice A cu m linii si n coloane, Sa se elimine din A liniile si coloanele la
intersecia crora se afla un numr natural al crui scriere in baza 2 are cel puin doua
cifre egale cu 1. Se va folosi o funcie care returneaz numrul de cifre egale cu 1 dintr-
un numr, o procedura de eliminare a unei linii dintr-o matrice si o procedura care
elimina o coloana dintr-o matrice.
9. Se citesc n numere naturale de la tastatura. Sa se afieze numerele din vector pe
grupe, o grupa avnd numere cu aceeai suma de control. Grupele se vor afia in
ordinea descresctoare a numrului de elemente din grupa. Dac doua grupe au
acelai numr de componente ele se vor afia in ordinea cresctoare a valorii cifrei de
control corespunztoare grupei respective. Suma de control a unui numr se obine
calculnd suma cifrelor numrului, apoi suma cifrelor aceste cifre s.a.m.d. pana se
obine o suma formata dintr-o singura cifra care va reprezenta cifra de control.
Exemplu: Pentru x=(156, 912, 12, 10081,822, 75) se va afia:
Grupa 1: 156, 12, 822, 75
Grupa 2: 10081
Grupa 3: 91.
10. Sa se scrie un program care tiprete un numr precizat de termeni din irul 1, 2,1,
3,2,1, 4,2,2, 5,4,3,2,1, 6,2,2,3,3,3 obinut din irul de numerelor naturale prin
nlocuirea fiecrui numr natural printr-un grup de numere. Numrul prim p este nlocuit
prin numerele p, p-1, , 3, 2, 1 iar numrul compus n este nlocuit prin n urmat de toi
divizorii si proprii, un divizor d repetandu-se de d ori.
11. Un numr natural este perfect Dac este egal cu suma divizorilor si diferii de el
nsui. Sa se determine toate numerele perfecte mai mici dect n, citit de la tastatura.
Se vor folosi urmtoarele proceduri si funcii:
- Procedura de determinare a divizorilor unui numr ntreg
- Funcie booleana care verifica Dac un numr este perfect sau nu.
Exemplu: Dac n=500 se afieaz valorile 6, 28, 496.
12. Dndu-se un vector neordonat A cu n elemente, sa se gseasc cel de-al k-lea
element din tabloul ordonat, fr a-l ordona. Se vor folosi o funcie care determina
poziia minimului elementelor unui sir.
Indicaie: Determinarea minimului irului dat realizeaz de fapt gsirea primului termen
al irului ordonat fr a-l ordona. Dac pe poziia acestui minim punem o valoare mai
mare dect a tuturor termenilor, la urmtorul pas determinarea minimului va realiza
stabilirea celui de-al doilea termen al irului ordonat s.a.m.d.
13. Printre numerele mai mici sau egale cu un numr n dat, sa se gseasc cel care are
mai muli divizori. Se va folosi o funcie ce calculeaz numrul de divizori ai unui numr.
Exemplu: Pentru n=100, numrul cerut este 60 care are 12 divizori.
14. Sa se calculeze cel mai mare divizor comun a doua numere de date m si n astfel:
- pentru fiecare numr se creeaz un tablou cu toi divizorii acestuia inclusiv divizorii
banali (1 si numrul nsui)
- se selecteaz apoi intr-un tablou toi divizorii comuni si se ia cel mai mare dintre
acetia
Se va folosi programarea modulara.
15. Numerele puternice sunt acele numere naturale care au numrul divizorilor mai
mare dect numrul divizorilor oricrui numr natural mai mic dect numrul respectiv.
Programul cele sa se afieze al n-lea numr puternic (n<70).
Exemplu: Cel mai mic numr puternic este 1, urmeaz 2, 4 si 6.
16. Sa se scrie o procedura perm2 care realizeaz interschimbarea valorilor a doua
variabile si sa se scrie apoi o procedura ord care ordoneaz cresctor un sir de numere
ntregi astfel nct sa apeleze perm2.
17. Se da un tablou bidimensional cu m linii si m coloane avnd componente numere
naturale. Sa se determine cel mai mare divizor comun si cel mai mic multiplu comun al
componentelor tabloului.
18. Pentru un numr natural dat, sa se stabileasc raportul dintre numrul divizorilor
pari si numrul divizorilor impari ai numrului n.
Exemplu: Pentru n=246 raportul este 1 (4 divizori pari si 4 divizori impari)
19. Se citesc de la tastatura k matrice cu m linii si n coloane. Sa se determine cate din
aceste matrice verifica cel puin una din urmtoarele proprieti:
a) exista cel puin o linie cu toate elementele pozitive;
b) exista cel puin o linie cu toate elementele in progresie geometrica;
c) exista cel puin o linie cu toate elementele ordonate cresctor.
20. Sa se rezolve in mulimea numerelor reale ecuaia

, folosind un
subprogram pentru rezolvarea ecuaiei de gradul II.
21. Sa se determine punctele sa dintr-o matrice A cu m linii si n coloane folosind un
subprogram care determina maximul dintr-un tablou liniar si un subprogram care
determina minimul dintr-un tablou liniar. (Observaie: elementul

se numete element
sa a matricei A Dac el este minim pe linia i si maxim pe coloana j sau invers)
22. Exista numere care au proprietatea ca se scriu, in doua baze diferite, prin trei cifre
identice. De exemplu, numrul

in baza 9 se scrie 333, si in baza 16 se scrie 111.


Sa se scrie un program care sa determine toate numerele mai mici ca N care au
aceasta proprietate.
23. Se dau n mulimi cu componente numere ntregi, memorate ntr-o matrice cu 2*n
linii astfel: fiecare mulime este data prin numrul de elemente pe o linie a matricei iar
elementele mulimii pe linia urmtoare a matricei. Se cere sa se afle elementele
interseciei acestor mulimi. Se va folosi o funcie care caut un numr pe o linie a
matricei, si o procedura care determina intersecia a doua linii a matricei.









Exemplu: Pentru n=3 si matricea







se va afia: 1, 4.
24. Un centru meteo are n angajai. Fiecare angajat petrece la serviciu o anumita
perioada din zi, delimitata de momentele sosirii si plecrii. In orice moment al zilei este
prezent cel puin un angajat. Sa se determine perioada in care la centrul meteo se afla
un numr maxim de angajai.
25. Sa se calculeze suma

, pentru un numr natural si x=(x[1],


x[2], , x[n]) vector de numere ntregi citite de la tastatura.
Observaie: Valorile obinute pot fi foarte mari. De exemplu

conine 31 de cifre.
Exemplu: Pentru n-5 si x=(5,10,35,12,22) se obine suma 34363937824.
26. Se considera o matrice rara (adic cu foarte multe elemente nule) A(n,n) cu p
elemente nenule. Matricea este memorat economic sub forma a doi vectori V[i], T[i],
1 i p, care rein valorile elementelor nenule ale matricei, respectiv poziia acestor
elemente, liniarizate pe linii.
Sa se scrie un program care realizeaz urmtoarele operaii, fiecare fiind implementata
cu ajutorul unui subprogram separat:
a) citind vectorii V si T reface matricea A;
Exemplu: Pentru n=5, p=8, V=(2,7,8,4,6,1,3,5), T=(1,5,9,11,14,18,20,22) se va afia
matricea








A=







b) determina vectorii V si T corespunztori matricei transpuse a matricei A, fr a
reconstitui matricea;
Exemplu: Transpusa matricei anterioare este data prin n=5, V=(2,4,5,1,8,6,7,3) si
T=(1,3,10,14,17,18,21,24).
c) considernd matricele A(n,n) si B(n,n) cu p respectiv q elemente nenule, calculeaz
suma celor doua matrice folosind memorarea economica;
Exemplu: Pentru n=5 si matricele date prin V1=(2,7,8,4,6,1,3,5),
T1=(1,5,9,11,14,18,20,22) si respectiv V2=(1,5,1,3,4,4,2,9), T2=(1,2,8,10,12,16,18,24)
se obine V=(3,5,7,1,8,3,4,4,6,4,3,3,5,9) si T=(1,2,5,8,9,10,11,12,14,16,18,20,22,24).
d) acelai enun ca la punctul anterior pentru produsul celor doua matrice.
Exemplu: Pentru n=5 si matricele date prin V1=(2,7,8,4,6,1,3,5),
T1=(1,5,9,11,14,18,20,22) si respectiv V2=(1,5,1,3,4,4,2,9), T2=(1,2,8,10,12,16,18,24)
se obine V=(2,10,63,32,16,28,20,12,4,27,5,15) si T=(1,2,4,6,8,11,12,13,17,19,23,25).
Observaie: La toate punctele se considera ca elementele nenule se vor citi/afia in
ordinea liniarizrii pe linii a matricei (adic in ordinea


deci vectorul T este sortat cresctor).
27. Se considera o matrice A(n,n) cu p elemente nenule. Matricea este memorata
economic sub forma a trei vectori V[i], L[i] si C[i] care rein valorile, liniile si coloanele
elementelor nenule.
Sa se scrie un program care realizeaz urmtoarele operaii fiecare printr-un
subprogram:
a) citind vectorii V,L,C reface matricea A;
Exemplu: Pentru n=5, V=(1,5,1,3,4,4,2,9), L=(1,1,2,2,3,4,4,5), C=(1,2,3,5,2,1,3,4) se



obine matricea :







A=







b) considernd matricele A(n,n) si B(n,n) cu p respectiv q elemente nenule, calculeaz
suma celor doua matrice folosind memorarea economica;
Exemplu: Pentru n=5 si V1=(1,5,1,3,4,4,2,8), L1=(1,1,2,2,3,4,4,5), C1=(1,2,3,5,2,1,3,4);
respectiv V2=(2,7,8,4,6,1,3,5), L2=(1,1,2,3,3,4,4,5), C2=(1,5,4,1,4,3,5,2) se obin
vectorii V=(3,5,7,1,8,3,4,4,6,4,3,3,5,8), L=(1,1,1,2,2,2,3,3,3,4,4,4,5,5) si
C=(1,2,5,3,4,5,1,2,4,1,3,5,2,3) corespunztori matricei suma.
c) acelai enun pentru produsul celor doua matrice.
Exemplu: Pentru n=5 si V1=(1,5,1,3,4,4,2,8), L1=(1,1,2,2,3,4,4,5), C1=(1,2,3,5,2,1,3,4);
respectiv V2=(2,7,8,4,6,1,3,5), L2=(1,1,2,3,3,4,4,5), C2=(1,5,4,1,4,3,5,2) se obin
vectorii V=(2,40,7,4,15,6,32,16,12,28,8,24), L=(1,1,1,2,2,2,3,4,4,4,5,5) si
C=(1,4,5,1,2,4,4,1,4,5,3,5) corespunztori matricei produs.
Observaie: La toate punctele se considera ca elementele nenule se vor citi/afia in
ordinea liniarizrii pe linii a matricei (adic in ordinea


deci vectorul T este sortat crescator).

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