Delphi-Quellcode:
Type
TArtikel=record
Artikelnummer: string[8];
Artikelbezeichnung: string[30];
Mengeneinheit: string[2];
Bestand: smallint;
Maximalbestand: smallint;
minimalbestand: smallint;
Hersteller: string[41];
Preis: single;
Maximalpreis: single;
Minimalpreis: single;
Lieferzeit: byte;
end;
type
TForm1 = class(TForm)
Button1: TButton;
Button2: TButton;
ListBox1: TListBox;
ListBox2: TListBox;
Label1: TLabel;
Label2: TLabel;
procedure Button1Click(Sender: TObject);
procedure Sortieren(Artikelliste: Array of TArtikel;Anzahl: integer);
procedure Ausgeben(Artikelliste: Array of TArtikel;Anzahl: integer);
procedure Button2Click(Sender: TObject);
private
{ Private-Deklarationen }
public
{ Public-Deklarationen }
end;
var
Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
close;
end;
procedure TForm1.Button2Click(Sender: TObject);
var
f: file of Tartikel;
i:integer;
Artikelliste: array[1..100] of TArtikel;
begin
AssignFile(f, 'f:\Artikel.dat');
Reset(f);
i:=0;
while not Eof(f) do
begin
i:=i+1;
Read(f,Artikelliste[i]);
end;
CloseFile(f);
Sortieren(Artikelliste,i);
end;
procedure TForm1.Sortieren(Artikelliste:Array of TArtikel;Anzahl: integer);
var i,j: integer;
tauschen: TArtikel;
begin
for i:=1 to Anzahl-1 do
begin
for j:=i+1 to Anzahl do
begin
if((Artikelliste[i].Bestand*Artikelliste[i].Preis)
<((Artikelliste[j].Preis*Artikelliste[j].Preis)))
then
begin
tauschen:=Artikelliste[i];
Artikelliste[i]:=Artikelliste[j];
Artikelliste[j]:=tauschen;
end;
end;
end;
Ausgeben(Artikelliste,Anzahl);
end;
procedure TForm1.Ausgeben(Artikelliste:Array of TArtikel;Anzahl: integer);
var i:integer;
begin
for i:=1 to Anzahl do
begin
Listbox1.Items.Add(Artikelliste[i].Artikelnummer + ' '+Artikelliste[i].Artikelbezeichnung+' ' +
FloatToStr(((Artikelliste[i].Bestand * Artikelliste[i].Preis))));
if Artikelliste[i].Artikelnummer[7]='1' Then
Listbox2.Items.Add(Artikelliste[i].Artikelnummer + ' '+Artikelliste[i].Artikelbezeichnung+' ' +
FloatToStr(((Artikelliste[i].Bestand * Artikelliste[i].Preis))));
end;
end;
end.
Wie gesagt hab keine Ahnung ob das alles richtig ist hatten wir im zweiten semester und seit dem nicht wieder!!!Danke
[edit=alcaeus]Delphi-Tags eingefuegt. Bitte in Zukunft selbst machen! Mfg, alcaeus[/edit]