Дана прямоугольная матрица А. Переместить элементы ее периметра на один элемент по часовой стрелке - 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;
 
    //вывод
 
 
        
 
 
}

Объяснение кода листинга программы

  1. Включаем необходимые заголовочные файлы
  2. Определяем размерность матрицы А
  3. Вводим элементы матрицы А с помощью функции scanf
  4. Выводим матрицу А на экран с помощью цикла for
  5. Перемещаем элементы периметра на один элемент по часовой стрелке с помощью четырех циклов for
  6. Выводим измененную матрицу А на экран

Оцени полезность:

9   голосов , оценка 4.222 из 5
Похожие ответы