Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Größe von "Array of Array of integer" ermitteln (https://www.delphipraxis.net/155952-groesse-von-array-array-integer-ermitteln.html)

funky 14. Nov 2010 19:04

Delphi-Version: 2010

Größe von "Array of Array of integer" ermitteln
 
Hi,

Mein nächstes Problem ist, dass ich ein "array of array of integer" habe und nun versuche die Länge des Arrays auszulesen.
Beispiel:

Code:
Felder: array of array of integer;
wenn ich jetzt das hier mache:

Delphi-Quellcode:
procedure TForm1.Button2Click(Sender: TObject);
var text:string;
begin
text:= IntToStr(Length(Felder));
ShowMessage(text);
end;
bekomme ich nur die eine Seite des Arrays raus.

Also z.B. nur diese Stelle des Arrays:
Felder[ausgelesen,fehlt]

Ich brauche aber beide Stellen des Arrays. Wie mache ich das nun?

mkinzler 14. Nov 2010 19:06

AW: Größe von "Array of Array of integer" ermitteln
 
Was meint du mit einet Seite?

BTW: Verwende bitte für Delphi-Code den Delphi-Tag

funky 14. Nov 2010 19:10

AW: Größe von "Array of Array of integer" ermitteln
 
Also

Ich habe ein zwei dimensionales Array "Felder[x,y]"
Und ich will die max.Werte aus x und y auslesen bekomme aber nur x raus und y fehlt mir.

mkinzler 14. Nov 2010 19:14

AW: Größe von "Array of Array of integer" ermitteln
 
Eigentlich sollte dir die gesammte Größe zurückgeliefert werden

Assarbad 14. Nov 2010 19:16

AW: Größe von "Array of Array of integer" ermitteln
 
Zitat:

Zitat von funky (Beitrag 1061480)
Und ich will die max.Werte aus x und y auslesen bekomme aber nur x raus und y fehlt mir.

Das geht prinzipiell nicht, es sei denn diese Daten werden mitgeliefert oder mitgespeichert.

Es ist beispielsweise nicht ohne weiteres ersichtlich ob das Array korrekt per a[x][y] oder per a[y][x] angesprochen werden würde. Entsprechend ist eine Aussage über das was du willst ohne die genannten Rahmenbedingungen nicht machbar.

funky 14. Nov 2010 19:26

AW: Größe von "Array of Array of integer" ermitteln
 
Also

Das Array wird so "gefüllt":

Zitat:

AssignFile(Datei, 'Level1.txt');
Reset(Datei);

Read(Datei, Text);
Länge := Text;

Read(Datei, Text);
Breite := Text;

SetLength(Felder, Länge, Breite);

Danach wird in jedem "Feld" etwas gespeichert.
Z.B. nur mit lauter einsen und zweien

Ich will jetzt das Array "Felder" überprüfen ob das Array komplett mit zweien gefüllt.
Wenn ja mache xxxxx...

mkinzler 14. Nov 2010 19:29

AW: Größe von "Array of Array of integer" ermitteln
 
Wie Olli geschrieben hat, müsstest du dir Länge und Breite irgendwo merken.

Bummi 14. Nov 2010 19:30

AW: Größe von "Array of Array of integer" ermitteln
 
Delphi-Quellcode:
procedure TForm1.FormClick(Sender: TObject);
type
TFelder= array of array of integer;
var
  f:TFelder;
  i, sum:Integer;
begin
  SetLength(f,100,100);
  SetLength(f[10],1);
  sum := 0;
  for I := low(f) to High(f) do
     sum := sum + High(f[i]) +  1;
  Caption := intToStr(sum);
end;

funky 14. Nov 2010 19:35

AW: Größe von "Array of Array of integer" ermitteln
 
Ich brauche die Länge und Breite aber nicht in der Prozedur wo sie übergeben wird sondern in einer externen, wo das Array überprüft wird.
Muss ich das mit einer public-variable machen oder geht das auch anders?

Fussball-Robby 14. Nov 2010 20:44

AW: Größe von "Array of Array of integer" ermitteln
 
Delphi-Quellcode:
  X := Length(Felder);
  Y := Length(Felder[0]);
Das funktioniert, wenn das Feld quadratisch ist, da alle Spalten so lang sind wie die 0te Spalte. Hoffe, das war gemeint.

Viele Grüße


Alle Zeitangaben in WEZ +1. Es ist jetzt 13:45 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz