Sunteți pe pagina 1din 8

Probleme propuse:

1. Se citeste un vector cu n componente numere intregi. Sa se calculeze media aritmetica a


componentelor vectorului.
2. Se citeste un sir de n numere intregi, n dat. Sa se numere elementele pozitive si pare.
Calculati produsul elementelor negative. Sa se calculeze media aritmetica a elementelor
pozitive din vector.
3. Fie n numere naturale date. Sa se afiseze acelea dintre ele care sunt prime.
4. Sa se afiseze si sa se numere elementele pare de pe pozitiile impare ale unui vector.
5. Fie doi vectori x si y, de marime n. Sa se calculeze:
a) E=(x
1
+y
1
)* (x
2
+y
2
)* ......*(x
n
+y
n
)
b) E=x
1
y
1
+ x
2
y
2
+......+x
n
y
n

c) E=min(x
1
,y
1
)+min(x
2
,y
2
)+ ......min(x
n
,y
n
)
d) E=min(x
1
,y
n
)+min(x
2
,y
n-1
)+ ......min(x
n
,y
1
)
6. Sa se ordoneze crescator / descrescator un vector.
7. Determinarea maximului / minimului unui vector si afisarea pozitiilor pe care apar.
8. Sa se roteasca un vector cu o pozitie la dreapta / stanga (ultimul element devine primul,
respectiv primul element devine ultimul).
9. Rotirea unui vector cu k pozitii la stanga (dreapta).
10. Sa se mute la sfarsitul unui tablou toate elementele nule.
11. Construiti un vector care sa contina primele n numere prime.
12. Sa se puna intr-un vector toate numerele prime pana la n care, inversate, sunt tot prime.
13. Suma si produsul a doua polinoame. Valoarea unui polinom intr-un punct.
14. Sa se verifice daca un vector este ordonat (crescator sau descrescator).
15. Dandu-se un vector neordonat cu n componente diferite, sa se determine elementul cu
numarul de ordine k din tabloul ordonat crescator, fara a se ordona tabloul.
16. Dandu-se un vector neordonat cu n componente diferite, sa se determine pozitia
elementului a[k] in tabloul ordonat crescator, fara a se ordona tabloul.
17. Sa se gaseasca un element k printre elementele unui vector. Daca se gaseste, sa se
afiseze pozitiile pe care apare. Daca nu, sa se dea un mesaj.
18. Sa se verifice daca un vector contine elementele in ordinea pozitiv negativ pozitiv
negativ etc. Se va afisa DA sau NU.
19. Sa se verifice daca un vector contine elementele in ordinea pozitiv negativ pozitiv
pozitiv negativ negativ pozitiv pozitiv pozitiv etc. Se va afisa DA sau NU.
20. Un vector se numeste alternativ daca pentru orice i, a[i]*a[i+1]=0. Scrieti un program
care decide daca un vector este alternativ sau nu.
21. Sa se numere de cate ori se intampla ca intr-un vector, un element sa fie egal cu suma
(produsul, media aritmetica, geometrica) vecinilor sai.
22. Sa se determine media aritmetica a elementelor unui vector, in care elementele egale se
vor lua o singura data.
23. Sa se verifice daca elementele unui sir pot forma o progresie aritmetica (geometrica).
Daca da, sa se afiseze ratia.
24. Sa se inverseze un vector in el insusi.
25.
26. Sa se insereze un element intr-un vector, la pozitia k. Sa se repete operatia de mai multe
ori.
27. Sa se stearga un elementul din pozitia k dintr-un vector.
28. Sa se calculeze cmmdc a n numere naturale.
29. Sa se afiseze cifrele distincte ale unui numar, si frecventa lor de aparitie.
30. Se citeste un vector cu n componente numere intregi. Sa se construiasca vectorul format
din suma (produsul) cifrelor elementelor din primul vector.
31. Fie doi vectori a si b cu m, respectiv n elemente numere reale. Sa se afiseze cate din
componentele vectorului a sunt strict mai mici decat toate componentele vectorului b.
32. Sa se afiseze primele n elemente din sirul lui Fibonacci (F[0]=1, F[1]=1, F[n]=F[n-
1]+F[n-2], n>1).
33. Sa se decida daca elementele unui vector sunt distincte.
34. Sa se afiseze diferenta, intersectia, reuniunea si produsul cartezian a doua multimi de
numere reale.
35. Fie un vector de numere intregi. Sa se determine, daca exista, un numar p care sa fie cel
mai mare element prim din vector. Daca nu exista, atunci p sa fie 0. Daca p este nenul,
sa se imparta toate componentele vectorului la suma cifrelor lui p.
36. Sa se inmulteasca un numar foarte mare cu un numar format dintr-o singura cifra.
37. Suma a doua numere mari.
38. Sa se transforme un numar din baza 10 in baza 2. Generalizare pentru baza b,
2<=b<=16.
39. Sa se elimine zerourile dintr-un vector, fara a schimba ordinea elementelor nenule.
40. Mos Craciun a primit scrisori de la toti copiii cuminti, scrisori pe care le-a numerotat in
ordinea sosirii, incepand de la 1. Plecand la drum, si-a dat seama ca, in graba, a uitat
cateva scrisori. Scoate din sac cate o scrisoare, notand pe o foaie numarul fiecareia.
Stiind ca a primit n scrisori, scrieti un program care le afiseaza pe cele pe care le-a uitat
acasa. Se da numarul de scrisori n si numerele scrisorilor existente in sac. Enumerarea
lor se va termina cu 0
41. Un grup de teroristi ce pregatesc o lovitura de stat isi propun sa ocupe un aeroport
strategic. Ei detin harta zborurilor intre cele n aeroporturi, adica m perechi (i,j) ce indica
faptul ca exista zbor din aeroportul i in aeroportul j. Ei vor ocupa acel aeroport din care
se poate ajunge in fiecare din celelalte aeroporturi, dar in care nu se poate ajunge. Scrieti
un program care gaseste aeroportul care trebuie ocupat
42. Intr-un zoo-magazin sunt n colivii cu papagali, toate inchise. O maimuta jucausa pleaca
de la prima colivie si, din 2 in 2, deschide usile coliviilor. Apoi porneste iar de la prima
colivie si, din 3 in 3, deschide usile inchise si inchide usile deschise. Face acelasi lucru
din 4 in 4, samd..., din k in k (k<n). Scrieti un program care afiseaza coliviile care in
final vor ramane deschise
43. Numerele de la 1 la n sunt asezate pe circumferinta unui unui cerc, astfel incat n ajunge
langa 1. Incepand cu numarul s, se elimina numerele din k in k, dupa fiecare eliminare
cercul strangandu-se. Care va fi numarul ramas?
44. Aceeasi problema, dar numerele nu se elimina, ci se marcheaza, pana cand un numar va
fi marcat de 2 ori. Cate numere au ramas nemarcate ?
45. Sa se determine cea mai lunga secventa de numere crescatoare consecutive intr-un
vector.
46. Sa se determine cel mai lung sir de numere crescatoare dintr-un sir. Numerele nu vor fi
neaparat consecutive, dar se va pastra ordinea lor.
47. Sa se determine cea mai lunga secventa palindromica dintr-un sir. (elemente
consecutive)
48. Se citeste un numar intreg foarte mare(care depaseste orice domeniu), cifra cu cifra. Sa
se verifice daca numarul citit poate reprezenta factorialul vreunui numar natural. Daca
da, sa se afiseze acel numar. Daca nu, sa se dea un mesaj.
Ex: (n!=1*2*3*...*n factorialul lui n)
40320=8!
1307674368000=15!
1=1!
12 Nu este factorialul nici unui numar natural
49. Un alpinist parcurge un munte si masoara cotele de altitudine in diverse puncte prin care
trece. Seara, in popas, vrea sa afle:
a) numarul piscurilor traversate (cotele alaturate piscului sunt strict mai mici decat
acesta)
b) numarul vailor traversate
c) numarul platformelor traversate
d) cea mai mare panta urcata, ca diferenta de altitudine
e) cea ai mare panta coborata, tot ca diferenta de altitudine
Exemplu:
Pentru n=13 si 4,8,6,7,7,3,2,1,3,8,8,8,7 se va afisa :
piscuri 1
vai 2
platforme 2
cea mai lunga panta in urcare 1 3 8
cea mai lunga panta in coborare 7 3 2 1
50. Sa se genereze toate submultimile multimii {1,2,3n}
51. Sa se genereze toate submultimile multimii {a[1],a[2],a[3]a[n]}
52. Fie un sir de n numere naturale. Sa se determine cel mai lung subsir cu proprietatea ca
elementele sunt in ordine crescatoare. Daca exista mai multe astfel de siruri, se va afisa
macar unul. Elementele din subsir nu trebuie sa fie consecutive in sirul dat.
53. Fie un numar de n cifre, citit cifra cu cifra. Sa se elimine k cifre astfel incat numarul
ramas sa fie maxim, fara a schimba ordinea cifrelor ramase.

