Hogy jött ez az eredmény ki?
Mátrix
M[3,2](1 értékű)adatelem adatelem hossza (l)2 bájt
2 5 4 6
7 3 1 5
8 9 2 7
loc(x3,2)=1+(2-1)*4*2+(3-1)*2=13.bájt
Nem tudom, milyen programozási nyelvről lehet szó.
A loc előtti rész alapján azt mondom, hogy mondjuk egy T[x,y] tömb indexei 0-tól x-ig, illetve 0-tól y-ig mennek. Az első index adja meg az oszlopokat (x+1 darab oszlop), a második a sorokat (y+1 darab sor).
Az M[3,2] tömbnek így lesz 3+1 oszlopa és 2+1 sora.
A loc-nál valószínű x3 helyett 3 kellene csak. loc(3,2) feltehetőleg ebben a programozási nyelvben visszaadná azt, hogy a tömb számára fenntartott memóriának az elejéhez képest hol van az x=3, y=2 indexű adateleme.
Viszont a képlet nem jó. Akkor lenne ilyen a képlet, ha nem 0-tól, hanem 1-től kezdődne az indexek számozása, bár még ahhoz se jó a képlet. Szóval minden szempontból hibásnak tűnik nekem.
Akkor kellene (2-1) valamint (3-1)-et számolni a szorzónak, ha nem lenne nulladik elem. Akkor viszont nem 4-gyel kellene szorozni, csak 3-mal. (A 2-vel szorzás rendben, az azért van, mert minden elem 2 byte-os).
Ha vannak nulladikok is, akkor ilyen a képlet:
loc(x,y) = 1+y*oszlopok*2+x*2
Ahol "oszlopok" a tömb oszlopainak a száma (beleértve a nulladikat is).
Az elején az "1+" bizonyára azt jelenti, hogy a tömb elején le van rakva 1 byte-ban, hogy hány adatelem van összesen a tömbben, vagy valami hasonló.
Szia.Vektor reprezentációja,és sorfolytonos ábrázolás .
Az lenne a mátrix az a 4 oszop 3 sor amit oda írtam.
Ez tiszta.
Amit írtam, annál többet nem rudok írni. Nem jó a 13 byte.
Kapcsolódó kérdések:
Minden jog fenntartva © 2024, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!