te)
1. Scrie
i programul C sau C++ care construiete în memorie o matrice ptratic cu n linii i n coloane
format numai din valori 0,1 i 2 astfel încât elementele de pe diagonala secundar i cea principal
s fie egale cu 0, elementele situate între diagonalele matricei, în partea superioar i inferioar a
acesteia, s fie egale cu 1, iar restul elementelor din matrice s fie egale cu 2. Valoarea lui n (numr
natural, 2
câte o linie a ecranului, cu spa
ii între elementele fiecrei linii (ca în exemplu).
De exemplu, pentru n=5 se construiete în memorie i se afieaz matricea:
0 1 1 1 0
2 0 1 0 2
2 2 0 2 2
2 0 1 0 2
Răspunsuri la întrebare
Răspuns de
1
#include <stdio.h>
#include <stdlib.h>
int mat[1000][1000];
int main()
{
int n,i,j;
scanf("%d", &n);
for(i = 0; i < n; i++)
for(j = 0; j < n; j++)
{
if(i == j || i + j == n - 1)
mat[i][j] = 0;
else if(i < j && i + j < n-1)
mat[i][j] = 1;
else if(i > j && i + j > n-1)
mat[i][j] = 1;
else mat[i][j] = 2;
}
for(i = 0; i < n; i++)
{
for(j = 0; j < n; j++)
printf("%d ", mat[i][j]);
printf("\n");
}
return 0;
}
Alte întrebări interesante
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
8 ani în urmă
Matematică,
8 ani în urmă
Limba română,
8 ani în urmă
Limba română,
9 ani în urmă
Matematică,
9 ani în urmă
Matematică,
9 ani în urmă
mat[i][j] = 1;
else if(i > j && i + j > n-1)
mat[i][j] = 1;
imi da valoarea 1 la multe valori la care nu ar trb cum ar fi cele de pe diagonale..