Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Sonstige Fragen zu Delphi (https://www.delphipraxis.net/19-sonstige-fragen-zu-delphi/)
-   -   Delphi Array beschreiben wie ein Set? (https://www.delphipraxis.net/69230-array-beschreiben-wie-ein-set.html)

moelski 12. Mai 2006 07:40


Array beschreiben wie ein Set?
 
Moin !

Wahrscheinlich ist die Antwort einfach, aber ich komm nicht drauf :cyclops:

Ich habe ein Array mit sagen wir 10 Elementen. Kann ich das ähnlich beschreiben wie ein Set? Also irgendwie in der Form ... MeinArray := [1,2,3,4,5,6,7,8,9,10] ?
Weil x mal zu schreiben MainArray[x] := Wert ist irgendwie müssig ... :roll:

fkerber 12. Mai 2006 07:41

Re: Array beschreiben wie ein Set?
 
Hi!

Wenn du es wirklich mit 1,2,3,4,5,6,... füllen willst, kannst du das ja mittels einer For-Schleife lösen...


Ciao Frederic

moelski 12. Mai 2006 07:43

Re: Array beschreiben wie ein Set?
 
Moin !

Zitat:

Wenn du es wirklich mit 1,2,3,4,5,6,... füllen willst,
Ja nö ja ne ... Das hätt ich hinbekommen :wink:

Meine Werte können veriieren und sehen in etwa so aus:
3,6,12,18,30,60,120,240,300,600,...

Dax 12. Mai 2006 07:45

Re: Array beschreiben wie ein Set?
 
Dann musst du es schon anders lösen, zum Beispiel über eine Prozedur.
Delphi-Quellcode:
procedure Fill(var Dest: TIntegerDynArray; Values: array of Integer);
var i: Integer;
begin
  SetLength(Dest, Length(Values));
  for i := 0 to high(Values) do
    Dest[i] := Values[i];
  // Könnt auch gehen: Dest := Copy(Values, 0, High(Values));
end;

moelski 12. Mai 2006 07:49

Re: Array beschreiben wie ein Set?
 
Und der Auruf wäre dann:
Delphi-Quellcode:
fill(Skalenwerte, [3,6,9,12,15,18,21,24,27,30]);
??

uligerhardt 12. Mai 2006 07:56

Re: Array beschreiben wie ein Set?
 
Wenn die Anzahl der Arrayelemente fest ist, ginge auch
Delphi-Quellcode:
type
  TMeinArray = array[0..9] of Integer;
const
  Vorlage: TMeinArray = (3, 6, 12, 18, 30, 60, 120, 240, 300, 600);
var
  MeinArray: TMeinArray;
begin
  MeinArray := Vorlage;
end;
HTH, Uli.

Sharky 12. Mai 2006 08:01

Re: Array beschreiben wie ein Set?
 
Hai ihr,

ich habe hier auch noch eine Lösung. Diese sollte auch laufen wenn das "Ziel-Array" entweder dynamisch oder statisch ist ;-)
Delphi-Quellcode:
procedure FillArray(var aArray: TMyArray; aValues: array of Variant);
var
  NdxDestination: Integer;
  NdxSource: Integer;
begin
  NdxDestination := Low(aArray);
  NdxSource := Low(aValues);
  repeat
    aArray[NdxDestination] := aValues[NdxSource];
    Inc(NdxDestination);
    Inc(NdxSource);
  until NdxDestination = Succ(High(aArray));
end;

procedure TDemoForm.btn_testClick(Sender: TObject);
var
  myArray: TMyArray;
begin
  FillArray(myArray, [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]);
end;

moelski 12. Mai 2006 08:03

Re: Array beschreiben wie ein Set?
 
@uligerhardt: Das schaut so wie ich es brauchen kann :hello:

Danke!
Und auch Danke an die anderen Poster für die interessanten Funktionen!!!


Alle Zeitangaben in WEZ +1. Es ist jetzt 10:21 Uhr.

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