Kétdimenziós tömbök Mátrixok
Mátrixok deklarálása A mátrix egy azonos típusú elemeket tartalmazó tábla. A mátrix összes eleme egy adott soron és egy adott oszlopon helyezkedik el. pl. Az a mátrix, i- edik során és j-edik oszlopán lévő elemet a következőképpen jelöljük: a[i,j] oszlopok 1 2 3 4 6 -8 12 9 5 14 16 22 -7 15 10 a[2,3]=16 2 sor és 3 oszlopban lévő elem sorok
type mat=array[1..25, 1..20] of real; Var a:mat; Var <mátrix azonosító>: array[<sor azonosító>,<oszlop azonosító>] of <elemtípus>; Pl. a: array [1..25, 1..20] of integer; - egy maximum 25 soros és 20 oszlopos mátrix, melynek elemei egész típusúak type mat=array[1..25, 1..20] of real; Var a:mat; var a:array[1..25, 1..20] of real; Ugyanúgy mint a vektoroknál itt is meg kell adni egy étéket a soroknak és az oszlopoknak. Egy m sorszámú és n oszlopszámú a mátrix elemei: a[1,1], a[1,2], …, a[1,n] 1 sor a[2,1], a[2,2], …, a[2,n] 2 sor …………………………. a[m,1], a[m,2], …, a[m,n] m sor
Mátrix feltöltése és kiíratása Legyen egy a mátrix m sorral és n oszloppal: i=1, 2, …., m j=1, 2, …, n Mátrix elemeinek étékadása: Mátrix elemeinek kiíratása: for i:=1 to m do for i:=1 to m do for j:=1 to n do begin begin for j:=1 to n do write(‘a[‘,i,‘ , ’,j,’]=’); write(a[i,j]:4); readln(a[i,j]); writeln; end; end;
Feladatok: Számoljátok ki egy mátrix elemeinek az összegét és szorzatát. Számoljátok ki két négyzetes mátrix elemeinek összegét (ugyanarról a pozícióról) és az eredményt tároljátok el egy másik mátrixba. a11 a12 a21 a22 + b11 b12 b21 b22 = c11 c12 c21 c22 ,ahol c11=a11+b11 c12=a12+b12 c21=a21+b21 c22=a22+b22
3. Írassátok ki egy vektorba egy mátrix elemeinek összegét soronként majd egy másikba oszlopokként. pl. 3+4=7 3 4 8 7 V=(7, 15) 8+7=15 4. Olvassatok be egy m*n- es mátrixot. Írassátok ki a páros sorokban és páratlan oszlopokban lévő pozitív számok összegét. 5. Legyen két mátrix, A és B. Hasonlítsátok össze a két mátrix elemeit , majd egy C mátrixban írassátok ki a két mátrix ugyanazon pozícióról lévő elemek közül a legnagyobbat, majd egy D mátrixba a legkisebbet. 6. Számoljátok ki a tanulók évi átlagát, tudván hogy mindenik tantárgyból milyen átlagot értek el. Legyen m tanuló és n tantárgy.