tablouri unidimensionale exercitii

of 37 /37
45 Tablouri Tablouri unidimensionale Parcurgeri (sume, numărări) 1. Fiind dat un vector de numere întregi, să se determine suma elementelor pozitive din vector. Exemplu. Pentru vectorul se va afişa 30 (=23+2+5). 2. Să se afişeze doar elementele pare dintr-un vector de numere întregi. Exemplu. Pentru vectorul (-2,4,15,3,8,13) se va afişa –2, 4, 8. 3. Scrieţi un program care tipăreşte elementele pare aflate pe poziţii divizibile cu 3 dintr-un vector de numere întregi. Exemplu. Daca vectorul iniţial este (1,2,8,-4,7,9,120,53) se va afişa 8. 4. Să se afişeze elementele pozitive de rang impar dintr-un vector de numere întregi. Exemplu. Pentru vectorul (2,-3,-1,43,3,1,-4,8,12) se va afişa 2,3,12. 5. Se citeşte de la tastatură un vector cu n (1n100) componente de tip întreg. Se cere să se construiască şi să se afişeze un nou vector cu componentele pătrate perfecte din vectorul iniţial. Exemplu. Daca vectorul iniţial este (2,4,8,25,3,66) al doilea vector va fi (4,25). 6. Să se scrie un program care numără elementele pozitive, negative şi respectiv nule dintr-un vector, parcurgându-l o singur dată. Exemplu. În vectorul (-3,4,30,-1,0,-22,0,376) se găsesc 3 numere pozitive, 3 numere negative şi 2 numere nule. 7. Să se determine media aritmetică a elementelor pare dintr-un vector de numere întregi. Exemplu. Pentru vectorul (-2,4,15,3,6,13) se va afişa 2.66. 8. Să se calculeze suma elementelor negative şi de valoare pară dintr-un vector de numere întregi. Exemplu. Suma cerută în cazul vectorului (12,-4,9,7,-5,31,-74,515, -33,-8) este –86.

Author: radpanda

Post on 18-Feb-2016

118 views

Category:

Documents


7 download

Embed Size (px)

DESCRIPTION

exercitii

TRANSCRIPT

1

Tablouri

Tablouri

Tablouri unidimensionale

Parcurgeri (sume, numrri)

1. Fiind dat un vector de numere ntregi, s se determine suma elementelor pozitive din vector.Exemplu. Pentru vectorul se va afia 30 (=23+2+5).

2. S se afieze doar elementele pare dintr-un vector de numere ntregi.

Exemplu. Pentru vectorul (-2,4,15,3,8,13) se va afia 2, 4, 8.

3. Scriei un program care tiprete elementele pare aflate pe poziii divizibile cu 3 dintr-un vector de numere ntregi.

Exemplu. Daca vectorul iniial este (1,2,8,-4,7,9,120,53) se va afia 8.

4. S se afieze elementele pozitive de rang impar dintr-un vector de numere ntregi.

Exemplu. Pentru vectorul (2,-3,-1,43,3,1,-4,8,12) se va afia 2,3,12.

