AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren

Lotto programm

Ein Thema von ScrollbarKopf · begonnen am 18. Dez 2007 · letzter Beitrag vom 18. Dez 2007
Antwort Antwort
Seite 1 von 4  1 23     Letzte » 
ScrollbarKopf

Registriert seit: 17. Okt 2007
154 Beiträge
 
#1

Lotto programm

  Alt 18. Dez 2007, 14:41
Hallo Leute habe jetzt ein Programm das mir aus 45 zahlen 6 zufällige nimmt.
Delphi-Quellcode:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Edit4: TEdit;
    Edit5: TEdit;
    Edit6: TEdit;
    Button1: TButton;
    Button2: TButton;
    Button3: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);
    procedure Button3Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

procedure TForm1.Button1Click(Sender: TObject);
var
a,b,c,d,e,f :integer;
begin
randomize;
repeat
  a:= random (46);
  b:= random (46);
  c:= random (46);
  d:= random (46);
  e:= random (46);
  f:= random (46);

until (a<>b) and (a<>c) and (a<>d) and (a<>e) and (a<>f)
and (b<>a) and (b<>c) and (b<>d) and (b<>e) and (b<>f)
and (c<>a) and (c<>b) and (c<>d) and (c<>d) and (c<>f)
and (d<>a) and (d<>b) and (d<>c) and (d<>e) and (d<>f)
and (e<>a) and (e<>b) and (e<>c) and (e<>d) and (e<>f)
and (f<>a) and (f<>b) and (f<>c) and (f<>d) and (f<>e);

edit1.Text := inttostr (a+1);
edit2.Text := inttostr (b+1);
edit3.Text := inttostr (c+1);
edit4.Text := inttostr (d+1);
edit5.Text := inttostr (e+1);
edit6.Text := inttostr (f+1);
end;

procedure TForm1.Button2Click(Sender: TObject);
begin
close;
end;

procedure TForm1.Button3Click(Sender: TObject);
begin
edit1.clear;
edit2.clear;
edit3.clear;
edit4.clear;
edit5.clear;
edit6.clear;
end;

end.
Und ich habe folgendes Proplem. Habe jetzt 6 weitere Edits gemacht und möchte das wenn man unten zahlen rein schreibt das delphi die geschriebenen zahlen mit den zufalls zahlen in den anderen edits vergleicht und wenn alle übereinstimmen soll er mitels showmessage sagen das man gewonnen hat und wenn nicht das man verloren hat.
Das Haupt proplem ist ich weiß nciht wie ich es schreiben soll das er die zahlen überprüft also vergleicht.
  Mit Zitat antworten Zitat
Benutzerbild von inherited
inherited

Registriert seit: 19. Dez 2005
Ort: Rosdorf
2.022 Beiträge
 
Turbo Delphi für Win32
 
#2

Re: Lotto programm

  Alt 18. Dez 2007, 14:47
Die EIngegebenen Werte in Integer umwandeln kannst du mit MyInt:=StrToInt(String);
Vegleichen solltest du können. Aber du wirst diese Meldung praktisch niemals zu gesicht bekommen, weil die Wahrscheinlichkeit dass du die richtigen Zahlen bekommst verschwinded gering ist
btw: müssten es nicht 6 aus 49 sein?
Nikolai Wyderka

SWIM SWIM HUNGRY!
Neuer Blog: hier!
  Mit Zitat antworten Zitat
ScrollbarKopf

Registriert seit: 17. Okt 2007
154 Beiträge
 
#3

Re: Lotto programm

  Alt 18. Dez 2007, 15:03
die wahrscheinlichkeit ist zwar gering aber es ist eben lotto nein es sollen 45 zahlen sein und auserdem kann ich das vergleichen net
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#4

Re: Lotto programm

  Alt 18. Dez 2007, 15:06
Was kannst du nicht vergleichen?
Markus Kinzler
  Mit Zitat antworten Zitat
ScrollbarKopf

Registriert seit: 17. Okt 2007
154 Beiträge
 
#5

Re: Lotto programm

  Alt 18. Dez 2007, 15:08
die zahlen der Computer soll die geschriebennen zahlen mit den zufalls zahlen vergleichen udn dasnn sagen wenn alle übereinstimmen SIe haben gewoonen ansonsten sie haben verloren
  Mit Zitat antworten Zitat