I. Tablouri cu o dimensiune (vectori)

Introducere, parcurgere, afiare
Parcurgere cu instruciunea for

1) Se citesc 4 numere de maxim 9 cifre. S se afieze pe vertical, specificndu-se i poziia pe care
o ocup n ir. Exemplu: Date de intrare 5 3 7 6 Date de ieire 5 pozitia 1
3 pozitia 2
7 pozitia 3
6 pozitia 4
2) Se d un ir de 10 numere naturale. S se afieze pe dou rnduri, pe primul rnd cele pare i pe
al doilea cele impare. Exemplu: Date de intrare 4 3 2 5 6 8 9 0 1 5 Date de ieire 4 2 6 8 0

3 5 9 1 5
3) Se introduc 10 litere, s se afieze n ordinea invers introducerii. Exemplu: Date de intrare a b r a
c a d a b r Date de ieire r b a d a c a r b a.
4) Un acrostih este o poezie la care, citind nceputul fiecrui vers, se obine un mesaj. S se
introduc un acrostih, vers cu vers, i s se afieze mesajul dat de primele litere. Exemplu: pentru
Vreau s dorm
Rd n somn
Este ca un drog
Acest drag somn
Uitat n pat
Se va afia VREAU
5) Introducei n numere ntr-un vector i un numr d. Afiai acele numere din irul dat care sunt
divizibile cu d. Exemplu: date de intrare n=5 numere: 5 7 10 23 15 d=5 Date de ieire 5 10
15.
6) Robin Hood se afl la un concurs de tras cu arcul. Acolo el trebuie s obin punctajul x doar din
trei sgei(sageata 1+sageata2+sageata3=punctajul x). inta este format din n cercuri
concentrice (unul n altul). Fiecare cerc are un anumit punctaj. S se spun valorile cercurilor n
care trebuie s trag Robin Hood pentru a obine punctajul x. Dac exist mai multe soluii, s se
printeze toate. Dac nu exist soluii, s se printeze imposibil. Date de intrare: pe prima linie n i
x, pe a doua linie valoarea fiecrui cerc. Date de ieire: soluiile sau imposibil. Exemplu:
Intrare:n=3 x=4 valori cercuri 1 2 3 4 Ieire: 1 1 2 (explicaie: 1+1+2=4)
(www.conta
minare.ro)

