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

Scrieţi un program Pascal care citeşte de la tastatură un număr natural n (2≤n≤24) şi
construieşte în memorie o matrice cu n linii şi n coloane ale cărei elemente vor primi valori
după cum urmează:
- elementele aflate pe diagonala principală a matricei vor primi valoarea 0
- elementele de pe prima coloană, cu excepţia celui aflat pe diagonala principală vor primi
valoarea n
- elementele de pe a doua coloană, cu excepţia celui aflat pe diagonala principală vor primi
valoarea n-1
...
- elementele de pe ultima coloană, cu excepţia celui aflat pe diagonala principală vor primi
valoarea 1
Programul va afişa matricea astfel construită pe ecran, câte o linie a matricei
pe câte o linie a ecranului, cu câte un spaţiu între elementele fiecărei linii (ca în
exemplu).
Exemplu: pentru n=4 se va afişa matricea alăturată.
0 3 2 1
4 0 2 1
4 3 0 1
4 3 2 0


AntiEaglesDavids: Te-ar ajuta cu ceva dacă ți l-aș scrie în C++?
AntiEaglesDavids: Nu știu pascal.

Răspunsuri la întrebare

Răspuns de angelicus
1
Program Matrixxx;
  type Matrice=array[1..24, 1..24] of integer;
  var M: Matrice; l, n, i, j: integer;

begin
write ('n='); readln (n);
 
  for i:=1 to n do
      for j:=1 to n do
          if i=j then M[i, j]:=0 else M[i, j]:=n-j+1;
   
   for i:=1 to n do begin
     for j:=1 to n do
      write (M[i, j],' ');
     writeln;
   end;
 
readln;
  end.
Alte întrebări interesante