Informatică, întrebare adresată de ioanadorobantu5826, 8 ani în urmă

Scrieți un program C/C++ care citește de la tastatură numere naturale: n (n[2,20]), k (k[1,n]) și n∙n


numere din intervalul [0,109], elemente ale unui tablou bidimensional cu n linii și n coloane. Programul


transformă tabloul în memorie, deplasând circular spre dreapta, cu câte o poziție, toate elementele situate pe


linia a k-a, în stânga diagonalei secundare, ca în exemplu. Elementele tabloului obținut sunt afișate pe ecran,


fiecare linie pe câte o linie a ecranului, cu elementele fiecărei linii separate prin câte un spațiu. Exemplu: pentru n=5, k=2 și tabloul


2 3 4 5 6


2 4 6 8 0


7 8 9 0 1


3 5 7 9 1


7 3 8 5 6


se obține tabloul


2 3 4 5 6


6 2 4 8 0


7 8 9 0 1


3 5 7 9 1


7 3 8 5 6.

Răspunsuri la întrebare

Răspuns de axel0
0

#include <iostream>

using namespace std;

int main()

{

  int a[20][20],i,n,j,aux,k;

  cout<<“n=”;cin>>n;

  cout<<“k=”;cin>>k;

  for (i=1;i<=n;i++)

      for(j=1;j<=n;j++)

  {

      cout<<“a[“<<i<<“][“<<j<<“]=”;cin>>a[i][j];

  }

      for(j=1;j<=n/2;j++)

       if(i>j)

      {aux=a[k][j];

      a[k][j]=a[k][n/2+1];

      a[k][n/2+1]=aux;

            }

 for(i=1;i<=n;i++)

 {for(j=1;j<=n;j++)

     cout<<a[i][j]<<”  “;

     cout<<endl;

 }

  return 0;

}

Sper ca te-am ajutat!

Alte întrebări interesante