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

Se consideră tabloul bidimensional cu n linii şi n coloane ce conţine numere naturale cu cel mult patru cifre fiecare.

Cerinţa
Scrieţi un program care citeşte numărul natural n şi cele n*n elemente ale tabloului şi apoi afişează elementele chenarului exterior al tabloului, separate prin câte un spaţiu. Chenarul este parcurs în sensul acelor de ceasornic începând din colţul său stânga-sus. Chenarul este format din prima şi ultima linie, prima şi ultima coloană a tabloului.

Date de intrare
Fişierul de intrare chenar.in conţine pe prima linie numărul n, iar pe următoarele n linii câte n numere naturale separate prin spaţii, reprezentând elementele tabloului.

Date de ieşire
Fişierul de ieşire chenar.out va conţine pe prima linie elementele cerute, separate prin câte un spaţiu.

Restricţii şi precizări
2≤n≤23
elementele tabloului sunt mai mici decât 1000

Exemplu
chenar.in

5
1 2 3 4 5
6 7 8 9 1
2 3 4 5 6
7 8 9 1 2
3 4 5 6 7
chenar.out

1 2 3 4 5 1 6 2 7 6 5 4 3 7 2 6
Am nevoie de ajutor repede va rog

Răspunsuri la întrebare

Răspuns de StarBack
3

Salut. Ți-am lăsat mai jos rezolvarea. Baftă!

Răspuns:

#include <iostream>

#include <fstream>

using namespace std;

ifstream in("chenar.in");

ofstream out("chenar.out");

int main()

{

int n;

int m[24][24];

in >> n;

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

{

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

 {

  in >> m[i][j];

 }

}

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

{

 out << m[0][j] << " ";

}

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

{

 out << m[i][n - 1] << " ";

}

for (int j = n - 2; j >= 0; j--)

{

 out << m[n - 1][j] << " ";

}

for (int i = n - 2; i >= 1; i--)

{

 out << m[i][0] << " ";

}

}

Explicație:

După ce am inițializat matricea și am citit-o din fișier, am trecut direct la rezolvarea problemei în sine.

Prima structură parcurge prima linie din matrice, către dreapta.

A doua structură parcurge ultima coloană, în jos, începând cu elementul ce se află pe poziția (1, n - 1) până la poziția ultimului element de pe această coloană (n, n - 1).

A treia structură parcurge ultima linie spre stânga, începând cu elementul ce se află pe poziția (n - 1, n - 2) până la poziția (n - 1, 0).

A patra structură parcurge prima coloană în sus, începând cu elementul ce se află pe poziția (n - 2, 0) până la poziția (1, 0).

Alte întrebări interesante