Utilizarea altor instruciuni de ciclare pentru parcurgerea vectorilor

1) S se afieze elementele unui vector pn la prima valoare nul. Dac nu exist nici un 0, se vor
afia toate numerele i mesajul Nici un element nul. Exemplu: Date de intrare: numar
elemente=5, numere 3 6 8 0 2 3 Date de ieire 3 6 8.
2) Se introduc n numere reprezentnd punctajele obinute la un concurs. S se afieze primele k
punctaje mai mari dect o valoare b, necesar calificrii la o etap superioar. Dac nu sunt
suficieni concureni care s fi obinut punctaj peste b, s se afieze i mesajul Candidati
insuficienti. Exemplu: Date de intrare n=3 punctaje: 45 23 78 k=2 b=50 Date de ieire 78.
3) Se introduc un numr par de numere. S se adune cte dou numere consecutive i s se afieze
sumele obinute. Exemplu: Date de intrare: numar elemente: 6, numere 5 4 3 6 5 5 Date de ieire
9 9 10.
4) Se introduc pe rnd n caractere. S se afieze pe ce poziie apare prima dat caracterul spaiu.
Exemplu: Date de intrare n=10 caractere i n f o c l u b 7 Date de ieire 5.
5) Cpitanul Jack O'Neel se afl pe o nav spaial. Nava are lungimea de n camere i limea de o
camer. El se afl n camera numrul 1. n fiecare camer se afl un dispozitiv de teleportare.
Acest dispozitiv te poate teleporta ntr-o alt camer din cele n. S se spun dac O'Neel poate
ajunge n camera h. Date de intrare: Pe prima linie numrul n i numrul h. Pe a doua linie sunt n
numere, fiecare numr indic n ce camer l transmite pe Jack O'Neel teleportorul din acea
camer. Date de ieire: Dac O'Neel poate ajunge n camera h se va printa "DA" i camerele prin
care a trecut. Dac nu poate ajunge n camera h s se printeze "NU". Obs: Dac O'Neel trece de
dou ori prin aceeai camer, acesta nu mai ncearc s ajung n camera h i se va printa "NU".
Exemple: Date de intrare: n=5 h=4 teleportari: 2 3 4 1 3 Date de ieire:
DA 1 2 3 4 Date de intrare: n=4 h=4 teleportari:1 2 3 4 date de ieire: NU
(www.contaminare.ro)

