Delphi-PRAXiS
Seite 3 von 4     123 4      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Lotto HILFE´!!! (https://www.delphipraxis.net/35576-lotto-hilfe%B4.html)

fiasko 9. Dez 2004 11:15

Re: Lotto HILFE´!!!
 
Hallo,

Zitat:

Zitat von school- delphi
also wenn man das so versucht- klappts leider nicht--- unendlich viele zahlen in der listbox erscheinen dann.

Das glaub ich dir nicht :-) Der Rechner hat nur endlichen Speicher :mrgreen:

Ich meinte das eher so:

Delphi-Quellcode:
begin
  for i:= 1 to 6 do
  begin
    // Solange Zahlen testen bis wir ein neue noch nicht in der Listbox stehende in Y haben
    repeat
      Y:= random(49)+1;
    until ListBox1.Items.IndexOf(IntToStr(y))=-1;

    ListBox1.Items.Add(inttostr(y));
  end;
end;
[edit]
Verdammt, wieder Bummelletzter :wall:
[/edit]

school- delphi 9. Dez 2004 11:16

Re: Lotto HILFE´!!!
 
Hallo,

vielen Dank erstmal. Leider hat die Version nicht geklappt. Und mein grö0tes Problem ist dass es genau um die menge geht (Hauptbestandteil der Arbeit)
Und die Lottozahlen müssen unabdingbar auch diese arbeitsweisen mit mengen besitzen.

danke aber
grüße
lisa

alcaeus 9. Dez 2004 11:19

Re: Lotto HILFE´!!!
 
Hi Lisa,

in dem Fall solltest du dir mal die Hilfe zu Mengen ansehn. Ein Beispiel mit mengen:

Delphi-Quellcode:
var Menge: set of Byte;
    i: Integer;
begin
  Menge := []; //Menge initialisieren
  Randomize; //Zufallsgenerator initialisieren
  for i := 1 to 6 do
    repeat
      y := Random(49)+1; //Zahl generieren
    until y not in Menge; //Ueberpruefen ob Zahl schon in Menge
    Menge := Menge + [y]; //Zahl zu Menge hinzufuegen
    ListBox1.Items.Add(IntToStr(y)); //Zahl zu Listbox hinzufuegen
  end;
end;
Wichtig: Ich hab den Code nicht getestet, er sollte aber funktionieren.

Greetz
alcaeus

school- delphi 9. Dez 2004 11:20

Re: Lotto HILFE´!!!
 
DANKE

also jetzt klappt das mit dem überprüfen anhand dem index.
Nur ich muss leider mit den mengen arbeiten.
Leider weiß ich überhaupt nichts mit dem until not anzufangen, obwohl das der Lehrer ausdrücklich betont hat. :cry:

Aber vielen vielen dank
Lisa

Treffnix 9. Dez 2004 11:24

Re: Lotto HILFE´!!!
 
:gruebel:

Das letzte Beispiel von alcaeus arbeitet doch mit Mengen und repeat. Im Grunde ist das schon deine Lösung.

Orbmu2k 9. Dez 2004 11:27

Re: Lotto HILFE´!!!
 
Code von alcaeus berichtigt ...

Delphi-Quellcode:
var
  Menge: set of Byte;
  i,y: Integer;
begin
  Menge := []; //Menge initialisieren
  Randomize; //Zufallsgenerator initialisieren
  for i := 1 to 6 do
  begin
    repeat
      y := Random(49)+1; //Zahl generieren
    until not (y in Menge); //Ueberpruefen ob Zahl schon in Menge
    Menge := Menge + [y]; //Zahl zu Menge hinzufuegen
    ListBox1.Items.Add(IntToStr(y)); //Zahl zu Listbox hinzufuegen
  end;
end;

school- delphi 9. Dez 2004 11:28

Re: Lotto HILFE´!!!
 
Hallo
die Lösung von alcaeus ist total super und verständlich. Erstmal herzlichen Dank - nur in der Zeile mit dem until not tauchen folgende Fehler auf:

[Fehler] Unit1.pas(41): Operator oder Semikolon fehlt
[Fehler] Unit1.pas(41): Operator ist auf diesen Operandentyp nicht anwendbar

Ich glaube ich schicke nochmal den ganzen quellcode- wie geht das mit dem delpgi tags

vielen dank liebe delphi- Könner
Lisa

bigg 9. Dez 2004 11:29

Re: Lotto HILFE´!!!
 
Ich weis nicht, aber man hätte ja auch suchen können.
http://www.delphipraxis.net/search.p...69127&start=0&

Treffnix 9. Dez 2004 11:31

Re: Lotto HILFE´!!!
 
@ Bigg: "Keine Beiträge entsprechen Deinen Kriterien."

@ school - delphi: beim Beitrag erstellen oben den Button "Delphi-Code" drücken, Quelltext einfügen und nochmal den gleichen Button drücken

school- delphi 9. Dez 2004 11:34

Re: Lotto HILFE´!!!
 
Hallo

es klappt jetzt--- ihr seid echt super
vielen herzlichen dank

Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);

 var
  Menge: set of Byte;
  i,y: Integer;
begin
  Menge := []; //Menge initialisieren
  Randomize; //Zufallsgenerator initialisieren
  for i := 1 to 6 do
  begin
    repeat
      y := Random(49)+1; //Zahl generieren
    until not (y in Menge); //Ueberpruefen ob Zahl schon in Menge
    Menge := Menge + [y]; //Zahl zu Menge hinzufuegen
    ListBox1.Items.Add(IntToStr(y)); //Zahl zu Listbox hinzufuegen
  end;
end;

procedure TForm1.FormCreate(Sender: TObject);
begin
randomize;
end;


Alle Zeitangaben in WEZ +1. Es ist jetzt 01:29 Uhr.
Seite 3 von 4     123 4      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz