Advertisement
KvArt

Transponovanje matrice

Jul 12th, 2022
664
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C 0.97 KB | None | 0 0
  1. /*• Rešenje – uz izmenu originalne matrice
  2. – zadata matrica ne mora biti kvadratna
  3. – mora se alocirati prostor kao za kvadratnu matricu cija je dimenzija jednaka
  4. vecoj dimenziji zadate matrice*/
  5.  
  6. #include <stdio.h>
  7. #include <stdlib.h>
  8. void main () {
  9. int **a, dim, m, n, i, j, t;
  10. /* Citanje dimenzija matrice: */
  11. printf ("\nBroj vrsta i kolona? ");
  12. scanf ("%d%d", &m, &n);
  13. while (m>0 && n>0) {
  14. dim = (m > n) ? m : n;
  15. a = malloc (dim*sizeof(int*));
  16. for (i=0; i<dim; i++) {
  17. a[i] = malloc (dim*sizeof(int));
  18. if (i<m) {
  19. printf ("%2d. vrsta? ", i+1);
  20. for (j=0; j<n; j++) scanf ("%d", &a[i][j]);
  21. }
  22. }
  23. /* Obrazovanje transponovane matrice: */
  24. for (i=1; i<dim; i++)
  25. for (j=0; j<i; j++) {
  26. t = a[i][j]; a[i][j] = a[j][i]; a[j][i] = t;
  27. }
  28. printf ("\nTransponovana matrica:\n");
  29. for (i=0; i<n; i++)
  30. { for (j=0; j<m; j++) printf ("%5d", a[i][j]); printf ("\n"); }
  31. for (i=0; i<dim; i++) free (a[i]); free (a);
  32. printf ("\nBroj vrsta i kolona? "); scanf ("%d%d", &m, &n);
  33. }
  34. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement