Нужно было реализовать, код вообще -то не сложен, но тем не менее . Поворот матрицы по часовой стрелке.
#include<iostream> #define n 10 using namespace std; int matr[n][n]; int main() { for(int i=0;i<n;i++) for(int j=0;j<n;j++) cin>>matr[i][j]; int tmp; for(int i=0;i<n/2;i++) { for(int j=i;j<n-1-i;j++) { tmp = matr[i][j]; matr[i][j] = matr[n-j-1][i]; matr[n-j-1][i] = matr[n-i-1][n-j-1]; matr[n-i-1][n-j-1] = matr[j][n-i-1]; matr[j][n-i-1] = tmp; } } }
Поворот против часовой стрелки
#include<iostream> #define n 10 using namespace std; int matr[n][n]; int main() { for(int i=0;i<n;i++) for(int j=0;j<n;j++) cin>>matr[i][j]; int tmp; for(int i=0;i<n/2;i++) { for(int j=i;j<n-1-i;j++) { tmp = matr[i][j]; matr[i][j]=matr[j][n-1-i]; matr[j][n-1-i] = matr[n-1-i][n-1-j]; matr[n-1-i][n-1-j] = matr[n-1-j][i]; matr[n-1-j][i] = tmp; } } }
Респект тебе братуха! Я в одном месте не учел и полночи потерял.
Спасибо)))
если размерность не чентая, поворот в лево неработает)
Спасибо что заметили, нашел ошибочку уже поправил. В следующий раз буду внимательней.
Вам спасибо за код)
Долго пытался выдумать алгоритм, а тут готовое, теперь только разобраться )
А нет этого же на Java?
Я уже голову сломал как это сделать…