Vectori


 * Probleme cu vectori**

test


 * Test nr 2**




 * Numere aleatoare**

a) Sa se afiseze de cate ori cei 2 copii au aruncat acelasi zaruri la aceeasi tura. b) Sa se afiseze de cate ori a aruncat fiecare fata 6 c) Castiga copilul care arunca mai multe puncte(suma valorilor mai mare). Afisati castigatorul.
 * 1.** 2 copii se joaca zaruri. Primul arunca de n ori, al doilea la fel. Aruncarile se memoreaza in 2 tablouri.

2. 2 copii se joaca zaruri. Intai arunca primul, pana cand are 2 valori succesive egale. Cand primul a terminat, arunca al doilea, la fel. Afisati: a) numarul de aruncari si aruncarile fiecaruia b) castiga jucatorul care a aruncat cele mai putine numere prime. Afisati castigatorul.


 * Operatii elementare vectori**

1. Se citeste un vector cu n elemente numere naturale. a) Sa se afiseze elementele din 2 in 2 incepand cu primul. b) Sa se afiseze elementele din k in k incepand cu primul. c) Sa se afiseze elementele de la dreapta la stanga. d)Sa se afiseze perechile de elemente alaturate e)Sa se afiseze tripletele de elemente alaturate f)Sa se afiseze toate perechile de elemente alaturate care se termina cu aceeasi cifra g)Sa se afiseze toate perechile de elemente alaturate care incep cu aceeasi cifra h)Sa se afiseze toate perechile de elemente alaturate care auacelasi numar de cifre i)Sa se calculeze media aritmetica a elementelor pare situate pe pozitii impare

2. Se citeste un vector cu n elemente. a)Sa se inverseze elementele vectorului. Exemplu: daca initial vectorul are valorile (2,1,4,5,6) dupa inversare devine (6,5,4,1,2) b)Sa se afiseze pe linii diferite divizorii fiecarui element al vectorului. c)Determinati valoarea minima si maxima. Interschimbati-le. d)Inlocuiti fiecare numar din vector cu primul numar par mai mare decat el. e)Afisati elementele vectorului, cate 5 pe o linie. (exceptie ultima) f)Afisati perechile de elemente alaturate care au exact 2 cifre fiecare.

3. Se citeste un vector cu numere naturale. a. Afisati perechile de numere prime gemene din vector (intre numere diferenta este 2). b. Afisati pentru fiecare numar par (>4) descompunerea sa in suma de 2 numere prime. c. Afisati perechile de numere prime in care unul este inversul celuilalt. d. Afisati cifra cea mai mare si cifra cea mai mica din fiecare vector. e. Afisati fiecare element pe cate o linie urmat de atatea caractere '*' (steluta) cat este valoarea lui a[i]. f. Creati un alt vector care sa contina toate palindroamele si ordonati-l strict crescator.

4. Se citeste un vector A cu n elemente numere reale. a) Formati un vector B cu partile intregi ale acestora b) Formati un vector C care sa contina partile fractionare c) Formati un vector D care sa contina doar acele numere din vectorul B care sunt patrate perfecte.

5. Se citeste un vector A cu n elemente numere reale. Formati 2 vectori: unul cu numerele pozitive, altul cu cele negative. Afisati noii vectori.

6. Se citeste un vector A cu n elemente numere naturale. Formati 2 vectori: unul cu numerele prime, altul cu cele neprime. Afisati noii vectori.

7. Se citesc n temperaturi inregistrate in Cluj Napoca in luna decembrie si m temperaturi inregistrate in ianuarie. Afisati: a) cea mai mare temperatura a fiecarei luni b) temperatura medie a fiecarei luni

8. Sa se verifice daca un vector are doar elemente pare.

9. Sa se verifice daca un vector este strict descrescator, strict crescator, constant sau altfel.

10. Se citeste un vector de n numere naturale. a) Afisati toate perechile de elemente vecine care sunt asemenea (difera printr-o singura cifra) b) Afisati perechile de elemente din vector care au acelasi numar de divizori.

11. Se citeste un vector cu n elemente (n par). Verificati daca prima jumatate este strict crescatoare iar a doua jumatate este strict descrescatoare.