Sume, produse, contorizri, min, max

1) S se afieze suma valorilor pozitive i suma valorilor negative din n numere date. Exemplu: Date
de intrare n=6 numere 6 9 -8 7 5 3 Date de ieire: S poz= 22 S neg=-16.
2) Se introduc temperaturile msurate n n zile. S se afieze media temperaturilor negative i media
celor pozitive. Exemplu: Date de intrare n=5 temperaturi 23 24 23 25 22 Date de ieire 23.40
3) Din n numere ntregi introduse n calculator doar unul este nul i nu este primul sau ultimul. Afiai
suma numerelor din faa acestui 0 i suma celor de dup el. Exemplu: Date de intrare n=5
numere 4 5 1 0 7 Date de ieire s1=10 s2=7.
4) ntr-un ir de numere ntregi, s se afieze suma elementelor de pe poziiile pare i suma celor de
pe poziii impare. Exemplu: Date de intrare n=6 numere 3 1 5 4 6 7 Date de ieire simp=14
spar=12.
5) Se introduc n calculator i se memoreaz vrstele a n brbai. Afiai ci au vrsta mai mare
dect 50 i mai mic dect 70 de ani. Exemplu: Date de intrare n=4 varste 56 45 76 65 Date de
ieire 2 barbati.
6) La o cur de slbire de k zile se nscriu n persoane, fiecare cu greutatea g(i). tiind c greutatea
ideal este mai mare sau egal cu a i mai mic sau egal cu b, iar persoanele urmeaz
tratamente diferite astfel: cei sub greutate ideal se ngra 1 kg pe zi, cei peste greutatea ideal
slbesc 1 kg pe zi, cei cu greutatea ideal i pstreaz greutatea, aflai a) numrul de persoane
cu greutate ideal la nceputul tratamentului ; b) numrul persoanelor cu greutate ideal dup
cele k zile de tratament. Exemplu: n=10 k=7 a=40 b=50 i 38 41 48 50 54 58 60 42 32 se va
afia a) 4 persoane b) 7 persoane. (InfoStar Aiud 1998 clasa a VI-a)
7) Date n numere naturale, cte sunt prime cu 7? Dar cu 10? Exemplu: Date de intrare n=6 numere
5 7 14 20 12 15 Date de ieire: prime cu 7: 4 nr, prime cu 10: 1 nr.
8) Se introduc n numere egale cu 0, 1 sau 2. S se scrie un program care s determine pe ce poziie
apare primul 0, de cte ori apare fiecare cifr i care este cifra folosit cel mai puin. Exemplu:
Date de intrare n=7 numere: 1 1 0 2 1 0 1 Date de ieire: pozitie primul zero 3, cifra 0 apare de
2 ori cifra 1 apare de 4 ori cifra 2 apare de 1 ori, cel mai putin: 2 .
9) Afiai cte numere au forma aaa , din n numere date. Exemplu: Date de intrare n=3 numere
123 222 434 Date de ieire 1 nr.
10) Se introduc nlimile, exprimate n cm, a n copii. Afiai nlimea celui mai nalt i nlimea celui
mai scund copil. Care este diferena de nlime ntre ei? Exemplu: Date de intrare: n=5 inaltimi
120 118 120 115 100 117 Date de ieire imax=120 cm imin=100 cm diferenta=20 cm.
11) Se dau n numere. S se determine cea mai mic valoare i s se afieze de cte ori apare ea n
ir. Exemplu: Date de intrare n=8 numere 6 4 7 5 8 5 9 5 Date de ieire min=5 apare de 3 ori.
12) Se introduc n numere ntregi. Dintre numerele mai mici ca 100, afiai numrul cu valoarea cea
mai mare. Exemplu: Date de intrare: n=4 numere 120 98 34 105 Date de ieire: 98.
13) S se calculeze suma componentelor pozitive, produsul celor negative i numrul componentelor
nule ale unui vector cu n numere reale. Exemplu: Date de intare: n=7 numere 1 0 -4 -3 0 5 -1
Date de ieire: s=6 p=-12 c=2.
14) Un lot de pmnt este mprit n n parcele dreptunghiulare, numerotate de la 1 la n. Se citesc
perechile de numere care reprezint lungimea i limea fiecrei parcele. S se afieze suma ariilor
parcelelor i valoarea celei mai mari suprafee. Exemplu: Date de intrare: n=3, lungime=10
latime=5 lungime=15 latime=10 lungime=12 latime=5 Date de ieire: suma=260 max=150.
15) S se nlocuiasc fiecare element dintr-un ir numeric cu media aritmetic a celorlalte n-1
elemente ale sale. Exemplu: Date de intrare: n=3 numere 1 2 3 Date de ieire: 2.5 2 1.5
16) Mo Crciun sosete n mijlocul copiilor oferind fiecrui copil un cadou cu o anumit valoare
(numrul copiilor se citete de la tastatur, precum i valorile cadourilor, n lei). S se spun:
-ct a cheltuit Moul pentru cumprarea cadourilor (n moi, 1 leu=6 moi)
-dac Moul are sau nu un copil preferat, adic dac exist un copil al crui cadou s aib
valoarea mai mare dect suma valorilor cadourilor tuturor celorlali copii. Dac exist, afiai DA,
urmat de indicele copilului, n caz contrar afiai NU. Exemplu: dac n=5 valori cadouri: 10 50
6 5 20, se va afia: Mosul a cheltuit 546 mosi DA 2
(InfoStar, Aiud 1995 clasa a VI-a)
17) Un pitic vrea s urce o scar care are n trepte de nlimi date, ordonate cresctor. nlimile
treptelor sunt n cm i sunt valori ntregi. Acolo unde diferena ntre dou trepte consecutive este
de 1 cm piticul urc fr dificulti, unde diferena este mai mare dect 1 cm piticul trebuie s ia o
pastil care i d putere s sar pe treapta urmtoare. Cunoscnd nlimile treptelor, prima fiind
obligatoriu 0, piticul vrea s afle care este numrul minim de pastile de care are nevoie pentru a
urca scara i de asemenea care este cea mai mare diferen dintre dou trepte consecutive.
Exemplu: pentru n=9 i nlimile treptelor 0 3 4 6 7 10 19 20 21, se va afia: numar minim de
pastile =4 diferenta maxima=9 (InfoStar, Aiud 1996 clasa a VI-a)
18) Copiii dintr-o clas merg la cules de portocale. Se citete de la tastatur numrul de copii din
clas i cte portocale a cules fiecare copil. tiind c cel care spune c a cules cele mai multe
portocale i cel care spune c a cules cele mai puine portocale mint, s se spun cte portocale
au cules mpreun toi copiii din clas care spun adevrul. Exemplu: date de intrare : 5 (nr. de
copii din clas) 69 25 14 329 54 date de ieire: 148.
1) Se citesc de la tastatur n numere naturale. S se spun cte din ele sunt cu 3 cifre.
2) ntr-o clas sunt x copii. Acetia merg ntr-o pia n care sunt n vnztori de mere. Se citete de
la tastatur numrul de mere ale fiecrui vnztor. Copiii vor cumpra mere doar de la vnztorii
care au cel puin 3 mere pentru fiecare copil. Ci vnztori ndeplinesc aceast condiie?
Exemplu: Date de intrare: x=25 (numrul de copii) n=5 (numrul de vnztori) 280 456 78 50
75 Date de ieire: 4 (vnztori) (P.N.C. Bucureti, Cupa Mrior 2005.)
3) Se consider n mulimi. Fiecare mulime conine numai numere consecutive. Pentru a da aceste
mulimi este suficient s dm primul i ultimul element. Scriei un program care s determine
elementele interseciei celor n mulimi. Date de intrare: De la tastatur se citete numrul n. Apoi
perechi de numere, cte una pe un rnd, separate prin cte un spaiu, care reprezint cel mai
mic, respectiv cel mai mare element din fiecare mulime. Date de ieire: Pe ecran se va afia pe
prima linie elementele interseciei cu cte un spaiu ntre ele. Restricii i precizri: 0 < n < 31
Elementele mulimilor sunt numere naturale < 41.
Exemplu: date de intrare: n=3 perechi: 5 10 2 9 4 11 Date de ieire: 5 6 7 8 9.
Ordonarea elementelor unui vector

