Sunteți pe pagina 1din 2

Probleme algoritmi de sortare

1. Se dă un vector cu n elemente numere naturale (n≤100). Să se afişeze pe ecran cel mai mare
număr care se poate forma cu prima cifră din fiecare număr al vectorului.
Exemplu: pentru n=5 şi vectorul (456, 5, 80, 63, 85) se va afişa valoarea 88654.

2. Se dă un număr natural cu cel mult nouă cifre. Să se afişeze pe ecran cel mai mare număr ce
se poate forma numai din cifrele pare ale numărul dat şi cel mai mic număr care se poate forma
numai din cifrele impare ale numărului dat. Dacă numărul nu are cifre pare se va afişa mesajul NU
EXISTA CIFRE PARE, iar dacă numărul nu are cifre impare se va afişa mesajul NU EXISTA CIFRE
IMPARE.
Exemplu: dacă numărul dat este 60084 se va afişa valoarea 86400 şi mesajul NU EXISTA CIFRE
IMPARE.

3. Se dă un vector cu n elemente numere reale (n≤100). Să se localizeze elementul minim, apoi


să se ordoneze descrescător elementele aflate înaintea lui şi crescător elementele aflate după el,
afişându-se vectorul astfel prelucrat.
4. Fişierul „numere.in” conţine mai multe numere întregi cu maxim nouă cifre fiecare. Să se
construiască fişierul „prime.out” care să conţină numere prime din fişierul de intrare în ordine
crescătoare. Dacă nu sunt astfel de numere, fişierul de ieşire va conţine media aritmetică a tuturor
valorilor din fişierul de intrare, afişată cu cel mult trei zecimale.
5. Se dă un vector cu n elemente numere naturale (n≤100). Să se afişeze, în ordine crescătoare
după prima cifră, elementele sale. Dacă două numere încep cu aceeaşi cifră, primul afişat va fi cel
mai mic.
Exemplu: pentru n=6 şi vectorul (22, 14, 103, 207, 5, 10) se va afişa vectorul (10, 14, 103, 22, 207, 5).

6. Se dă un vector cu n elemente numere întregi (n≤100). Să se ordoneze crescător doar


valorile pozitive din vector, fără a afecta poziţiile elementelor negative.
Exemplu: pentru n=7 şi vectorul (-2, 8, 3, -5, 6, -1, 2) se va obţine vectorul (-2, 2, 3, -5, 6, -1, 8).

7. Se dă un vector cu n elemente numere întregi (n≤100). Să se verifice dacă elementele


vectorului, altfel aranjate, pot forma o progresie aritmetică. Se va afişa mesajul DA şi raţia progresiei
în caz afirmativ şi NU în caz contrar.
Exemplu: pentru n=5 şi vectorul (18, 3, 23, 8, 13) se va afişa DA 5.

8. Fişierul „sir.txt” conţine, pe prima linie, un număr natural cu cel mult patru cifre n care este
multiplu de 3 şi pe a doua linie n numere întregi. Să se afişeze pe ecran cea mai mare sumă
şi cea mai mică sumă care se poate obţine utilizând o treime din numerele de pe a doua linie
a fişierului.
Exemplu: dacă fişierul are următorul conţinut

78 100 -4 10 -22 16

atunci pe ecran se vor afişa valorile 178 şi -26.

9. Se dau n numere raţionale pozitive reţinute în vectorii a şi b (numărătorul primul număr este
a[1], numitorul său este b[1], numărătorul celui de-al doilea număr este a[2], numitorul său este
b[2], ş.a.m.d.). Afişaţi în ordine descrescătoare cele n numere raţionale.
Exemplu: pentru n=4 şi numerele 3/2 7/2 5/3 4/5 se vor afişa în ordinea 7/2 5/3 3/2 4/5.

10. Şirul de numere 1, 2, 3, 3, 1, 0,… este definit prin următoarea relaţie de recurenţă:
𝑓𝑛 = {𝑛, 𝑑𝑎𝑐ă 𝑛≤3 (𝑓𝑛−1 • 𝑓𝑛−2 + 𝑓𝑛−3)%𝑛, 𝑑𝑎𝑐ă 𝑛 > 3

Să se construiască un vector cu primele n componente ale şirului definit anterior, apoi să se mute la
începutul vectorului elementele pare, afişându-se vectorul astfel modificat.

11. Se dă un vector cu n elemente numere întregi (n≤100). Să se mute la sfârşitul vectorului

elementele pare, păstrând ordinea apariţiei elementelor din vectorul iniţial.


Exemplu: pentru n=7 şi vectorul (23, 6, 8, 9, 4, 5, 11) se va obţine vectorul (23, 9, 5, 11, 6, 8, 4).

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