Informatică, întrebare adresată de BeMi, 9 ani în urmă

Cerinţa
Se dă un număr natural n. Construiţi o matrice pătratică de dimensiune n, în care elementele fiecărui chenar sunt egale cu numărul de ordine al chenarului.

Chenarele sunt numerotate dinspre exterior spre interior, începând cu 1.

Date de intrare
Programul citește de la tastatură numărul n.

Date de ieşire
Programul afișează pe ecran elementele matricei, câte o linie a matricei pe o linie a ecranului, elementele fiecărei linii find separate printr-un spaţiu.

Restricţii şi precizări
1 ≤ n ≤ 50

Răspunsuri la întrebare

Răspuns de express
7
#include <iostream>
using namespace std;
int a[55][55], i, j, n;
int main()
{
    cin >> n;
    for(i = 1; i <= n; i ++)
    {
        for(j = 1; j <= n; j ++)
        if(i + j <= n + 1) if(i > j) a[i][j] = j;
                        else a[i][j] = i;
         else
        {
            if(n - i > n - j) a[i][j] = n - j + 1;
            else a[i][j] = n - i + 1;
        }
    }
    for(i = 1; i <= n; i ++)
    {
        for(j = 1; j <= n; j ++)
            cout << a[i][j] << " ";
        cout << '\n';
    }
    return 0;
}

Alte întrebări interesante