12. Se citeste un vector cu n elemente. Verificati daca pe fiecare pozitie para se gaseste un numar par si pe fiecare pozitie impara se gaseste un numar impar.

13. Se consideră n puncte în plan P1(x1, y1), P2(x2, y2), ..., Pn(xn, yn), unde xi, yi sunt numere reale. a) Să se memoreze cele n puncte b) Să se afiseze toate distantele dintre fiecare 2 puncte c) Să se determine două puncte Pi şi Pj pentru care distanţa dintre ele este minimă.

14. La un test se cunosc cele n note. Afisati: a) cele mai mari 2 note (de exeplu pot fi 10 si 10) b) cele mai mari 2 note diferite

15. Se citeste un vector cu numere naturale 1. Afisati valorile care au k divizori. 2. Afisati valorile care au prima cifra mai mare decat ultima. 3. Afiati numerele de 3 cifre. 4. Afisati numerele prime care fac parte din intervalul [A, B], A si B se citesc.

16. Cititi cele n numere naturale ale unui vector. 1. Afisati cate patrate perfecte contine vectorul. 2. Generati si afisati numarul obtinut din prima cifra a fiecarui numar din vector. Includeti doar cifre distincte. (123,12,34,34,21 -> 132) 3. Afisati elementele vectorului in ordinea: primul, ultimul, al doilea, penultimul, al treilea, etc. 4. Schimbati intre ele valoarea maxima si cea minima dintr-un vector. (vectorul contine valori distincte) 5. Afisati de cate ori apare in vector valoarea maxima.

17. Se da un vector cu n elemente strict pozitive. Se cere: a) Afisati perechile de elemente vecine care au suma cifrelor egala. b) Afisati perechile de elemente vecine care sunt prime intre ele c) Afisati cel mai mare divizor comun al tuturor elementelor vectorului.

18. Se da un vector cu n elemente numere naturale. Sa se faca urmatoarele prelucrari: a) Afisati toate numerele care sunt prime si au inversul tot un numar prim. b) Generati si afisati toate numerele care se obtin prin lipirea a doua numere vecine. c) Numarati de cate ori apare cea mai mica valoare in vector.


 * Vectori de frecvente**

1. Fiind dat un numar intre 1 si 2 miliarde, afisati numarul de aparitii ale fiecarei cifre in numarul dat. 2 1 3 2 4 1 6 1 || 2. Se da un numar n. Afisati cifra(cifrele) care apare cel mai des in numar. 3. Se dau 2 numere, n si m. Afisati cifrele lui n ordonate crescator, urmate de cifrele lui m ordonate crescator. 4. Se dau 3 numere a,b,c. Verificati daca sunt formate din aceleasi cifre, care se repeta de acelasi numar de ori. Ex. 2223334, 2323234, 4222333 DA 5. Se citesc n numere naturale. Afisati cifrele care nu apar in niciun numar. Ex: n=5 si numerele 102,3110,9854,100,214 se afiseaza 6,7 6*. -//--- cifrele care apar in toate numerele. Ex. pentru 22233, 265, 82 se afiseaza In niciunul: 0,1,4,7,9 In toate: 2 7. Fiind dat un numar natural n, afisati cea mai mare si cea mai mica cifra para care nu apar in numar. (Sau mesajul "apar toate") De ex. n=5644 se afiseaza 8 si 0. 8.Din fisierul date.in se citesc numere al caror numar nu se cunoaste. Afisati cifra (cifrele) care apare(apar) cel mai des in toate numerele. 9. Fişierul text NR.TXT conţine numere naturale, fiecare număr având cel mult 4 cifre. Scrieţi un program C/C++ care citeşte numerele din fişierul NR.TXT şi afişează pe ecran, separate prin câte un spaţiu, în ordine descrescătoare, toate numerele din fişier care au cel mult 2 cifre. Dacă fişierul nu conţine astfel de numere se va afişa pe ecran mesajul NU EXISTA 10. Un copil face n aruncari cu zarul. Contorizati aruncarile si afisati numarul de aruncari ale fiecarei fete.
 * date.in || date.out ||
 * 231143611 || 1 4

11.Din DATE.IN se citesc cifrele unui numar foarte mare. a) afisati de cate ori apare fiecare cifra para b) afisati cel mai mare numar cu cifre distincte care se poate forma din cifrele numarului citit. c) afisati cel mai mare numar care se poate forma din cifrele numarului citit.

12. Se citeste un vector cu n elemente numere naturale. a)afisati toate perechile de elemente alaturate care nu au nicio cifra comuna b)afisati toate perechile de elemente din vector care au cel putin o cifra comuna

13. Se citeste un vector cu n elemente numere naturale. a) afisati, pentru fiecare numar din vector, cel mai mare numar care se poate forma din cifrele pare, luate o singura data, ale acestuia. b) afisati maximul numerelor afisate la punctul anterior

14. Din DATE.IN se citesc cifrele unui numar foarte mare. a) afisati cel mai mare numar care se poate forma, folosind k cifre ale numarului citit (k<9). Numarul se va construi intr-o variabila. b) afisati cel mai mic numar care se poate forma din cifrele numarului citit.

Sortarea vectorilor
 * Sortarea prin interschimbare, bubblesort, interclasare, selectie maxim**

1. Sa se ordoneze crescator un vector cu n elemente numere intregi. Sa se afiseze vectorul ordonat. 2. Sa se ordoneze descrescator primele k elemente ale unui vector cu n numere intregi. Sa se afiseze vectorul ordonat. 3. Sa se ordoneze crescator elementele pare dintr-un vector. Elementele impare raman la locurile lor. Ex. x=(**6**,7,**4**,**2**,**6**,**8**,5**,4**,**2**) devine x=(2,7,2,4,4,6,5,6,8) 4. Sa se ordoneze descrescator prima jumatate a unui vector si crescator a doua jumatate. (cu 2 metode diferite) 5.Se citesc de la tastatura 2 vectori cu cate n numere reale. Sa se verifice daca ei contin exact aceleasi valori, dar nu neaparat in aceeasi ordine. 6.Se citeste de la tastatura un vector cu n elemente numere reale, reprezentand mediile generale a n elevi. Sa se afiseze urmatoarea statistica: medii peste 9: medii intre 8 si 9: medii intre 7 si 8: 7. Fie un vector cu numere naturale. Ordonati vectorul astfel: pana la valoare maxima crescator si de la valoarea maxima pana la sfarsitul vectorului descrescator. 8.Sa se ordonze descrescator elementele impare ale unui vector de n elemente, din intervalul [p,q]. 9. Se citeste un vector. Un al doilea vector va fi format din numerele pare in ordine crescatoare, iar un al doilea vector va fi format doar din elementele impare ordonate descrescator. 10. Fie un vector cu numere naturale. Verificati daca vectorul contine primele n valori numere naturale (adica 1, 2, 3, … n). 11. Fie un vector cu numere naturale. Ordonati crescator vectorul si afisati-l. Eliminati valorile consecutive egale si afisati-l. 12.Fie un vector cu n numere naturale. Ordonati crescator elementele cu indici pari (poz. pare) si descrescator cele cu indici impari. 13. Se citeste un numar natural n si un vector cu 2*n elememente numere naturale. Construiti n fractii folosind elementele vectorului astfel incat suma fractiilor sa fie maxima si fiecare element sa apara intr-o singura fractie. Exemplu: n=3 si vectorul 3 2 4 7 8 6, fratiile vor fi 8/2 7/3 6/4. 14. Se citesc doi vectori de numere intregi. a) scrieti o functie care verifica daca un vector are elementele in ordine crescatoare. b) folosind functia de mai sus, verificati daca vectorii sunt ordonati crescator si in caz afirmativ aplicati un algoritm de interclasare. 15'. Se da un sir cu n elemente numere intregi si 2 numere p si q. Ordonati cu metode diferite: a) crescator primele p-1 elemente b) descrescator elementele pare cu indici intre [p,q] c) crescator elem. cu indici > q

16. Din fisierul DATE.IN se citesc numere reale reprezentand punctajele obtinute la un concurs de mai multi concurenti. a) afisati vectorul punctajelor b) ordonati descrescator vectorul punctajelor c) afisati numarul de concurenti care au obtinut cel mai mare punctaj d) afisati "media fara extreme" a punctajelor calculata astfel: se ignora valorile extreme: cea mai mica si cea mai mare. (toate aparitiile) e) afisati, pentru fiecare punctaj, numarul de concurenti care au obtinut acel punctaj. f) creati un nou vector care sa contina acele elemente din vector care sunt strict mai mici decat media calculata la punctul d)

