Felder

Aus ProgrammingWiki
Archivierte Version vom 2012-07-10T07:09:33+00:00. Aktuelle Version

Der Datentyp Feld (Array)


Neben den einfachen Datentypen gibt es auch zusammengesetzte, z.B. Felder (auch Listen, Array). In einem Array werden Werte gleichen Datentyps gespeichert.

Die Deklaration eines Arrays erfolgt folgendermaßen:

var xyz: array[startindex .. endindex] of Datentyp;

startindex..endindex gibt den Bereich zwischen Startwert und Endwert angeben (Randwerte werden mit eingeschlossen). Dies entspricht dem bereitgehaltenen Speicherplatz. Über den Index (meist mit i bezeichnet) kann man auf die einzelnen Werte zugreifen.

var beispiel: array[0..20] of integer;

Ein Feld wird über den Index gefüllt, z.B. für i=1 und i=5 so:

beispiel[1]:=3;
beispiel[5]:=22;

Das Feld sei dann z.B. so gefüllt ist: [10,3,6,7,9,22,...].
Bestimmen Sie die Werte, die dann die Variablen a und b nach den folgenden Anweisungen liefern!

a:=beispiel[0];
b:=beispiel[2];


weitere Hinweise z.B. unter http://www.delphi-treff.de/object-pascal/komplexe-datentypen/


Beispiele zu Feldern


Zufallszahlen und Felder

<eval id="4bf2b9d357ee5"> var z:array[0..10] of integer; var i:integer; begin for i:=0 to 5 do begin z[i]:=zufall2(100); writeln(inttostr(z[i])); end; end.</eval>

zum Weiterarbeiten: Füllen Sie ein Feld mit 5 zufälligen Zahlen. Bestimmen Sie die Position (Index) des Maximums. Lassen Sie sich zur Kontrolle die Zufallszahlen anzeigen.

var feld:array[0..4]of integer;
var i,max,index:integer;
begin
max:=0;index:=0;
for i:=1 to 5 do feld[i-1]:=random(100);
for i:=1 to 5 do 
if feld[i-1]>max then begin 
                      max:=feld[i-1];
                      index:=i;
                      end;
for i:=1 to 5 do writeln(inttostr(feld[i-1]));
writeln('Maximum an Position '+inttostr(index));
end.