10.0. Dvodimenzionalni niz /ARRAY/
Izdvajanje, suma, proizvod i prebrojavanje - riješeni primjeri i zadaci

Višedimenzionalni nizovi
Ako se radi o velikom broju promjenljivih praktično je da se one rasporede po vrstama i kolonama. Tada kažemo da te promjenljive formiraju dvodimenzionalan niz, matricu, odnosno tabelu. Sve promjenljive imaju zajedničko ime, a razlikuju se po mjestu u vrsti i koloni. Npr. A[2,3] znači da je promjenljiva sa imenom a u drugom redu i trećoj koloni.

Brojevi aij su elementi dvodimenzionalnog niza, gdje je i indeks broja vrste, a j indeks broja kolone.
Ako je m<>n – pravougaoni niz
            m=n – kvadratni niz.

Glavna dijagonala
Elementi glavne dijagonale ima iste indekse reda i kolone (i=j), Iznad glavne dijagonale je indeks reda manji od indeksa kolone, a ispod glavne dijagonale je indeks reda veći glavne dijagonale. Elementi a11, a22, ..., ann  čine glavnu dijagonalu.

Sporedna dijagonala
Elementi a1n, a2n-1, ..., an1  čine sporednu dijagonalu. Suma indeksa sporedne dijagonale je veća za 1 od dimenzije kvadratne matrice-dvodimenzionalnog niza (i+j = n+1). Indeksi elemenata matrice iznad  sporedne dijagonale zadovoljavaju nejednačinu i+j > n+1 a elemente ispod sporedne dijagonale zadovoljavaju nejednačinu i+j < n+1.

Slika 1. Glavna dijagonala i=j Slika 2. Sporedna dijagonala i+j = n+1

dijagonalni niz – svi elementi nula osim na glavnoj dijagonali
jedinični niz, E – elementi glavne dijagonale su jedan, a ostali nula
inverzni niz je ako je AB=E

Operacije sa dvodimenzionalnim nizom

množenje niza brojem suma nizova razlika nizova operacije sa nizovima proizvod nizova
K*A=[Kaij], i,j=1,2,…,n
K=-1      -A=-[ai,j]
a[i,j]   b[i,j]    i,j=1,2,…,n
a+b
b-a=b+(-a)
a+b=b+a
a+(b+c)=(a+b)+c
a+0=0+a=a
(k+1)a=ka+1a
k(a+b)=ka+kb
c=ab   a=[ai,j]   b=b[i,j]
cij je jednak zbiru proizvoda elemenata i-te vrste niza a sa odgovarajucim elementima j-te kolone niza b
c=c[i,j]= ai1b1j+ai2b2j+…+ainbnj
ab<>ba
aE=Ea=a
0a=a0=0
a(bc)=(ab)c
kab=(ka)b=a(kb)
(a+b)c=ac+bc
C(a+b)=ca+cb

Deklarisanje članova niza

INTEGER REAL
Var
X:array[1..3,1..5] of Integer;
Var
X:array[1..3,1..5] of Real;

    Index