17. Din DATE.IN se citesc n numere naturale care se memoreaza intr-un vector a. a) construiti un nou vector (b) cu cmmdc-ul dintre oricare 2 elemente alaturate b) ordonati vectorul a crescator. c) afisati doar acele perechi de elemente alaturate din a, care au paritati diferite. d) afisati doar acele elemente din vectorul a care sunt egale cu media aritmetica a elementelor alaturate e) afisati cifrele comune ale primului si ultimului element. (vector de frecvente) f) afisati cmmdc-ul valorilor din vectorul initial.


 * Altele**

1. Din fisierul date.in se citeste un numar natural n (n<=100) si apoi se citeste un vector v cu n elemente numere naturale cu cel mult 9 cifre. a) Ordonati crescator elementele vectorului dupa suma cifrelor. Daca doua elemente au aceeasi suma a cifrelor, ordonarea se face crescator dupa valoare. b) Creati un vector gata ordonat (s) cu palindroamele din vectorul v c) Inversati elementele din vectorul v d)Afisati perechile de elemente alaturate din vector care contin ambele o cifra data c e) Copiati in vectorul a toate valorile din v care sunt numere prime. f) Ordonati (bublesort) vectorul a. g)Inserati dupa fiecare element din a suma cifrelor lui.

2. In fisierul DATE.IN sunt trecute temperaturile inregistrate intr-o perioada lunga de timp. Numarul temperaturilor trecute nu se cunoaste, (maxim 1000000) dar valorile lor sunt intre -40 si 40 de grade Celsius. a) Afisati temperatura medie b) Afisati temperatura cel mai des intalnita c) Afisati cea mai mare temperatura d) Sa se verifice daca s-a intalnit temperatura x (citita de la tastatura) si sa se afiseze cea mai apropiata temperatura de aceasta.

[|Alte probleme]

[]

3. Cititi n un numar natural nenul si apoi n numere naturale. Se cere sa construiti si afisati un nou vector: a) contine toate numerele din primul vector urmate fiecare de o valoare care reprezinta numarul de divizori ai numarului b) contine numerele prime din primul vector c) contine elementele distincte din primul vector

4. Se citeste un vector cu elemente numere intregi si o valoare k. Inserati dupa elementul de pe pozitia k primele 3 valori din vector.

5. Se citeste un vector cu elemente numere intregi. Inserati inaintea tuturor elementelor care au cate doua cifre, un element egal cu cifra maxima care apare in numere.

6. Se citeste un vector a cu n elemente naturale. Sa se elimine in mod repetat toate perechile de elemente alaturate identice pana cand nu mai exista astfel de perechi. Exemplu: din vectorul 3 7 4 5 5 6 6 4 7 9 8 8 vor ramane doar elementele 3 si 9.

7. Se considera un vector ce contine n numere naturale. Se cere: a) Determinaţi secventele ordonate crescator din vector; b) Determinaţi cea mai lunga secventa ordonata crescator din vector; c) Determinaţi frecvenţa de apariţie a tuturor cifrelor numerelor din şir.


 * Inserari, eliminari**

1. Se citeste un vector cu n numere naturale. a) Sa se insereze pe poz. k, suma cifrelor primului element. b) Sa se insereze pe prima pozitie, numarul de divizori ai ultimului numar din vector. c) Sa se insereze dupa primul numar prim numarul sau de cifre. 2. Sa se elimine dintr-un vector cu n elemente elementul din mijoc, daca n este impar. Daca n este par sa se afiseze un mesaj. 3. Sa se elimine dintr-un vector toate aparitiile elementului maxim. 4. Sa se elimine dintr-un vector toate valorile care au toate cifrele egale. Acestea se vor pune intr-un alt vector. 5. Ionel a pastrat intr-un vector toate notele lui. El spune parintilor toate notele lui mai mari decat 7. Ajutati-l sa le elimine pe celelalte din vector.

6. Sa se insereze dupa fiecare numar par al unui vector dublul acestuia.

