Documente Academic
Documente Profesional
Documente Cultură
Iuytrthluthghgy
Iuytrthluthghgy
și Tehnologii Informaționale
Catedra Informatică
Grupa: P-1811
Nota: ______________
2019
Tema: Metode de sortare
Subcompetențe:
I. Enunțul problemei:
Se consideră tabloul unidimensional A[n] cu elemente numere naturale din intervalul [1,40]. Să
se compună un program care va transcrie la începutul tabloului B[n] în ordine crescătoare elementele
lui mai mici ca 20, apoi, în continuare, pe celelalte elemente în ordine descrescătoare. Se va aplica
metoda distribuirii. Tabloul modificat se va afișa pe ecran.
De exemplu, având A = (27, 28, 7, 6, 10, 34, 20, 5), se va obține B = (5, 6, 7, 10, 34, 28, 27, 20).
2) Apoi, am organizat citirea elementelor tabolului inițial A, folosind instrucțiunea repetitivă for:
cout<<"A["<<i<<"]=";
}
4) Parcurgem tabloul A cu ajutorul unei instrucțiuni repetitive for, care se va repeta de n ori, adică
vom parcurge toate elementele vectorului, și vom număra numerele de apariție a elementelor A[i] în
tabloul A, și vom scrie aceste numere în tabloul suplimentar B:
5) Am inițializat variabila z ce ține poziția scrierii în tablou, care se va incrementa după introducerea
fiecărui element, și va rămîne salvată poziția pentru scrierea următorului element. :
6) Transcriem elementele din nou în tabloul A, și le sortăm pe cele de la 1 la 20, crescător, adică
domeniul de valori va fi [1,20], folosind un ciclu dublu for:
7) Transcriem elementele din nou în tabloul A, și le sortăm pe cele de la 20 la 40, descrescător, adică
domeniul de valori va fi [20,40], folosind un ciclu dublu for:
}
8) Afișez rezultatul, adică tabloul A modificat, folosind instrucțiunea repetitivă for și cout:
cin>>n; // introducem valoarea variabilei n, care este numarul elementelor vectorului initial
cout<<"A["<<i<<"]=";
int B[41]; // declaram vectorul final B cu 41 de elemente (dimensunea domeniului de valori este 40)
{
B[A[i]]+=1; // la intilnirea B[A[i]] el se incrementeaza
}
IV. Teste:
n A[0] A[1] A[2] A[3] A[4] A[5] A[6] A[7]
Test 1 4 19 4 35 37 - - - -
Test 2 5 24 6 32 12 8 - - -
Test 3 8 18 13 8 22 27 33 25 22
VII. Bibliografie/Webografie:
1. http://software.ucv.ro/~mburicea/lab7ISP.htm
2. http://staff.cs.upt.ro/~cami/sda/sda/l4.html