5. Se citete de la tastatur un vector cu n (1(n(100) componente de tip ntreg. Se cere s se construiasc i s se afieze un nou vector cu componentele ptrate perfecte din vectorul iniial.

Exemplu. Daca vectorul iniial este (2,4,8,25,3,66) al doilea vector va fi (4,25).

6. S se scrie un program care numr elementele pozitive, negative i respectiv nule dintr-un vector, parcurgndu-l o singur dat.

Exemplu. n vectorul (-3,4,30,-1,0,-22,0,376) se gsesc 3 numere pozitive, 3 numere negative i 2 numere nule.

7. S se determine media aritmetic a elementelor pare dintr-un vector de numere ntregi.

Exemplu. Pentru vectorul (-2,4,15,3,6,13) se va afia 2.66.8. S se calculeze suma elementelor negative i de valoare par dintr-un vector de numere ntregi.

Exemplu. Suma cerut n cazul vectorului (12,-4,9,7,-5,31,-74,515, -33,-8) este 86.9. Fiind dat un vector v cu n elemente numere ntregi, scriei un program care calculeaz produsul i numrul elementelor negative aflate pe poziii impare n vector.

Exemplu. n cazul vectorului (12,-4,9,7,-5,31,-74,515,-33,-8) avem 3 componente negative pe poziiile impare iar produsul lor este -12210. 10. S se afieze poziia pe care apare primul element pozitiv dintr-un vector citit de la tastatur.

Exemplu. n vectorul (-5,-8,-6,-41,-9,-1,-475,-12,-4) nu exist nici un numr pozitiv, iar n vectorul (-4,9,874,-54) primul numr pozitiv se gsete pe poziia 2.11. Se d un vector v cu n elemente numere ntregi. S se copieze ntr-un alt vector u elementele pozitive ale vectorului iniial.

Exemplu. Dac v=(-5,8,-6,0,-9,1,-475,12,4) atunci u=(8,1,12,4).

12. Se consider un vector A cu m elemente i dou numere reale P, Q. S se scrie un program care copiaz ntr-un vector B toate elementele din A aflate n intervalul (P,Q) n ordinea n care apar ele n vector.

Exemplu. Dac A=(12,-4,9,7,-5,31,-74,515,-33,-8) i P=-10, Q=9 atunci B=(-4,7,-5,-8).

13. Se consider un vector A cu m elemente i dou numere reale P, Q. S se scrie un program care copiaz ntr-un vector B toate elementele din A aflate n intervalul (P,Q) n ordinea invers apariiei lor n vectorul A. Componentele vectorului B vor fi generate direct n aceast ordine!

Exemplu. Dac A=(12,-4,9,7,-5,31,-74,515,-33,-8) i P=-10, Q=9 atunci B=(-8,-5,7,-4).

14. Se d un vector de numere reale. S se determine procentul de numere din vector mai mici (strict) dect MA i procentul de numere din vector mai mari (strict) dect MA, unde am notat cu MA media aritmetic a componentelor din vector.

Exemplu. Dac vectorul este (-2,13,34.75,125,3.5,8,61) atunci media aritmetic este 34.75, numerele mai mici strict dect aceast medie sunt 2, 13, 3.5, 8 (adic 57.14%), iar numerele strict mai mari dect medie sunt 125, 61 (adic 28.57%).

15. Se consider doi vectori cu componente reale. Se citete un numr natural k. S se intercaleze n primul vector, dup poziia k, tabloul al doilea.

Exemplu. Dac x=(1,2,3,4,5,6,7), y=(9,10,11) i k=4 dupa intercalare x=(1,2,3,4,9,10,11,5,6,7).

16. Scriei un program care citete de la tastatur cele n numere reale ce compun vectorul a i apoi cele m numere reale ce constituie componentele vectorului b i afieaz pe ecran cte dintre componentele vectorului a sunt strict mai mici dect toate componentele vectorului b.

Exemplu. Dac a=(4,8,1,9,5,11,3,43,6,20) i b=(9,9,6,9,9,8, 6,9), atunci numrul cutat este 4, deoarece valorile 4,1,5 i 3 sunt mai mici dect toate elementele lui b.

17. S se calculeze i afieze media aritmetic i cea armonic a componentelor unui vector x de numere reale. Prin medie armonic a vectorului x=(x1,x2,,xn) se nelege raportul:

.

Exemplu. Pentru x=(1,8,4,21,3,56,9) media aritmetic este 14.57 iar media armonic este 3.71.18. Scriei cte un program care s realizeze inversarea unui vector:

a) n acelai vector i fr a utiliza un vector suplimentar;

b) ntr-un alt vector.