Benutzerbild von Jelly
Jelly

Registriert seit: 11. Apr 2003
Ort: Moestroff (Luxemburg)
3.741 Beiträge
 
Delphi 2007 Professional
 
#6

Re: Lotto programm

  Alt 18. Dez 2007, 15:09
Warum scheiterst du am Vergleichen. Wo liegt das konkrete Problem? Was hast du bisher.

Noch 2 Tipps am Rande:
  • Randomize braucht nur einmal aufgerufen werden, und nicht bei jedem Button1-Klick
  • Wenn a<>b ist, dann brauchst du nicht nochmal prüfen ob b<>a ist. Für andere Prüfungen in deiner Routine gilt Entsprechendes
  • Nenn deine Kinder mit dem Namen. Oder weisst Du noch was Button1, Button2 und Button3 ist in 4 Wochen.

Um zu prüfen, wieviele Richtige du hast würde ich mal versuchen mit
set of integer ; zu arbeiten, damit sollte eine Prüfung relativ leicht werden, wieviele Richtige du hast.
  Mit Zitat antworten Zitat
ScrollbarKopf

Registriert seit: 17. Okt 2007
154 Beiträge
 
#7

Re: Lotto programm

  Alt 18. Dez 2007, 15:09
Zitat von mkinzler:
Was kannst du nicht vergleichen?
Und ich habe folgendes Proplem. Habe jetzt 6 weitere Edits gemacht und möchte das wenn man unten zahlen rein schreibt das delphi die geschriebenen zahlen mit den zufalls zahlen in den anderen edits vergleicht und wenn alle übereinstimmen soll er mitels showmessage sagen das man gewonnen hat und wenn nicht das man verloren hat.
Das Haupt proplem ist ich weiß nciht wie ich es schreiben soll das er die zahlen überprüft also vergleicht
  Mit Zitat antworten Zitat
mkinzler
(Moderator)

Registriert seit: 9. Dez 2005
Ort: Heilbronn
39.851 Beiträge
 
Delphi 11 Alexandria
 
#8

Re: Lotto programm

  Alt 18. Dez 2007, 15:11
if StrToInt( Edit1.text) = StrToInt( Edit2.text) then ... besser aber TryStrToInt oder Val verwenden.
Markus Kinzler
  Mit Zitat antworten Zitat
Klaus01

Registriert seit: 30. Nov 2005
Ort: München
5.753 Beiträge
 
Delphi 10.4 Sydney
 
#9

Re: Lotto programm

  Alt 18. Dez 2007, 15:18
Hallo,

mach Dir doch drei Arrays

Delphi-Quellcode:
gezogeneZahlen : Array[1..6] of Byte;
gewaehlteZahlen: Array[1..6] of Byte;
ZahlenRichtig : Array[1..6] of Byte;

Delphi-Quellcode:
k:=0;
for i:=1 to 6 do
  for j:=1 to 6 do
    if gewaehlteZahlen[i] = gezogeneZahlen[j] then
      begin
        inc(k);
        ZahlenRichtig[k]:=gewaehlteZahlen[j];
      end;
Wenn dann am Ende k = 6 ist, dann stimmen 6 Zahlen überein.
Wenn es weniger sind entspricht k der Anzahl der richtigen Zahlen.
Die richtigen Zahlen stehen dann im Array ZahlenRichtig.

Grüße
Klaus
Klaus
  Mit Zitat antworten Zitat
ScrollbarKopf

Registriert seit: 17. Okt 2007
154 Beiträge
 
#10

Re: Lotto programm

  Alt 18. Dez 2007, 15:30
Klaus01 habe schon eine variante

Aber ähm wie schreibe ich wenn edit1.text nicht gleich edit2.text ist dann false

Denke mir if Stroint (edit1.text) (was gibt man als unglecih ein) stroint (edit2.text) than ....
Das Proplem ist ich weiß nicht wie amn ungleich schreibt in dwelphi.
  Mit Zitat antworten Zitat
Themen-Optionen Thema durchsuchen
Thema durchsuchen:

Erweiterte Suche
Ansicht

Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 06:25 Uhr.
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