Дана прямоугольная матрица А. Переместить элементы ее периметра на один элемент по часовой стрелке - C (СИ)
Формулировка задачи:
Дана прямоугольная матрица А. Переместить элементы ее периметра на один элемент по часовой стрелке
Решение задачи: «Дана прямоугольная матрица А. Переместить элементы ее периметра на один элемент по часовой стрелке»
textual
Листинг программы
#define _CRT_SECURE_NO_WARNINGS #include <stdio.h> #include <conio.h> #include <iostream> #define N 3 #define M 4 #define R 1 int main() { setlocale(LC_ALL,"Russian");//чтоб было по русски double A[M][N], r; int m,n; printf ("введите число строк\n"); scanf ("%d", &m); printf("введите число столбцов\n"); scanf ("%d",&n); //Ввод матрицы А printf("\n Введите элементы матрицы А через пробел или Enter\n"); int i, j; //Индексы строк и столбцов // От i нулевого до j макс for (i=0; i<m; i++) for (j=0; j<n; j++) scanf("%lf", &A[i][j]); /*Вывод мтариц на экран*/ printf("\n Матрица А \n"); for (i=0; i<m; i++) {printf("%d строка: ", i+1); for (j=0; j<n; j++) printf("%.1lf ", A[i][j]); printf("\n"); //getch(); } r=A[0][0]; for (int i=0; i<n-1; i++) A[i][0]=A[i+1][0]; for (i=0; i<m-1; i++) A[n-1][i]=A[n-1][i+1]; for (i=n-1; i>0; i--) A[i][m-1]=A[i-1][m-1]; for (i=m-1; i>0; i--) A[0][i]=A[0][i-1]; A[0][0]=r; //вывод }
Объяснение кода листинга программы
- Включаем необходимые заголовочные файлы
- Определяем размерность матрицы А
- Вводим элементы матрицы А с помощью функции scanf
- Выводим матрицу А на экран с помощью цикла for
- Перемещаем элементы периметра на один элемент по часовой стрелке с помощью четырех циклов for
- Выводим измененную матрицу А на экран
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д