Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wie erstellt man ein zweidimensionales array und liest darau (https://www.delphipraxis.net/92278-wie-erstellt-man-ein-zweidimensionales-array-und-liest-darau.html)

felix1806 17. Mai 2007 11:04


Wie erstellt man ein zweidimensionales array und liest darau
 
Kann mir jemand kurz erklären wir man ein zweidimesionales array erstellt, das werte von einer funktion, die zinsrechnungen durchführt, speichert, undwie man diese wieder auslesen kann. Um sie auf der Benutzeroberfläche sichtbar zumachen.
Vielan Dank

Real_Thunder 17. Mai 2007 11:12

Re: Wie erstellt man ein zweidimensionales array und liest d
 
Also erstmal noch ein herzlich willkommen in der DP!

In 2d Array erzeugst du mit

Delphi-Quellcode:
var
  aArray : Array Of Array of String
begin
 Setlength(aArray,2) // Damit könnte die erste Diension 2 werte aufnehmen
 Setlength(aArray[0],5) // Damit könnte das erste element der 2. Diension 5 werte aufnehmen.

 aArray[0][[0] := 'Hallo']
 aArray[0][[1] := 'hier']

 label1.caption:=aArray[0][0];
 label2.caption:=aArray[0][1];
Diese Besipiel ist nun für Dynamische Arraylängen gedacht.

Die Access Violation läßt grüßen :)

MrSpock 17. Mai 2007 11:17

Re: Wie erstellt man ein zweidimensionales array und liest d
 
Hallo Felix,

ein zweidimensionales Array kannst du z.B. wie folgt definieren:

Delphi-Quellcode:
var
   my2DimArray : array[0..5, 0..7] of Integer;
   ...
begin
   ...
   for i:= 0 to 5 do
      for j := 0 to 7 do
         ListBox.Add('my2DimArray['+IntToStr(i)+','+IntToStr(j)+']='+IntToStr(my2DimArray[i,j]);
   ...
end.

DP-Maintenance 17. Mai 2007 11:17

DP-Maintenance
 
Dieses Thema wurde von "MrSpock" von "Multimedia" nach "Object-Pascal / Delphi-Language" verschoben.
Ist keine Multimediafrage.

Jelly 17. Mai 2007 11:18

Re: Wie erstellt man ein zweidimensionales array und liest d
 
Im Speicher halten und sichtbar machen sind 2 Paar Schuh, die du schon schön trennen willst. :thumb:

Die Frage ist erstmal, ob deine 2D Matrix eine feste Grösse hat oder nicht. Wenn ja, dann geht das so:

Delphi-Quellcode:
type
  TZinsenArray = array [1..20,1..50] of double ;

var
  Zinsen : TZinsenArray ;
Schreiben und lesen kannst Du einfach indem du direkt auf ein Element der Matrix zugreifst. Lediglich die Indizes müssen innerhalb deiner Grenzen liegen, die Du dir aber selbst definierst (im Bsp. der erste Werte zwischen 1 und 20, der zweite zwischen 1 und 50).

Delphi-Quellcode:
Zinsen[3,2] := 3.14 ;
Bedenke aber den Speicherbedarf. In meinem Beispiel sicherlich kein Problem, aber ich hab immerhin 1000 Werte in meinem Array, und jedes Element ist vom Typ Double und belegt somit 8 Byte Speicher, also insgesamt 8 kB.

Sind die Obergrenzen nicht fest, so kannst Du auch mit dynamischen Arrays arbeiten, oder gar ganz andere Strukturen überlegen. Delphi bietet da noch einige Alternativen: TObjectList, TCollection... Einfach mal suchen.

alzaimar 17. Mai 2007 12:02

Re: Wie erstellt man ein zweidimensionales array und liest d
 
Und dynamische Matrizen kann man so erstellen:
Delphi-Quellcode:
Var
  MyMatrix : Array Of Array Of Integer;

Begin
  SetLength (MyMatrix,10,10); // = Array [0..9,0..9] of Integer
...

felix1806 17. Mai 2007 12:07

Re: Wie erstellt man ein zweidimensionales array und liest d
 
vielen dank!!!!


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:04 Uhr.

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