Sziasztok!
A következő lenne a problémám:
Eléggé kezdő vagyok az adott nyelvben. Szeretnék 2 dimenziós tömböket tömbbe rendezni, de sajnos eddig nem találtam meg a módját.
Lazarussal próbálok olyan programot készíteni, ami 2 oszlopos változó méretű táblázatokat tud kezelni, és az adatokat sorba rendezni.
Odáig jutottam, hogy véletlenszerű adatokkal feltöltök egy 2 dimenziós tömböt, és ezt sorba is tudom rendezni.
A harmadik dimenzióval van a gond.
Két dimenziós tömböt így lehet deklarálni:
x: array of array of integer;
Ezt könnyen át lehet méretezni bármikor:
SetLength(x, 2, 100);
Amit én szeretnék, az VB.NET-ben valahogy így néz ki:
Dim x(20)(2,100) As Integer
OFF:
Azért szeretném ugyanezt megoldani Lazarussal, mert az a tapasztalatom, hogy a tömböket sokkal gyorsabban kezeli. Windowson, VB.NET alatt egy tömb növelése 100 000 alkalommal több mint 20 másodpercet vett igénybe. Ugyanez Linuxon, Lazarusszal, 1 000 000 átméretezéssel kevesebb mint egy másodperc.
- 1340 megtekintés
Hozzászólások
http://en.wikibooks.org/wiki/Pascal_Programming/Arrays
http://pascalprogramming.byethost15.com/lesson10.php#3
--
()=() Ki oda vagyik,
('Y') hol szall a galamb
C . C elszalasztja a
()_() kincset itt alant.
- A hozzászóláshoz be kell jelentkezni
Lehet ez nem jó, de esetleg így?:
type
TTomb2D=array of array of integer;
...
var
x : array of TTomb2D;
...
begin
Setlength(x,100);
Setlength(x[1],2,100);
end.
--
"Az ember sokszor más mint aminek látszik. De ritkán jobb..."
- A hozzászóláshoz be kell jelentkezni
Nagyon köszönöm, én is pont erre jutottam hrgy84 linkjei után. Működik.
Az a legdühítőbb, hogy 2 napja erre keresem a megoldást, elolvastam rengeteg tutorialt, és már elég közel jártam egyszer.
- A hozzászóláshoz be kell jelentkezni