Einzelnen Beitrag anzeigen

YXCVBNM1

Registriert seit: 4. Dez 2010
12 Beiträge
 
#1

LottoTippErstellen

  Alt 1. Sep 2011, 22:45
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
  Mit Zitat antworten Zitat