#584 · Subiectul II · Programare
Ordonarea diagonalei principale prin interschimbări de linii și coloane
✓ Rezolvare explicatăBucurești 2020 · nr. 12
Enunț
În fișierul atestat.in, pe prima linie se află un număr n (2≤n≤20), iar pe următoarele n linii câte n numere naturale de maxim 6 cifre, elementele unui tablou bidimensional.
Se consideră subprogramele:
interschimbL, cu patru parametri: tabloula(cel mult 20×20),n(numărul de linii și de coloane) șik1,k2, numerele de ordine a două linii. Subprogramul interschimbă elementele linieik1cu cele ale linieik2;interschimbC, cu patru parametri:a,nșic1,c2, numerele de ordine a două coloane. Subprogramul interschimbă elementele coloaneic1cu cele ale coloaneic2.
a. Scrieți definiția completă a subprogramului interschimbL.
b. Scrieți definiția completă a subprogramului interschimbC.
c. Scrieți un program care citește n și tabloul din atestat.in și, folosind apeluri utile ale subprogramelor interschimbL și interschimbC, ordonează crescător elementele diagonalei principale prin interschimbarea liniilor și a coloanelor. Tabloul modificat se scrie în atestat.out, fiecare linie pe o linie a fișierului, elementele separate prin spațiu.
Exemple
atestat.in |
atestat.out |
|---|---|
69 1 1 1 1 13 8 3 3 3 34 4 7 4 4 46 6 6 5 6 63 3 3 3 4 32 2 2 2 2 1 |
1 2 2 2 2 23 4 3 3 3 36 6 5 6 6 64 4 4 7 4 43 3 3 3 8 31 1 1 1 1 9 |
Rezolvare
Exersează mai departe