Logo Studenta

Matriz de Rotación C

¡Estudia con miles de materiales!

Vista previa del material en texto

Matriz de Rotación 
Este programa rota una matriz cuadrada 90 grados en sentido horario.
#include <iostream>
const int N = 3;
void rotarMatriz(int matriz[N][N]) {
 for (int capa = 0; capa < N / 2; capa++) {
 int limite = N - 1 - capa;
 
 for (int i = capa; i < limite; i++) {
 int temp = matriz[capa][i];
 matriz[capa][i] = matriz[N - 1 - i][capa];
 matriz[N - 1 - i][capa] = matriz[limite][N - 1 - i];
 matriz[limite][N - 1 - i] = matriz[i][limite];
 matriz[i][limite] = temp;
 }
 }
}
void imprimirMatriz(int matriz[N][N]) {
 for (int i = 0; i < N; i++) {
 for (int j = 0; j < N; j++) {
 std::cout << matriz[i][j] << " ";
 }
 std::cout << std::endl;
 }
}
int main() {
 int matriz[N][N] = {{1, 2, 3}, {4, 5, 6}, {7, 8, 9}};
 
 std::cout << "Matriz original:" << std::endl;
 imprimirMatriz(matriz);
 
 rotarMatriz(matriz);
 
 std::cout << "Matriz rotada 90 grados en sentido horario:" << std::endl;
 imprimirMatriz(matriz);
 
 return 0;
}

Continuar navegando