Exemplu. Dac vectorul iniial este (1,2,3,4) cel final va fi (4,3,2,1).19. Fie v un vector de numere ntregi. S se construiasc un vector w, astfel nct w(i(= numrul de apariii ale lui v(i( n vectorul v.

Exemplu. Pentru v=(1,5,2,1,5,7,2,1,5) se obine w=(3,3,2,3,3,1, 2,3,3).

20. Fiind dat un vector v cu n elemente numere ntregi, s se construiasc ali doi vectori: primul va conine numai elementele pare, iar al doilea numai elementele impare ale vectorului iniial.

Exemplu. Daca vectorul iniial este v=(1,64,2,5,23,9,6,11) se vor obine vectorii (64,2,6) i respectiv (1,5,23,9,11).

21. S se calculeze componentele irului tiind c este media aritmetic a componentelor pozitive de rang mai mic sau egal cu i ale vectorului X, n cazul n care exist componente pozitive, respectiv -1 n caz contrar.Exemplu. Pentru x=(-2,-3,71,43,-3,1,-4,8,12) se obine y=(-1, -1,71,57,57,38.33,38.33,30.75,27)

22. S se verifice dac un vector conine elemente n ordinea: negativ, negativ, pozitiv, negativ, negativ, pozitiv, .

Exemplu. (-1,-2,3,-5,-6,2,-8) are aspectul cerut (-1,2,-3,-4) nu are aspectul dorit.

23. Fie dat un vector . S se modifice vectorul astfel nct n final s avem:

a)

b)

c) .

24. Un tablou a cu elemente n mulimea se numete alternativ dac pentru orice i, . S se scrie un program care s decid dac un astfel de tablou citit de la tastatur este alternativ sau nu.

Exemplu. Vectorul (1,0,0,3,0,0,0,5) este alternativ ns vectorul (1,0,0,3,4,0,0,0,0,0,3) nu este alternativ.

25. Se d numrul natural n>1 i vectorul s se verifice dac numerele date sunt n progresie aritmetic sau geometric i s se dea un mesaj corespunztor.Exemplu. Vectorul (2,4,6,8,10) este n progresie aritmetic iar vectorul (2,10,50,250,1250,6250) este n progresia geometric.26. Fie un vector x de numere ntregi. S se formeze un vector y de numere ntregi, n care y(i( s fie restul mpririi lui x(i( la suma cifrelor lui x(i(. Restul mpririi se va determina folosind:

a) operatorii al limbajului;

b) scderi repetate.

Exemplu. Pentru x=(12,5,123,85,7,33,12,8,26) se va obine y=(0,0,3,7,0,3,0,0,2).

27. S se afieze elementele prime ale unui ir de n numere ntregi citit de la tastatur.

Exemplu. Pentru vectorul (101,10,3301,1021,5,15,7,91,37,29) se va afia 101, 3301, 1021, 5, 7, 37, 29.

28. Memorai n primele n componente ale unui vector x de numere ntregi, primele n numere prime mai mari dect 999, care citite invers, sunt tot numere prime.

Exemplu. Pentru n=5 se obin numerele 1009, 1021, 1031, 1033, 1061.

29. Cte elemente din tabloul x=(x1,x2,,xn) de numere ntregi au exact k divizori proprii.

Exemplu. Pentru vectorul (1,584,165,45,102,65,47,312,125,945) i k=6 se va afia 3 (numerele 584, 165 i 102 au exact 6 divizori proprii).

30. La codificarea unui text scris cu cel mult primele n litere mici ale alfabetului englez, se folosesc cele mai mici n numere naturale care au exact 3 divizori naturali. Pentru litera a se folosete cel mai mic numr cu proprietatea respectiv, pentru b cel mai mic numr diferit de cel folosit pentru a, i aa mai departe.

a) S se afieze, separate prin cte un spaiu, cele n numere folosite la codificare.

b) Pentru un text dat de la tastatur, se cere s se afieze codificarea textului, fiecare caracter fiind nlocuit cu numrul corespunztor i orice dou coduri consecutive vor fi separate printr-un spaiu.

Exemplu. Pentru n=5 i textul abeaab se va afia a) 4, 9, 25, 49, 121; b) 4 9 121 4 4 9.

31. S se calculeze cmmdc(x1,x2,x3,,xn).

Exemplu. cmmdc(2940,882,70,182) este 14.

32. Cte numere perfecte exist n tabloul x=(x1,x2,,xn) de numere ntregi citite de la tastatur. Un numr este perfect dac este egal cu suma divizorilor si mai mici dect el.Exemplu. Pentru vectorul (10,5,6,12,8128,5,0,28) se va afia 3 (deoarece 6, 8128 i 28 sunt numere perfecte).

33. S se afieze valorile ntregi p i q, prime ntre ele astfel nct , numerele ntregi , , dndu-se de la tastatur.

Exemplu. Pentru a=(1,5,3,6,11) i b=(2,4,2,7,4) se obine p=48 i q=7.

34. Cte elemente dintr-un vector de numere ntregi sunt prime cu un numr dat.

Exemplu. Pentru vectorul x=(12,15,254,525,56,125,500,63,48, 912) i numrul 4 se obin 4 numere (15,525,125,63).35. Se d un numr ntreg n. S se determine numerele n1 i n2 obinute din cifrele de ordin impar, respectiv par ale numrului n, n ordinea apariiei lor n numrul n i apoi afieaz suma celor dou numere obinute.

Exemplu. Dac n=32457 se obin numerele 347 i 25 iar suma lor este 372.

36. Cu cte zerouri se termin produsul elementelor , ale unui vector de numere ntregi, fr a calcula produsul.

Exemplu. Pentru vectorul x=(12,15,254,525,56,125,500,105,48, 912) se va afia 10.

37. Scriei un program care elimin toate elementele nule dintr-un vector de numere ntregi.

Exemplu. Dac vectorul iniial este x=(10,0,0,3,0,5,0,9) se va obine x=(10,3,5,9).

38. Se d un vector v cu n elemente numere ntregi. Fr a folosi un vector auxiliar, s se mute la sfritul lui v elementele sale nule, pstrnd ordinea celorlaltor elemente.

Exemplu. Dac iniial v=(2,3,0,9,0,0,8), n final va rezulta v=(2,3,9, 8,0,0,0).

39. Se consider un ir de n numere reale. S se scrie un program care elimin din ir valorile ce se afl n afara intervalului [a,b].Exemplu. Dac vectorul iniial este (2,8,4,6,9,10,3,5,2,10) iar a=3 i b=7 atunci vectorul rezultat va fi (4,6,3,5).

40. S se scrie un program care insereaz ntre oricare dou elemente ale vectorului x de numere reale, media aritmetic a vecinilor si.

Exemplu. Dac iniial x=(2,5,10,3,7) dup prelucrare x=(2,3.5,5, 7.5,10,6.5,3,5,7).

41. Fiind dat un vector cu n numere reale, s se determine valoarea expresiei e n fiecare din cazurile:

a)

Exemplu. Pentru x=(10,2,31,335,12,45,26) => e=461b)

Exemplu. Pentru x=(10,2,31,335,12,45,26) => e=79c)

Exemplu. Pentru x=(10,2,3,5,12,4) => e=14400d)

Exemplu. Pentru x=(10,2,3,5,12,4) => e=360e) e= suma cuburilor componentelor negative din vector;

Exemplu. Pentru x=(10,2,-3,-5,12,45,-26) => e=-17728.

f) e=media aritmetic a componentelor impare din vector.

Exemplu. Pentru x=(10,2,3,5,12,45,26) => e=17.6666.

42. Fie a1,a2,,an, n numere reale. Calculai suma

.

Exemplu. Pentru vectorul a=(45,8,1,98,6) se obine suma s=-7606.

43. Fie doi vectori x i y cu n componente numere ntregi fiecare, s se calculeze expresia e dat prin:

a)

Exemplu. Pentru x=(1,2,3) i y=(4,5,6) se obine e=315.

b)

Exemplu. Pentru x=(1,2,3) i y=(4,5,6) se obine e=32.

c)

Exemplu. Pentru x=(1,10,2,3) i y=(4,5,6,8) se obine e=600.

d)

Exemplu. Pentru x=(1,10,2,3) i y=(4,5,6,8) se obine e=12.

44. S se calculeze raportul

.

Exemplu. Pentru x=(2,7,4,54,2,77,12) => e = 6.9.

45. Dndu-se n numere ntregi s se decid dac exist un numr majoritar n aceast secven. Un numr este majoritar dac numrul su de apariii n vector este mai mare dect n/2.

Exemplu. n vectorul (1,5,3,1,1,1,4) numrul 1 este element majoritar.

46. Fie un ir de n numere reale a1,a2,,an. S se calculeze suma:

.

Exemplu. Pentru vectorul a=(45,8,1,98,6) se obine suma s=75.03333.

47. S se determine numrul de componente din vectorul C=(C1,C2,C3,,Cn) aflate ntre dou limite date a i b i media aritmetic a componentelor aflate n afara intervalului.

Exemplu. Dac C=(2,8,4,6,9,10,3,5,2,10) iar a=3 i b=7 se vor afia valorile 4 i respectiv 6.8333.

48. Se dau doi vectori A, B de lungimi egale cu elemente numere ntregi. S se scrie un program care s calculeze media aritmetic a tuturor elementelor din A pentru care componentele respective din B sunt numere negative.

Exemplu. Dac A=(1,2,3,4,5,6,7) iar B=(2,5,-3,6,-9,-5,10) se obine media 4.6666.

49. Dndu-se un vector X (citit de la tastatur) s se calculeze vectorul Y tiind c

iar este media numerelor pentru .

Exemplu. Pentru x=(1,5,7,2,8,12,3,90,6,22) => y=(3,4.33,4.6, 6.8,6.4,23,23.8,26.6,39.33,14).

50. Fie vectorul cu

.

S se construiasc vectorul tiind c , , unde .

Observaie. Se va citi de la tastatur doar valoarea lui n.

Exermplu. Pentru n=5 se va obine vectorul v=(0.1787513,0.1787764, 0.1787818,0.1787853,0.1787877)

51. Se citesc n numere naturale. Aceste numere se mpart n grupe astfel nct n cadrul fiecrei grupe toate numerele au acelai numr de cifre 1 n reprezentarea n baza 2. Se cere s se afieze mediile aritmetice a numerelor din fiecare grup.

Exemplu. Pentru n=10 i numerele 92,60,47,16,52,45,65,7,8,87 se obin urmtoarele medii aritmetice: 12, 65,29.5,65.66,67.

52. S se calculeze ultima cifr a numrului x[1]+x[2]++x[n], unde x este un vector cu n componente numere naturale citite de la tastatur.

Exemplu. Pentru n=10 i vectorul x=(92,60,47,16,52,43,65,7,8,87) se obine cifra 7.

53. S se calculeze ultima cifr a numrului , unde x este un vector cu n componente numere naturale citite de la tastatur.

Exemplu. Ultima cifr a expresiei este 9.

54. S se scrie un programul pentru calculul coeficienilor de corelaie a dou variabile aleatoare discrete X i X, unde:

X ia valorile: X[1], X[2], , X[n],

Y ia valorile: Y[1], Y[2], , Y[n],

Observaie: Fie RXY coeficientul de corelaie a lui X i Y. El este definit de formula:

unde MX i MY sunt mediile aritmetice a componentelor din X i Y.

Exemplu. Coeficientul de corelaie pentru variabilele aleatoare x=(4,8,9,2,4) i y=(8,7,3,74,9) este RXY=-0.6884783.

55. Din irul de numere 1, 2, 3, , n se elimin pe rnd cte un numr formnd un nou ir. Un numr eliminat este introdus ntr-un al doilea ir, iniial vid, exact n mijlocul acestuia, dac acest lucru este posibil, n caz contrar se adaug la sfritul irului. Se cere:

a) dndu-se ordinea n care se elimin numerele s se afieze irul final construit ca mai sus;

b) dndu-se ordinea numerelor din irul final, s se determine ordinea n care au fost eliminate numerele din irul iniial.

Exemplu. Dac n=7 i numerele sunt eliminate astfel 1,3,7,4,2,6,5 atunci irul final va fi 1,7,2,5,3,4,6 i invers.

