Hallo!
Ich bin Anfänger und muss ein Unterprogramm für eine Minimum / Maximum - suche schreiben. ich habe eine StringGrid, worin Name, Vorname und Größe enthalten sind. Das programm sucht mir die größte und kleinste PErson heraus und zeigt mir Name, Vorname und Größe der kleinsten und größten Person in Editfenster an. Das Programm an sich sieht folgendermaßen aus:
Delphi-Quellcode:
procedure TForm1.ButtonBerechneClick(Sender: TObject);
var
name, vorn, kname, kvorn, gname, gvorn :string[20];
groesse, kgroesse, ggroesse, i :smallInt;
begin
i :=1;
name :=StringGrid_Daten.Cells[1,i];
vorn :=StringGrid_Daten.Cells[2,i];
groesse :=StrToInt(StringGrid_Daten.cells[3,i]);
gname :=name;
kname :=name;
gvorn :=vorn;
kvorn :=vorn;
ggroesse :=groesse;
kgroesse :=groesse;
name :=StringGrid_Daten.Cells[1,i+1];
while name <> '' do
begin
vorn :=StringGrid_Daten.Cells[2,i+1];
groesse :=StrToInt(StringGrid_Daten.cells[3,i+1]);
if groesse >= ggroesse then
begin
gname :=name;
gvorn :=vorn;
ggroesse :=groesse;
end;
if groesse < kgroesse then
begin
kname :=name;
kvorn :=vorn;
kgroesse :=groesse;
end;
i :=i+1;
name :=StringGrid_Daten.Cells[1,i+1];
end;
Edit_name_1.Text :=kname;
Edit_vorname_1.Text :=kvorn;
Edit_groesse_1.Text :=IntToStr(Kgroesse);
Edit_name_2.Text :=gname;
Edit_vorname_2.Text :=gvorn;
Edit_groesse_2.Text :=IntToStr(ggroesse);
end;
Nun müssen wir als Beleg daraus ein Unterprogramm machen. D.h. ich habe versucht, eine Funktion unter "implementation" zu definieren. Leider sucht mir zwar meine Funktion das Min. und Max, aber liefert die falsche zugehörige Zeile des Stringgrids. WEr kann mir da helfen und ggf. ein richtiges UNterprogramm liefern??? Danke schon mal recht herzlich im Vorfeld!
[edit=sakura] [delphi]-Tags. Mfg, sakura[/edit]