So also ich hab nen personenverzeichnis angelegt wo man namen, nicknamen und die punkte eintragen kann.. so jetzt will ich ne max funktion haben die mir dann den namen gibt, der die meisten punkte hat
ich hatte das schon im unterricht habs aber leider wieder vergessen
also ich hab das noch so in erinnerung
function max:integer;
begin
if x < personen[i].punkte then
x:=personen[i];
label5.caption:= und hier muss dann der name hin
end;
bei formcreate kam dann noch das
x:=0;
vllt hat ja jemand von euch ne bessere idee.
so sieht erstmal das ganze aus
unit Unit1;
interface
uses
Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
Dialogs, Grids, StdCtrls;
type
TForm1 = class(TForm)
StringGrid1: TStringGrid;
Button1: TButton;
Button2: TButton;
Button3: TButton;
Name: TEdit;
Nick: TEdit;
Label1: TLabel;
Label2: TLabel;
Label3: TLabel;
Punkte: TEdit;
Label4: TLabel;
procedure FormCreate(Sender: TObject);
procedure Button1Click(Sender: TObject);
procedure Button2Click(Sender: TObject);
procedure Button3Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
type
TPerson=Record
Name:String;
Nick:String;
punkte:integer;
end;
var
Form1: TForm1;
i: integer;
personen: array[1..6] of TPerson;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
Application.Terminate
end;
procedure TForm1.Button2Click(Sender: TObject);
begin
i:=i+1;
Personen[i].name:=Name.text;
Personen[i].nick:=Nick.text;
Personen[i].punkte:=StrtoInt(punkte.text);
Name.text:=' ';
Nick.text:=' ';
punkte.text:=' ';
if i=6 then
button2.visible:=false;
end;
procedure TForm1.Button3Click(Sender: TObject);
var Z:Integer;
begin
for z:=1 to 6 do
begin
StringGrid1.Cells[0,z]:= Personen[z].name;
StringGrid1.Cells[1,z]:= Personen[z].nick;
stringgrid1.cells[2,z]:=intToStr(Personen[z].punkte);
end;
{StringGrid1.Cells[s,z] - String in Spalte s, Zeile z
begonnen wird mit den Indizes 0,0}
end;
procedure TForm1.FormCreate(Sender: TObject);
begin
i:=0;
Stringgrid1.Cells[0,0]:='Name';
Stringgrid1.Cells[1,0]:='Nick';
StringGrid1.Cells[2,0]:='Punkte';
end;
end.