1) Se dau n numere reale. S se afieze n ordine cresctoare. Exemplu:Date de intrare: n=4
numere:7 -3 9.8 0 Date de ieire 3 0 7 9.8
2) Se d un vector cu n componente ntregi. Se cere s se afieze primele k componente n ordine
cresctoare iar celelalte n ordine descresctoare. Exemplu: n=7 k=3 irul 23 12 18 4 0 23 5 se
va afia 12 18 23 23 5 4 0
3) N numere naturale introduse de la tastatur s se afieze astfel: numerele pare n ordine
cresctoare i cele impare n ordine descresctoare. Exemplu: pentru n=7 i irul 2 5 3 1 8 5 4 se
va afia 2 1 3 5 4 5 8.
4) Prin ordonarea elementelor unui vector format din n caractere, s se afieze de cte ori apare
fiecare caracter. Exemplu: Date de intrare: n=4 elemente: a 4 g a Date de ieire: a apare de 2 ori
g apare de 1 ori 4 apare de 1 ori.
5) Cunoscnd numele i nlimea a n elevi, n<=100, s se afieze numele acestora n ordinea
descresctoare a nlimii. Exemplu: Date de intrare: n=3 nume: Ion inaltime: 120 nume:Ana
inaltime:114 nume: Dan inaltime 130 Date de ieire: Dan Ion Ana
6) La un concurs particip n sportivi. Se cunosc rezultatele fiecrui sportiv. S se afieze cele mai
bune trei rezultate, n ordine descresctoare a performanei. Exemplu: pentru n=5 i rezultatele
156 187 23 97 86 se va afia 187 156 97.
7) Se cunosc punctajele obinute de cei n elevi participani la un concurs de informatic. tiind c doi
elevi primesc acelai premiu numai dac au punctaje egale, s se determine ci elevi primesc
Premiul I, ci Premiul II i ci Premiul III. Cerin: Scriei un program care citete de la tastatur
numrul concurenilor precum i punctajele acestora, luate din borderoul de corectare, i
determin i afieaz pe ecran pe cte o linie numrul de elevi pentru fiecare din cele trei premii.
Restricii: numrul n al elevilor nu depete 300 iar punctajul fiecruia este un numr natural cel
mult egal cu 100. Exemplu: Pentru n=10 si punctajele: 58 79 34 12 58 40 79 58 30 58 se vor
afia numerele: 2 4 1 ceea ce nseamn c 2 elevi primesc Premiul I (cei care au obinut 79
puncte), 4 elevi obin Premiul II (cei cu 58 puncte) i un elev (cel cu 40 puncte) primete Premiul
III.
8) Se introduc n numere de cte una sau dou cifre. S se afieze aceste numere n ordinea
cresctoare a primei lor cifre. Exemplu: pentru n=5 i numerele 34 2 5 62 25 se va afia 2 25
34 5 62 sau 25 2 34 5 62.
Deplasarea elementelor unui vector

1) S se insereze cifra 0 pe prima poziie a unui vector dat, fr a utiliza un alt vector. Exemplu:
Date de intrare: n=4 numere: 5 3 7 8 Date de ieire: 0 5 3 7 8.
2) Se introduc n numere n calculator. S se rearanjeze elementele din ir astfel nct primul element
al irului dat s apar pe ultima poziie. Exemplu: Date de intrare: n=3 numere: 1 2 3 Date de
ieire: 2 3 1.
3) Se introduc n numere n ordine cresctoare i un numr k. S se insereze acest numr n irul dat
astfel nct s rmn sortat cresctor. Exemplu: Date de intrare: n=4 k=100 numere: 90 95 110
120 Date de ieire: 90 95 100 110 120.
4) Definim operaia de compactare a unui tablou ca fiind eliminarea zerourilor. Dac ntlnim un
element nul toate elementele situate la dreapta sa vor veni cu o poziie mai in fa, n locul su.
Se d un tablou cu n elemente intregi. Compactai-l. Exemplu: Date de intrare: n=4 numere: 9 0
0 5 Date de ieire: 9 5.
5) S se aeze toate elementele egale cu o valoare v dintr-un ir de n numere date, la sfritul
irului. Exemplu: Date de intrare: n=4 v=5 numere: 5 6 5 3 Date de ieire: 6 3 5 5.
6) Se introduc n calculator dou tablouri de dimensiunem, respectiv n, i un numr k, k<=m. S se
intercaleze n primul tablou, dup poziia k, tabloul al doilea.
Verificarea unor proprieti

