Guck Dir Doch mal die Deklaration an.
Beantworte bitte folgende Fragen:
Was erwartet Deine Quicksort-Prozedur als ersten Parameter?
Was übergibst Du im Aufruf als ersten Parameter?
Wenn die Anwtort auf meine erste und die zweite Frage unterschiedlich sind, dann übergibst Du nicht das, was die Prozedur erwartet.
Edit nachtrag zum einfachen Spicken:
Delphi-Quellcode:
type ta=ARRay[1..100] of integer;
var
Form1: TForm1;
n:integer;
PROCEDURE Quicksort(VAR a:ta; p,r:INTEGER); // vat a: ta
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
var i,n:integer;
begin
for i:=1 to n do
quicksort(memo1.lines,n,x);//DIE ZEILE HIER ISSES!!!
memo2.lines.add(INtToStr(a[i]));
end;
Du hast da übrigens noch ein gaaaanz anderes problem:
Wenn Du i von 1 bis n laufen lassen willst, dann solltest Du dem n vorher auch einen Wert zuweisen...