Вариант 14

Дана квадратная матрица:
Осуществить циклический сдвиг элементов матрицы размерности NxN вправо на k элементов таким образом: элементы 1-й строки сдвигаются в последний столбец сверху вниз, из него — в последнюю строку справа налево, из нее — в первый столбец снизу вверх, из него — в первую строку; для остальных элементов — аналогично.

Код программы:

//---------------------------------------------------------------------------
#include<iostream.h>
#include<conio.h>
#include<math.h>
#include<iomanip.h>
#include<windows.h>
#include<fstream.h>
#include <vcl.h>
#pragma hdrstop
#pragma argsused
//---------------------------------------------------------------------------
char *rus(const char *text); //объявление функции для распознавания русских букв
int main(int argc, char* argv[])
 {
  int n,m,i,j;                            //объявление переменных
  cout<<rus("Введите размерность квадратной матрицы n=");cin>>n;
  float **A=new float*[n];               //объявление 1 массива
  for(i=0;i<n;i++)A[i]=new float [n];
  float **A1=new float*[n];              //объявление 2 массива куда временно
  for(i=0;i<n;i++)A1[i]=new float [n];   //будут занесены элементы 1 массива
  cout<<rus("\nВведите элементы массива:")<<endl<<endl;
  randomize();
  for(i=0;i<n;i++)
   {
    for(j=0;j<n;j++)
     {
      A[i][j]=-5.2+random(10.1); //случайное заполнение массива
      A1[i][j]=A[i][j];  //присвоение элементов первого массива второму
      cout<<setw(6)<<A[i][j];   //вывод массива
     }
    cout<<endl; 
   }
  cout<<endl;
  for(i=0;i<n;i++)
   {
    for(j=0;j<n;j++)
    A1[n-1-i][n-1-j]=A[i][n-1-j];      //сдвиг матрицы
   }
  cout<<rus("Сдвинутая матрица:")<<endl<<endl;
  for(i=0;i<n;i++)
   {
    for(j=0;j<n;j++)
     {
      cout<<A1[j][i]<<' ';             //вывод сдвинутой матрицы
     }
    cout<<endl;
   }
  getch();
  return 0;
 }
//---------------------------------------------------------------------------
char bufrus[256];
char *rus(const char *text)
 {
  CharToOem(text, bufrus);
  return bufrus;
 }
//---------------------------------------------------------------------------

Результат работы программы:

Результат работы. Четырнадцатый вариант. Двумерные массивы

Вариант 13
Вариант 15
error: Content is protected !!
Adblock
detector