tziuka Posted March 16, 2012 Report Posted March 16, 2012 Salut ! Am o mica, mare problema. Am de realizat un program in limbajul C. Se cere asa: Sa citesc o matrice cu n linii si m coloane, care se dau de la tastatura, iar pe urma sa scriu o functie care sa primeasca tot de la tastatura doua nr intregi care sa reprezinte nr liniilor(de exemplu a si b ) si cu ele sa schimb liniile intre ele ... iar pe urma sa mai fac o functie care sa faca suma pe linii si sa ordoneze crescator matricea dupa suma elementelor pe linii... Eu m-am chinuit de aseara si am reusit sa fac ceva, dar ma pierd cand ajung la functia care schimba liniile intre ele... nu am idee ce algoritm sa folosesc ! ma ajuta careva? va multumesc!!! Quote
BogdanNBV Posted March 16, 2012 Report Posted March 16, 2012 sa schimbe liniile intre ele? explica mai clar, eu am inteles ca ai o matrice de n linii si m coloane si in ea bagi valori, si dupaia sa mai faci o matrice de k linii si q coloane, care le introduci in cadrul unei functii, si din matricea m1[n][m] sa bage in matricea m2[k][q], asta vrei sa zici ? Quote
tziuka Posted March 16, 2012 Author Report Posted March 16, 2012 Nu mai faci alta matrice... doar o afisezi pe aceeasi cu liniile schimbate.. dar liniile sa fie schimbate dupa cum vrei tu in functie de cele 2 numere intregi... ( de exemplu.. vreau sa schimb linia 2 cu linia 3...) si sa se schimbe. sper ca m-ai inteles. Quote
tziuka Posted March 16, 2012 Author Report Posted March 16, 2012 Gecko ms mult deocamdata! asta o sa ma ajute singur...despre cealalta functie imi poti explica ceva?Ar trebui sa fac bublle sort? sau cum as putea? eu is incepator si nu prea am logica de programator inca... Quote
tziuka Posted March 16, 2012 Author Report Posted March 16, 2012 corect! exact asa vreau cu sortarea.. si aporpo de prima functie deja am reusit sa-mi schimbe ... ms mult mult! Quote
tziuka Posted March 16, 2012 Author Report Posted March 16, 2012 aporpo, in porblema mi s-a mai zis ca, ca sa schimb liniile sortate am nevoie de prima functie... Quote
Zamolxis666 Posted March 16, 2012 Report Posted March 16, 2012 (edited) int sumaLinie1 = 0;int sumaLinie2 = 0;int vectorDeSume[n]; //pt ca avem n linii;for(int linie = 0; linie < m; linie++) //parcurgem fiecare linie...{ suma = 0; for(int coloana = 0; coloana < n; coloana++) //...si ii calculam suma.... suma += m[linie][coloana]; vectorDeSume[linie] = suma; //dupa care adaugam suma liniei "i" in vectorDeSume pe pozitia "i"}//sortare matrice cu bubble sortfor(int linie1 = 0; linie1 < (n-1); linie1++) for(int linie2 = (linie1 + 1); linie2 < n; linie2++) if(vectorDeSume[linie1] > vectorDeSume[linie2]) swi(m, linie1, linie2); /*parcurgem fiecare llinie si daca suma liniei "linie1" este mai mare decat suma liniei "linie2" atunci le interchimbam folosind functia pe care ti-a scris-o Gecko */ Edited March 16, 2012 by Zamolxis666 Quote