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

Scrieţi un program C/C++ care citeşte de la tastatură un număr natural n (2 construieşte în memorie o matrice cu n linii şi n coloane, numerotate de la 1 la n, ale cărei
elemente primesc valori după cum urmează:
- elementele aflate pe diagonala secundară sunt toate nule;
- elementele de pe coloana i (1≤i≤n), aflate deasupra diagonalei secundare, au valoarea
egală cu i;
- elementele de pe linia n-i+1 (1≤i≤n), aflate sub diagonala secundară, au valoarea egală
cu i.
5.
Programul afişează pe ecran matricea construită, câte o linie a matricei pe
câte o linie a ecranului, elementele fiecărei linii fiind separate prin câte un
spaţiu.
Exemplu: pentru n=4 se va afişa matricea alăturată.
Ma poate ajuta cineva, va rog ??


stassahul: Daca ai afisa si desenul din exemplu, teas fi ajutat, asa nimic nu se intelege din conditii
gabrielanegrea2: 1 2 3 0
1 2 0 3
1 0 2 2
0 1 1 1
nikolasedyotn4xt: dnfyhv nybgv yug vthbh

Răspunsuri la întrebare

Răspuns de ArMyFoRHeLL
4
#include <iostream>

using namespace std;

int main()
{
    int i,j,n;
    cin>>n;
    int mat[n][n];
    for(i=1;i<=n;i++)
        for(j=1;j<=n;j++)
        {
            if(i+j<n+1)
                mat[i][j]=i;
            if(i+j==n+1)
                mat[i][j]=0;
            if(i+j>n+1)
                mat[i][j]=n-i+1;
        }
    for(i=1;i<=n;i++)
    {
        for(j=1;j<=n;j++)
            cout<<mat[i][j]<<" ";
            cout<<endl;
    }
    return 0;
}


Alte întrebări interesante