56. ntr-o grdin zoologic sunt n colivii cu papagali. O maimu jucu trece prin faa coliviilor i deschide toate uile acestora. Apoi, se ntoarce i nchide uile din dou n dou (ncepnd cu prima colivie). Jocul su se reia mergnd din trei n trei colivii, nchiznd uile deschise i deschizndu-le pe cele nchise. Apoi maimua merge din patru n patru, din cinci n cinci, .a.m.d. n final din n n n colivii, ncepnd de fiecare dat cu prima colivie. S se afieze coliviile rmase deschise.

Exemplu. Pentru un numr de 10 colivii vor rmne deschise coliviile 2,5,10.

57. Se consider n aruncri de zar (generate aleator). Se cere:

a) s se determine de cte ori apare fiecare fa i la a cta aruncare apare prima dat.

b) s se determine toate perechile de forma (Fi,Ki) cu proprietatea c Fi+Ki este un numr par, unde Fi este numrul feei, iar Ki numrul de apariii a feei Fi.

Exemplu. La o rulare a acestui program s-au obinut urmtoarele rezultate (n a fost generat i el aleator): faa 1 de 4704 ori; faa 2 de 4603 ori; faa 3 de 4596 ori; faa 4 de 4717 ori; faa 5 de 4655 ori; faa 6 de 4714 ori. Perechile care ndeplinesc condiia de la punctul b) sunt aadar (5,4655) i (6,4714).

58. Se citesc de la tastatur cele n elemente ale unui ir dat de numere ntregi. S se afieze toate perechile de elemente ale irului (nu neaprat consecutive) cu proprietatea c ambele elemente ale perechii au aceeai sum a cifrelor.

Exemplu. Pentru vectorul (12,9,54,32,222,49,34,6,1,91) se vor afia perechile (9,54) i (222,6).

59. S se afieze toate tripletele de numere cresctoare de pe poziii consecutive din vectorul x de numere reale.

Exemplu. Pentru x=(2,9,41,61,6,24,84,1,21) se vor afia tripletele (2,9,41),(9,41,61) i (6,24,84).

60. Fiind dat un vector de numere ntregi, s se afieze de cte ori gsim dou elemente aflate pe poziii consecutive n vector care s fie egale ntre ele.

Exemplu. Pentru vectorul (1,2,2,3,4,4,4,5,6) se va afia valoarea 3.

61. Fie un vector x de numere ntregi. S se afieze toate tripletele de numere consecutive din x, n care al treilea numr este restul mpririi primului la al doilea.

Exemplu. Pentru vectorul (21,7,15,4,3,1,45,7,3,1) tripletele cerute sunt (15,4,3), (4,3,1), (45,7,3) i (7,3,1).

62. Fie un vector x de numere ntregi. S se afieze toate tripletele de numere consecutive din x, n care al treilea este media aritmetic dintre primul i al doilea.

Exemplu. Pentru vectorul (2,9,3,6,10,3,7,5,6,5) tripletele cerute sunt (9,3,6), (3,7,5) i (7,5,6).

63. Fie un vector x de numere ntregi. S se afieze toate tripletele de numere consecutive din x, n care al treilea este media geometric dintre primul i al doilea.

Exemplu. Pentru vectorul (1,3,2,5,125,25,4,8,33,8,7) singurul triplet este (5,125,25).

64. Fie un vector x de numere ntregi. S se afieze toate perechile de numere consecutive din x, cu proprietatea c al doilea este egal cu suma cifrelor primului numr.

Exemplu. Pentru vectorul (124,7,12,3,4,4) perechile cerute sunt (124,7), (12,3), (4,4).

65. Fie un vector x de numere ntregi. S se afieze toate tripletele de numere consecutive din x, cu proprietatea c ele pot reprezenta laturile unui triunghi.

Exemplu. Singurul triplet din vectorul (12,45,10,5,9,4,51) este (10,5,9).

66. Fie un vector x de numere ntregi. S se afieze toate perechile de numere consecutive din x, cu proprietatea c al doilea reprezint restul mpririi primului numr la suma cifrelor sale.

Exemplu. Pentru vectorul (124,5,12,44,4,9) se afieaz perechile (124,5) i (44,4).

67. Fie un vector x de numere ntregi. S se afieze toate perechile de numere consecutive din x, cu proprietatea c al doilea reprezint numrul de apariii ale cifrei 3 n ptratul primului.

Exemplu. Pentru vectorul (361,2,5,1156,4,0) perechile afiate vor fi (361,2),(1156,4),(4,0).

68. Fie un vector x de numere ntregi. S se afieze toate perechile de numere cu proprietatea c i suma cifrelor lui este mai mic dect suma cifrelor lui .

Exemplu. Pentru vectorul x=(40,76,17,21,55,92,59,33,52,37) se vor afia perechile (92,59) i (52,37).

69. Fie un vector x de numere ntregi. S se afieze toate tripletele de numere consecutive din x, cu proprietatea c ele pot reprezenta laturile unui triunghi dreptunghic.

Exemplu. Tripletul (3,4,5) poate reprezenta laturile unui triunghi dreptunghic.

70. Fie un vector x de numere ntregi. S se afieze toate tripletele de numere consecutive din x, cu proprietatea c al ele pot reprezenta laturile unui triunghi isoscel.

Exemplu. Tripletul (12,20,12) este un triplet care ndeplinete condiiile problemei.

71. Fie un vector x de numere ntregi. S se afieze toate perechile de numere consecutive din x, cu proprietatea c al doilea reprezint ptratul numrului de apariii ale cifrei 1 n primul.

Exemplu. Pentru vectorul (121,4,89,7,0,111,9) se vor afia perechile (121,4), (7,0), (111,9).

72. Fie un vector x de numere reale. S se afieze soluiile tuturor ecuaiilor de gradul II: , unde a, b i c sunt toate tripletele de numere consecutive din x, n care .

Exemplu. Pentru x=(1,-2,1,12,36,5) se va afia 1, -6. (soluiile ecuaiilor x2-2x+1=0 respectiv x2+12x+36=0)

73. Fie un vector x de numere reale. S se afieze soluiile tuturor ecuaiilor de gradul II: , unde a, b i c sunt toate tripletele de numere consecutive din x, n care .

Exemplu. Pentru vectorul x=(41,81,53,60,58,1,81,65,67,53) se vor afia urmtoarele perechi de soluii: (-0.95,-0.02) corespunztoare ecuaiei 60x2+58x+1=0 i (-80.19,-0.81) care corespund ecuaiei x2+81x+65=0.

74. Fie un vector x de numere ntregi. S se afieze soluiile tuturor ecuaiilor de gradul I, ax+b=0, unde a i b sunt toate perechile de numere consecutive din vectorul x, n care b este divizibil cu prin a. Dac un numr este soluia mai multor astfel de ecuaii se va afia o singur dat.

Exemplu. Dac x=(7,3,8,2,140,20,5,28,7,1) se gsesc soluiile 4 i 7.

75. Fie un vector x de numere ntregi. S se formeze un vector y de numere ntregi, n care y(i( s fie reprezentarea n baza 2 a numrului x(i(.

Exemplu. x=(12,8,3,14,6,21) => y=(1100,1000,11,1110,110, 10101).

76. S se scrie un program care verific dac un vector x cu n componente numere ntregi este o permutare a mulimii (1,2,3,,n).

Exemplu. Vectorul (2,6,1,4,3,5) reprezint o permutare a mulimii (1,2,3,4,5,6).

77. Fie x un vector care conine o permutare a elementelor 1,2,...,n. Se definete un al doilea vector xcod astfel: este numrul de valori din mai mici dect . S se scrie un program care pentru un x dat construiete tabloul corespunztor xcod.

Exemplu. Pentru permutarea (5,3,4,1,6,2) vectorul xcod este (0,0,1,0,4,1).

78. De la tastatur se introduce gradul n al unui polinom i coeficienii ntregi ai acestuia. S se afieze rdcinile ntregi distincte ale acestui polinom.

Exemplu. Polinomul x5+x4-29x3-69x2-84x+180 are ca rdcini ntregi pe 1, -5 i 6 (acestea se afl printre divizorii ntregi ai termenului liber).

79. O funcie se poate reprezenta n calculator printr-un vector cu m componente unde . S se verifice dac funcia f, dat prin vectorul F este injectiv.

Exemplu. Funcia corespunztoare vectorului (3,8,2,3,6,9) nu este injectiv (f(1)=f(4)), iar funcia corespunztoare vectorului (1,5,2,8,14) este injectiv.

80. Dndu-se funciile i reprezentate prin vectorii F i G, , s se determine compunerea celor dou funcii date, adic .

Exemplu. Dac m=6, n=7, p=8, f=(1,3,2,4,6,3), g=(2,6,1,4,5,8,7) atunci =(2,1,6,4,8,1).

81. Se d un ir X de numere ntregi. S se determine mediile . Prin s-a notat media numerelor pozitive cuprinse ntre al (i-1)-lea i al i-lea numr negativ din X, dac exist numere pozitive, respectiv 0 n caz contrar.

Exemplu. X=(5,-2,3,9,-6,2,6,9,14,-1,3,-4,-7) => V=(5,6, 7.75,3,0).

82. Determinai valoarea unui polinom ntr-un punct. Coeficienii (reali) ai polinomului precum i punctul n care se calculeaz valoarea polinomului se citesc de la tastatur.

Exemplu. Valoarea polinomului P(x)=x5+2x3+3x+7, memorat folosind vectorul a=(7,3,0,2,0,1) pe punctul x=1.5 este 25.84375.

83. S se transforme un numr din baza 10 n baza 16, cifrele numrului n baza 16 memorndu-se ntr-un vector.

Exemplu. Pentru n=11224 se obine vectorul cu resturile mpririlor (2,11,13,8), deci numrul n baza 16 este 2BD8.

84. S se calculeze , pentru valori mari ale lui n.

Exemplu. =1267650600228229401496703205376 adic 31 de cifre.85. Considernd c cifrele a dou numere sunt memorate n doi vectori x, respectiv y s se calculeze:

a) suma celor dou numere;

b) diferena celor dou numere;

c) produsul celor dou numere.

Exemplu. Numerele 235 i 126 se pot memora astfel: (5,3,2), respectiv (6,2,1). Aceast scriere invers a cifrelor poate uura foarte mult calculele. Se va obine suma 361, diferena 109 (atenie se va scdea cel mai mic numr din cel mai mare) i produsul 29610.

86. S se determine numrul de cifre egale cu cifra c (dat de la tastatur) n cadrul numrului n! cu n0, dat de la tastatur s se genereze ntr-un vector x elementele mulimii . Vectorul x trebuie obinut ordonat cresctor (nu se va sorta ulterior).

Exemplu. Pentru n=20 vectorul este x=(2,3,4,5,6,8,9,10,12,15, 16,18,20).

94. Memornd coeficienii a dou polinoame sub forma a doi vectori se cere s se determine

a) suma celor dou polinoame

b) produsul polinoamelor

Exemplu. Pentru polinoamele P(x)=x3+2x+5 i Q(x)=x3+5x+7 se obine

P(x)+Q(x)=2x3+7x+12 i P(x)*Q(x)=x6+7x4+12x3+10x2+39x+35.

95. Determinai ctul mpririi polinomului prin , folosind schema lui Horner. Reamintim c schema lui Horner const n urmtorul procedeu:

Se pun coeficienii polinomului pe prima linie a unui tabel, urmai de valoarea ;

Se copiaz (coboar) primul coeficient pe linia a doua;

n continuare, linia a doua se completeaz recurent: pentru a obine o nou valoare, se nmulete cu ultima valoare determinat i se adun cu numrul aflat deasupra poziiei curente (pe prima linie).

Ultima valoare obinut este restul mpririi celor dou polinoame, iar valorile anterioare, n ordine, reprezint coeficienii ctului.

Exemplu. Pentru P(x)=2x3-3x2+x-2 i =4 se obine ctul 2x2+5x+21 i restul 82:

2-31-2=4

252182

96. Se citete de la tastatur un numr natural n. Se cere s se descompun n factori primi acest numr folosind doi vectori: unul pentru memorarea factorilor primi, iar al doilea cu exponenii corespunztori acestor factori.

Exemplu. Pentru n=4712 cei doi vectori vor fi p=(2,19,31), e=(3,1,1), ceea ce reprezint urmtoarea descompunere n factori primi: 23*191*311.

97. Se consider irul 1, 2,1, 3,2,1, 4,2,2, 5,4,3,2,1, 6,2,2,3,3,3,.... obinut din irul numerelor naturale prin nlocuirea fiecrui numr natural printr-un grup de numere, dup urmtoarele reguli: numrul prim p este nlocuit prin numerele p, p-1, p-2,..., 3, 2, 1, iar numrul compus k este nlocuit prin k urmat de toi divizorii si proprii, un divizor d repetndu-se de d ori. Dndu-se numrul natural n se cere s se tipreasc primele n numere din irul dat.

Exemplu. Dac n=10 irul generat va fi (1,2,1,3,2,1,4,2,2,5).

98. Pe un traseu circular se gsesc n depozite de morcovi. Se dau distanele dintre dou depozite consecutive (1->2, 2->3, , n-1->n, n->1). Fiecare dintre depozite conine o anumit cantitate de morcovi (posibil zero). Numrul total de morcovi din cele n depozite ajung unui iepura exact ct poat parcurge tot traseul o singur dat. Se consider c pentru parcurgerea unui km iepuraul are nevoie s mnnce un morcov pentru a avea energie suficient. Iepuraul poate mnca orici morcovi. S se determine de la ce depozit i n ce direcie va pleca iepuraul, astfel nct el s poat reveni la locul de plecare.

Exemplu. Pentru n=5, distanele (12,3,61,10,4) i numrul de morcovi din depozite (0,20,40,0,30) se va pleca de la depozitul 3 spre depozitul 2, sau de la depozitul 5 spre depozitul 1.

99. Considerm irul de numere naturale:

1; 1,1; 2,1; 1,2, 1,1; 1,1, 1,2, 2,1; 3,1, 2,2, 1,1;

definit astfel:

primul grup (subir) este format dintr-un singur 1;

plecnd de la ultimul grup cunoscut, urmtorul grup se construiete prin indicarea perechilor de forma (factor de repetiie, numr care se repet) referitoare la coninutul grupului de la care s-a plecat. Astfel, din grupul 1,1,1,2,2,1 se obine 3,1,2,2,1,1 deoarece apar n ordine 3 de 1, 2 de 2 i 1 de 1.

S se genereze primele n componente ale irului definit astfel.

100. Cnd dorim s listm o brour cu mai multe foi ndoite la mijloc ordinea de listare este alta dect de obicei. O astfel de brour are patru pagini pe foaie, cu dou pe fa i dou pe spate. Cnd aezm toate aceste foi n ordine i ndoim teancul n dou, paginile apar n ordinea corect, ca ntr-o carte obinuit. Problema cere s se scrie un program care, citind numrul de pagini ce trebuiesc tiprite, genereaz ordinea de tiprire. Eventualele pagini goale ce trebuie s fie adugate se vor aduga la sfritul crii.