7.a)Sa se insereze dupa primul numar par intalnit, jumatatea acestuia b)Sa se elimine ultimul numar impar din vector c)Sa se insereze dupa fiecare numar neprim, numarul sau de divizori.

8. Sa se insereze dupa fiecare numar de minim 3 cifre, suma cifrelor acestuia.

9.Sa se insereze dupa fiecare pereche de numere strict crescatoare, suma lor. Exemplu: 1 2 4 2 2 5 7 9 1 devine 1 2 **3** 4 2 2 5 **7** 7 9 **16** 1

10. a) Se citeste un numar natural n. Sa se converteasca in baza 2 memorand cifrele acestuia intr-un vector. b) Sa se verifice daca 2 numere naturale au numar egal de cifre 0 si numar egal de cifre 1 in descompunerea in baza 2 Ex: n=11 si m= 14 au descompunerile: 1011 si 1110

11. Se citeste un vector cu n elemente. Sa se creeze un alt vector care sa contina palindroamele din vectorul initial.

12. Se citeste un numar natural n. Sa se creeze un vector cu toate cifrele acestuia. Ex. n= 1234327 se va crea vectorul A=(1,2,3,4,3,2,7)

42. Se citeste un vector de numere naturale. Sa se insereze dupa fiecare numar par, dublul lui iar elementele impare sa se elimine. 43. Se da un vector cu n elemente. Eliminati elementele care se repeta. Ex a=(2,3,4,2,6,5,4,5,4) devine a=(2,3,4,6,5)


 * 1. Se da un vector cu n elemente numere naturale**
 * a) Afisati perechile de elemente alaturate care au aceeasi paritate**
 * b) Daca n este par, inserati la mijocul vectorului o valoare egala cu suma tuturor elementelor.**
 * Daca n este impar, stergeti elementul din mijloc**


 * 2.Se da un vector cu n elemente numere naturale**
 * a) Afisati toate perechile de elemente care au acelasi numar de cifre**
 * b) Inserati in vector dupa primul numar par dublul acestuia.**
 * c)Stergeti din vector toate elementele care sunt multipli de 3.**


 * 3.Se da un vector cu n elemente numere naturale**
 * a) Afisati toate perechile de elemente cu proprietatea ca primul are ultima cifra egala cu prima cifra a celui de-al doilea numar din pereche**
 * b) Inserati in vector dupa ultimul numar prim dublul acestuia.**
 * c)Stergeti din vector prima aparitie a minimului.**


 * 4.Se da un vector cu n elemente numere naturale**
 * a) Afisati toate perechile de elemente alaturate cu proprietatea ca un element din pereche este elementul maxim**
 * b) Inserati in vector dupa toate numerele pare, elementul maxim din vector.**
 * c)Stergeti din vector primul numar care nu se divide la 3 sau la 7.**


 * Secvente,subsiruri**

1. Se da un vector cu n elemente numere intregi. a) Sa se afiseze toate secventele strict crescatoare din vector, fiecare secventa pe cate o linie b) Sa se afiseze numarul de elemente din cea mai lunga secventa c) Sa se insereze dupa fiecare secventa, suma acesteia

2. Dintr-un fisier text se citesc numere al caror numar nu se cunoaste. Afisati cea mai mare secventa de numere egale (un element din secventa si lungimea secventei). Daca exista mai multe, afisati cate sunt. Ex. Daca fisierul este 2 3 3 3 4 5 1 1 1 1 1 1 7 se afiseaza 1 6


 * Probleme diverse**

1. Se citesc doua tablouri a si b, cu cate n elemente numere naturale. Sa se construiasca vectorul c, in fiecare din urmatoarele situatii: a) c[i]= max(a[i], b[i]) b) c[i] = numarul de cifre ale lui a[i] + suma cifrelor lui b[i] c) c[i]= numarul de divizori ai lui a[i] + cifra maxima a lui b[i]

2. Se citeste un vector a cu n elemente. Sa se construiasca vectorul b cu n elemente, dupa urmatoarea regula:  b[i]= minimul elementelor a[1],a[2],....a[i] De exemplu, daca a=(6,7,4,2,3,6,7) atunci b=(6,6,4,2,2,2,2)

[]