1) Se introduc dou iruri de numere cu acelai numr de elemente. S se verifice dac valorile lor,
n ordinea dat, sunt proporionale. Exemplu: Date de intrare: n=3 sir1: 1 2 3 sir2: 3 6 9 Date de
ieire: Da.
2) S se verifice dac un vector dat este monoton cresctor.
3) S se caute un numr x printre n numere ntregi generate de calculator avnd valori ntre 0 i
100. Dac se gsete valoarea respectiv s se afieze ultima poziie n care apare, dac nu se
gsete, s se afieze mesajul numar inexistent
4) Un tren este format din n vagoane de clasa I-a i a II-a. eful de tren nu vrea s fie mai mult de k
vagoane de aceeai clas unul dup altul. Introducndu-se o aranjare a vagoanelor, s se testeze
dac exist mai mult de k vagoane de acelai fel consecutive. Se va afia un mesaj corespunztor.
n caz afirmativ, s se afieze i poziia de nceput a subirurilor cu mai mult de k elemente de
acelai fel. Exemplu: Date de intrare: n=6 k=3 tip vagoane: 1 1 2 2 2 2 Date de ieire: Da, pozitia
de inceput 3.
5) Date dou iruri de numere, a cu n elemente i b cu m elemente, m< n, s se verifice dac b este
subir al lui a. Exemplu: Date de intrare: n=4 elemente a: 1 2 3 4 m=2 elemente b: 2 4 date de
ieire: da.
6) Se d un ir de numere reale. S se verifice dac irul este o progresie aritmetic (diferena dintre
oricare dou numere alturate este aceeai, de exemplu: 1,4,7,10,13)
7) S se verifice dac n numere date formeaz o mulime (elementele sunt distincte), ordonnd
elementele. Exemple: Date de intrare: n=4 numere: 4 6 2 6 Date de ieire: Nu ; Date de intrare:
n=3 numere: 3 5 2 Date de ieire: Da.
8) S se verifice dac doi vectori cu aceeai lungime au aceleai elemente, ordonnd ambii vectori n
prealabil. Exemple: Date de intrare: n=3 primul vector: 4 2 6 al doilea vector: 6 2 4 Date de
ieire: Da; Date de intrare: n=2 primul vector: 4 2 al doilea vector: 3 4 Date de ieire: Nu.

