给定一个 n X n 的矩阵 和 R,求旋转 90 X R 度以后的矩阵
生活随笔
收集整理的這篇文章主要介紹了
给定一个 n X n 的矩阵 和 R,求旋转 90 X R 度以后的矩阵
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
1. 問題
【例題】循環輸入,每組數據先輸入一個 n(n<=10),然后 n 行 n 列數據代表一個矩陣,
每個數據為一個整數,然后再給出一個數字 R,輸出這個矩陣按照順時針旋轉 90 X R 度以后的矩陣。
2. 思路
3. 代碼
const int MAX = 10;int input_matrix(int a, int b, int M[MAX][MAX])
{for (int i = 0; i < a; i++){for (int j = 0; j < b; j++){std::cin >> M[i][j];}}return 0;
}int output_matrix(int a, int b, int M[MAX][MAX])
{for (int i = 0; i < a; i++){for (int j = 0; j < b; j++){std::cout << M[i][j] << " ";}std::cout << std::endl;}return 0;
}int transform_matrix(int n, int m, int A[MAX][MAX])
{int tmp[MAX][MAX];for (int i = 0; i < n; i++){for (int j = 0; j < m; j++){tmp[j][n - 1 - i] = A[i][j];}}for (int i = 0; i < n; i++){for (int j = 0; j < m; j++){A[i][j] = tmp[i][j];}}output_matrix(n, m, A);
}int main()
{int n;std::cout << "input n X n matrix" << std::endl;while (std::cin >> n){int matA[MAX][MAX];input_matrix(n, n, matA);output_matrix(n, n, matA);int R;std::cout << "input R" << std::endl;std::cin >> R;R %= 4;for (int i = 0; i < R; i++){transform_matrix(n, n, matA);}}return 0;
}
原文 https://blog.csdn.net/WhereIsHeroFrom/article/details/118273637
總結
以上是生活随笔為你收集整理的给定一个 n X n 的矩阵 和 R,求旋转 90 X R 度以后的矩阵的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 2022-2028年中国再生金属行业投资
- 下一篇: 2022-2028年中国刀具行业投资分析