👤

Problema in C++ pentru incepatori

Se dă o matrice pătratică m cu n linii și n coloane. Să se afișeze elementele de pe linia șerpuită care trece prin paralelele la diagonala secundară, inclusiv prin aceasta.

Date de intrare
De pe prima linie se citește numărul natural n. De pe următoarele n linii se citesc câte n numere naturale, separate prin câte un spațiu, reprezentând elementele matricei.

Date de ieșire
Programul va afișa elementele de pe linia șerpuită pe un singur rând, separate prin câte un spațiu.

Restricții
1 ≤ n ≤ 50
1 ≤ m[i][j] ≤ 100
liniile și coloanele sunt numerotate de la 1 la n


Răspuns :

#include <iostream>

using namespace std;

int main()

{

int m[49][49];// matricea din care se va citi

int n;// dimensiunea matricii m

int v[100];// vector pentru a stoca linia serpuita

int k = 0;//indexul/nr de elem la care s a ajuns in vectorul v

//citire dimensiunii matricii

cout<<"n = ";

cin>>n;

//citire matrice

for(int i=0;i<n;i++)

{

 for(int j=0;j<n;j++)

 {

  //citirea elementului de pe linia i si coloana j

  cout<<"m[" <<i<<"]["<<j<<"] = ";

  cin>>m[i][j];

  if((j == i+1) || (j == i-1))

  {

   v[k] = m[i][j];

   k++;

  }

 }

}

//afisarea vectorului cu valorile de pe linia serpuita

cout<<"Linia serpuita din matrice: "<<endl;

for(int i=0;i<k;i++)

{

 cout<<v[i]<<" ";

}

cout<<endl;

return 0;

}

Vă mulțumim că ați ales să vizitați platforma noastră dedicată Informatică. Sperăm că informațiile disponibile v-au fost utile. Dacă aveți întrebări suplimentare sau aveți nevoie de sprijin, nu ezitați să ne contactați. Vă așteptăm cu drag și data viitoare! Nu uitați să adăugați site-ul nostru la favorite pentru acces rapid.


Wix Learning: Alte intrebari