Thema: Delphi arrays vergleichen

Einzelnen Beitrag anzeigen

dinu_ch

Registriert seit: 3. Sep 2003
17 Beiträge
 
#1

arrays vergleichen

  Alt 20. Okt 2003, 20:26
hallo

ich bastle da newbie-mässig ein lotto-programm zusammen und möchte arrys verwenden, der anfang sieht so aus :

Delphi-Quellcode:
program lotto;

{$APPTYPE CONSOLE}

uses
  SysUtils;

// Prozedru zum Check ob Text oder Zahl

  procedure readint(var x:integer);

var
  str : string; //Eingabevariable
  inp,code : integer; // Umwandlungsvariable

begin
   repeat
     readln(str);
     val(str,x,code);
     if (code <> 0) then Write(' Keine Zahl eingegeben - nochmals : ')
     until (code = 0);
end;

var
arr:array[1..7 ] of integer;
arrz:array[1..6 ] of integer;
i,j:integer;

begin

// Zahlen ziehen

  randomize;
  repeat
  for i:=1 to 7 do
  arr[i]:=random(49)+1;
  until (arr[1] <> arr[2]) and (arr[1] <> arr[3]) and
        (arr[1] <> arr[4]) and (arr[1] <> arr[5]) and
        (arr[1] <> arr[6]) and (arr[2] <> arr[3]) and
        (arr[2] <> arr[4]) and (arr[2] <> arr[5]) and
        (arr[2] <> arr[6]) and (arr[3] <> arr[4]) and
        (arr[3] <> arr[5]) and (arr[3] <> arr[6]) and
        (arr[4] <> arr[5]) and (arr[4] <> arr[6]) and
        (arr[5] <> arr[6]) and (arr[1] <> arr[7]) and
        (arr[2] <> arr[7]) and (arr[3] <> arr[7]) and
        (arr[4] <> arr[7]) and (arr[5] <> arr[7]) and
        (arr[6] <> arr[7]);
  writeln;
  writeln(' Lottozahlen : ',arr[1],' ',arr[2],' ',arr[3],' ',arr[4],' ',arr[5],' ',arr[6]);
  writeln(' Zusatzzahl : ',arr[7]);
  readln;


// Tippen

begin
for j := 1 to 6 do
begin
write(' Geben Sie die ' +IntToStr(j)+ '.Zahl ein : ');
readint(arrz[j]); //Eingabe des i-Wertes in Array
end;

// Ausgabe Tips

writeln(arrz[1],' ',arrz[2],' ',arrz[3],' ',arrz[4],' ',arrz[5],' ',arrz[6]);
end;
readln;
end.
- Dass ich die arr[i] vergleiche sieht ziemlich hässlich aus, gibt es da eine Alternative ?
- Und wie kann ich beim arrz[j] verhindern, dass 2x das gleiche eingegeben wird ?

Grüsse

dinu_ch

[edit=Christian Seehase]Delphi-Tags gesetzt. Bitte künftig selber machen. Danke. Mfg, Christian Seehase[/edit]
  Mit Zitat antworten Zitat