'n Skikking kan gebruik word om
data items van dieselfde soort onder dieselfde naam te stoor. Elke item word
onderskei deur die gebruik van 'n indeks.
Skikkings moet verklaar word onder die var en daar moet die omvang ook
aangedui word, byvoorbeeld:
var
arrName : array[1..20] of String;
arrOuderdomme : array[1.1000] of Integer;
Die skikking arrName kan tot 20 name bevat
(String teksdatatipe).
Die skikking arrOuderdomme kan tot 1000 heelgetalwaardes bevat.
Dinamiese skikkings kan gebruik word in gevalle waar daar nie 'n duidelike
aanduiding is van hoeveel items aanvanklik gebruik gaan word nie.
Data kan in 'n skikking ingelees
word deur 'n lus ('loop') te gebruik, byvoorbeeld:
var
Form1: TForm1;
arrNum : array[1..10] of Integer;
implementation
{$R *.DFM}
procedure TForm1.btnEnterNumClick(Sender: TObject);
var
iCount : Integer;
begin
FOR iCount := 1 to 10 do
begin
arrNum[iCount] := iCount * 2;
{Data: teller maal twee}
end;
end;
procedure TForm1.btnDisplayNumClick(Sender: TObject);
var
iCountB : Integer;
begin
FOR iCountB := 1 to 10 do
begin
redOutput.Lines.Add(IntToStr(arrNum[iCountB]));
end;
end;
end.
Neem kennis:
• Die skikking word globaal verklaar sodat dit in meer as een prosedure gebruik
kan word.
• Die teller wat vir die FOR-lus gebruik word, word ook as indeks vir die
skikking gebruik.
• 'n Ander lus word gebruik om die waardes in die skikking te vertoon.
Data kan ook in 'n globaal
verklaarde skikking ingelees word deur die edit-kassie en 'n knoppie te
gebruik (data word in die voorbeeld in 'n ListBox vertoon):
var
Form1: TForm1;
arrNames : array[1..10] of String;
iCount : integer; {Items ingesleutel}
implementation
{$R *.DFM}
procedure TForm1.btnEnterNameClick(Sender: TObject);
begin
iCount := iCount + 1; {Teller neem met 1 toe}
arrNames[iCount] := edit1.text;
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
iCount := 0; {Aanvanklike waarde van teller}
end;
procedure TForm1.btnDisplayNamesClick(Sender: TObject);
var
iForCounter : integer; {FOR-lus teller}
begin
FOR iForCounter := 1 to iCount do
begin
lstNames.Items.Add(arrNames[iForCounter]);
end;
end;
end.
|