Construirea unor vectori

1) Ciurul lui Eratostene: S se formeze un vector care s conin elementele prime mai mici dect un
numr dat n, n<1000, utiliznd procedeul de excludere prezentat n manualul de matematic
(excluderea se va face prin inlocuirea elementului cu 0 i nu se vor afia elementele nule).
2) ntr-o nchisoare cu n celule se afl, la un moment dat, n deinui. Se ia hotrrea s fie eliberai
anumii deinui, alegerea lor fcndu-se ntr-un mod special. n nchisoarea aceea erau tot n
gardieni. Procedeul de determinare a deinuilor ce vor fi eliberai este urmtorul: gardianul k
pleac de la celula k i mergnd din k n k celule, schimb starea uilor pe la care
trece,1<=k<=n. n final anumite celule vor rmne deschise, deinuii respectivi fiind eliberai.
Putei afla care? Iniial toate uile sunt nchise. Exemplu: n=50 vor fi eliberati cei din celulele 1 4
9 16 25 36 49.
3) S se formeze vectorul primelor n elemente ale irului lui Fibonacci: 0, 1, 1, 2, 3, 5, 8, 13,21,....
(f[1]=0, f[2]=1, f[i]=f[i-1]+f[i-2]).
4) Se introduc n numere ntregi. Elementele diferite s se memoreze ntr-un alt vector. S se afieze
acest nou vector. Exemplu: Date de intrare: n=4 numere: 1 2 2 1 Date de ieire: 1 2.
5) S se formeze i s se afieze vectorul care s conin elementele nenule dintr-un vector dat.
6) S se extrag dintr-un vector elementele care au ultima cifr egal cu k i s se formeze cu ele un
alt vector. S se afieze cei doi vectori. Exemplu: Date de intrare: n=3 k=7 numere: 17 23 47
Date de ieire: 17 47.
7) Se dau n numere ntregi. Folosind un alt vector, s se aeze numerele pare la nceput. Exemplu:
Date de intrare: n=4 numere: 3 4 6 5 Date de ieire: 4 6 3 5.
8) Prin contorizare i utilizarea unui vector ajuttor, ntr-un ir de numere date s se grupeze la
nceput numerele deficiente, apoi cele perfecte i la sfrit cele abundente. (Numim numr
deficient cel care este mai mare dect suma divizorilor mai mici ca el, numr perfect cel care este
egal cu acest sum i abundent numrul mai mic dect aceast sum). Exemplu: Date de
intrare: n=5 numere: 6 12 3 4 10 Date de ieire: 3 4 10 6 12.
9) Dat un numr n, s se memoreze ntr-un vector toate numerele mai mici ca n prime cu n. S se
afieze n ordine descresctoare. Exemplu: Date de intrare: n=10 Date de ieire: 9 7 3.
10) Se citete un numr natural cu cifre nenule. S se determine cel mai mic i cel mai mare numr
format din cifrele acestui numr. Exemplu: Date de intrare: n=26341 Date de ieire: min=12346
max=64321.
11) S se insereze ntre oricare dou elemente alturate ale unui ir numeric dat media lor aritmetic.
Exemplu: date de intrare: n=3 numere: 2 4 5 Date de ieire: 2 3 4 4.5 5.
12) Se d irul 1,2,2,3,3,3,4,4,4,4,5,... . Dat un numr k, s se afieze elementul de pe poziia k.

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