Exemplu. Pentru n=10 paginaia este urmtoarea:

foaia 1: faa: , 1; spatele: 2, ;

foaia 2: faa: 10, 3; spatele: 4, 9

foaia 3: faa: 8, 5, spatele: 6, 7.

101. Un numr de n copii aezai pe un cerc joac urmtorul joc. Pe rnd fiecare din copii spune un numr dup urmtoarea regul:

primul copil spune 1, urmtorii spunnd numrul dinainte +1.

dac unui copil i vine rndul s spun un numr divizibil cu 5, atunci el spune PAS i sensul jocului se schimb, iar dac numrul este divizibil cu 7 sau are ultima cifr 7 sensul jocului se schimb deasemenea.

Exemplu. n=4copilul 1 spune 1

copilul 2 spune 2

copilul 3 spune 3

copilul 4 spune 4

copilul 1 spune PAS se schimb

sensul

copilul 4 spune 6

copilul 3 spune 7 se schimb

sensul

copilul 4 spune 8

copilul 1 spune 9

copilul 2 spune PAS se schimb

sensul

copilul 1 spune 11

copilul 4 spune 12

copilul 3 spune 13

copilul 2 spune 14 se schimb

sensul

copilul 3 spune PAS se schimb

sensul

copilul 2 spune 16

copilul 1 spune 17 se schimb

sensul

copilul 2 spune 18

copilul 3 spune 19

.a.m.d

S se scrie un program, care citete de la tastatur numrul de copii care vor s joace acest joc i numrul de pai ai jocului i afieaz copiii care au spus PAS. Dac un copil spune PAS de mai multe ori, el se va afia o singur dat.

Exemplu. Pentru n=10 (copiii) i numrul de pai np=50 se va afia valoarea 2 (doi copii nu au spus PAS i anume 2 i 8).

102. De la tastatur se citesc cele N elemente ale unui ir de numere. S se scrie un program care interschimb dou secvene de lungimi L1 i L2 care ncep din poziiile p1, respectiv p2. Elementele care nu sunt cuprinse n cele dou secvene pot fi mutate astfel nct interschimbarea s se poat face. Nu se vor folosi vectori auxiliari.

Exemplu. Pentru n=9, irul 1,2,3,4,5,6,7,8,9, P1=2, L1=2, p2=6, L2=3, rezultatul este 1,6,7,8,4,5,2,3,9.

103. Generarea permutrilor. S se scrie un program care genereaz toate permutrile mulimii {1,2,,n} folosind ordinea lexicografic a acestora.

Indicaii. Se pleac de la cea mai mic permutare n sens lexicografic adic (1,2,,n). La un anumit pas, avnd construit permutarea p=(p1,p2,,pn), pentru a determina urmtoarea permutare se determin acel indice i pentru care

pipi+2>>pn.

Urmtoarea permutare se obine prin nlocuirea lui pi cu cel mai mic dintre elementele pi+1, pi+2, , pn care este mai mare dect pi, urmat de inversarea ordinii ultimelor n-i elemente, nct ele s apar n ordine cresctoare. Dac nu exist nici un indice i ca mai sus nseamn c s-a obinut permutarea cea mai mare, {n,n-1,,1} i algoritmul se ncheie.

Exemplu. Pentru n=4 permutrile sunt generate n urmtoarea ordine: (1,2,3,4),(1,2,4,3),(1,3,2,4),(1,3,4,2),(1,4,2,3),(1,4,3,2),(2,1,3,4),(2,1,4,3),(2,3,1,4),(2,3,4,1),(2,4,1,3) etc.

104. Generarea combinrilor. Se cere s se genereze toate cele submulimi de m elemente ale mulimii {1,2,3,,n}, cu proprietatea c oricare dou astfel de submulimi difer prin natura elementelor (nu i prin ordinea lor). Se va folosi generarea n ordine lexicografic a acestor submulimi.

Indicaii. Se vor genera deci toi vectorii v=(v1,v2,,vm) care satisfac relaia

1 X=(1,3,4,5,7,9,11, 20,44,60)168. Se d un ir de numere, scrise ntr-o ordine aleatoare. Ele reprezint rezultatele pariale ale unor operaii de adunare cu numere naturale. Printre numere se gsete i numrul de la care s-a plecat iniial. S se reconstituie exerciiul folosind numerele date.

Exemplu. Dac numerele date sunt: 12, 6, 23 atunci exerciiul este urmtorul: 6+6=12; 12+11=23.

169. Se d un vector cu elemente avnd doar valorile 1, 2, 3. Vectorul se consider ordonat parial: primele k-1 poziii sunt ocupate de elemente egale cu 1, poziiile de la k la l-1 de elemente egale cu 2, poziiile de la l la m-1 de elemente egale cu 3, iar poziiile de la m la n de elemente neordonate (1