Hallo,
ich hab mal in der Suchfunktion geguckt, aber immer nur Threads gefunden in denen Lottozahlen erstellt werden sollen. Ich will aber einen LottoTippZettel erstellen. Man soll die Anzahl an Tipps angeben können die man abgibt und daraufhin sollen einem genau so viele 6er Lotto Tipps erstellt werden. Dazu habe ich folgendes geschrieben:
Delphi-Quellcode:
unit ULotto;
interface
type TLotto=class
private
Tipp:
array of array of word;
public
procedure LottoTippErstellen(Anzahl:integer);
procedure SetTipp(x,y,Wert:integer);
end;
implementation
procedure TLotto.SetTipp(x,y,Wert:integer);
begin
Tipp[x,y]:=Wert;
end;
procedure TLotto.LottoTippErstellen(Anzahl: Integer);
VAR n,m,o:integer;
korekt:boolean;
begin
korekt:=false;
SetLength(Tipp,0,0);
SetLength(Tipp,Anzahl,6);
For n:=1
to Anzahl
do
begin
For m:=1
to 6
do
begin
Repeat
korekt:=true;
SetTipp(n,m,(random(49)+1));
For o:=0
to m-1
do
begin
IF Tipp[n,m]=Tipp[n,o]
then korekt:=false;
end;
Until korekt=true;
end;
end;
end;
end.
Das komische ist nur: Wenn ich diese Prozedur mit Anzahl=1 aufrufe funktioniert sie. Rufe ich sie mit Anzahl=2 auf funktioniert sie nicht mehr. Dann kommt die Fehlermeldung "Zugriffsverletzung bei Adresse 0045845A5". Leider finde ich den Fehler nicht.
Ich wäre euch sehr dankbar wenn mir jemande helfen könnte