Advertisement
NoxScourge

Untitled

Sep 12th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.33 KB | None | 0 0
  1. #include<stdio.h>
  2.  
  3. void rotiraj(int a[], int n) {
  4.  
  5. int i,pom;
  6.  
  7. pom = a[n - 1];
  8.  
  9. for (i = n - 1;i > 0;i--) { //standard za pomeranje u desno
  10.  
  11. a[i] = a[i - 1];
  12. }
  13. a[0] = pom;
  14. }
  15. void main()
  16. {
  17. int i, j, m, x[80], b[20][20];
  18. printf("Unesite dimenziju kvadratne matrice:");
  19. scanf("%d", &m);
  20. printf("Unesite elemente matrice:");
  21. for (i = 0;i<m;i++)
  22. for (j = 0;j<m;j++)
  23. scanf("%d", &b[i][j]);
  24. printf("Matrica pre rotacije:\n");
  25. for (i = 0;i<m;i++)
  26. {
  27. for (j = 0;j<m;j++)
  28. printf("%2d ", b[i][j]);
  29. printf("\n");
  30. }
  31. for (i = 0;i<m - 1;i++) //j petlja nam ne treba radimo sve preko i zbog niza
  32. {
  33. x[i] = b[0][i]; //pozicija prvog
  34. x[m - 1 + i] = b[i][m - 1]; //pozicija poslednjeg u prvoj vrsti
  35. x[2 * m - 2 + i] = b[m - 1][m - 1 - i]; //pozicija poslednje vrste i poslednjeg elementa
  36. x[3 * m - 3 + i] = b[m - 1 - i][0]; //pozicija poslednje vrste i prve kolone
  37. }
  38. rotateRight(x, 4 * m - 4); //pa zarotiramo elemente
  39. printf("Matrica nakon rotacije:\n");
  40. for (i = 0;i<m - 1;i++)
  41. {
  42. b[0][i] = x[i]; //sada ih vracamo u matricu
  43. b[i][m - 1] = x[m - 1 + i];
  44. b[m - 1][m - 1 - i] = x[2 * m - 2 + i];
  45. b[m - 1 - i][0] = x[3 * m - 3 + i];
  46. }
  47. for (i = 0;i<m;i++)
  48. {
  49. for (j = 0;j<m;j++)
  50. printf("%2d ", b[i][j]);
  51. printf("\n");
  52. }
  53. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement