Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Object-Pascal / Delphi-Language (https://www.delphipraxis.net/32-object-pascal-delphi-language/)
-   -   Delphi Wuerfelspiel Hilfe!!! :( (https://www.delphipraxis.net/139931-wuerfelspiel-hilfe.html)

xman236 8. Sep 2009 20:38


Wuerfelspiel Hilfe!!! :(
 
Hallo,

ich habe ein Problem mit Wuerfelspiel.
Kann jemand mir bitte helfen, wie ich das Gewinn berechnen und auf meine Konto automatisch addieren kann?
Zum Beispiel, ich waehle 2 und die Gewinnzahlen sind 2,4,5. Also ich habe einen Treffer und muss 1 Euro auf mein Konto gehen.
Mit den Gewinnzahlen und so habe ich geschafft, aber mit dem Treffer und das Gewinn auf meine Konto zu bringen schaffe ich nicht.
Bitte, hilf mir.

Wolfgang Mix 8. Sep 2009 20:47

Re: Wuerfelspiel Hilfe!!! :(
 
Erstmal herzlich willkommen in der DP :dp:

Hilft dir

Delphi-Quellcode:
If Meinezahl= Gewinnzahl then
begin

end;
Gruß

Wolfgang

xman236 8. Sep 2009 20:53

Re: Wuerfelspiel Hilfe!!! :(
 
Danke Wolfgang!

also mein Programm hat ein Kontofenster. Wie kann ich es so programmieren,wenn ich ein Treffer habe, macht er 1 Euro auf meine Konto automatisch
und bei 2 Treffer 2 Euro automatisch ??

Uebrigens bin ich aus Korea und kann nicht perfekt Deutsch sorry.

Wolfgang Mix 8. Sep 2009 20:58

Re: Wuerfelspiel Hilfe!!! :(
 
Keine Ursache für dein Deutsch. Nimm eine Textverarbeitung mit Fehlerkorrektur, z.B. Open Office, dann werden die Deutschfehler weniger.
Zu Deinem Problem: Zeige 'mal ein bisschen Quelltext!

Gruß

Wolfgang

xman236 8. Sep 2009 20:59

Re: Wuerfelspiel Hilfe!!! :(
 
hier habe ich mein ganzes Quelltext kopiert.
Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    RadioButton1: TRadioButton;
    RadioButton2: TRadioButton;
    RadioButton3: TRadioButton;
    RadioButton4: TRadioButton;
    RadioButton5: TRadioButton;
    RadioButton6: TRadioButton;
    Edit1: TEdit;
    Edit2: TEdit;
    Edit3: TEdit;
    Button1: TButton;
    Edit4: TEdit;
    Button2: TButton;
    procedure Button1Click(Sender: TObject);
    procedure Button2Click(Sender: TObject);

  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

var
  Form1: TForm1;

implementation

{$R *.DFM}

procedure TForm1.Button1Click(Sender: TObject);

var
i:integer;
j:integer;
h:integer;

begin
i:=StrToInt(Edit1.Text);
j:=StrToInt(Edit2.Text);
h:=StrToInt(Edit3.Text);
i:=random(6)+1;
j:=random(6)+1;
h:=random(6)+1;
Edit1.Text:=IntToStr(i);
Edit2.Text:=IntToStr(j);
Edit3.Text:=IntToStr(h);


end;

procedure TForm1.Button2Click(Sender: TObject);
var

Konto:integer;
begin
Konto:=StrToInt(Edit4.Text);
Konto:=Konto-1 ;
Edit4.Text:=IntToStr(Konto);

end;



end.
[edit=SirThornberry]Delphi-Tags gesetzt - nächstes mal bitte selbst machen :-) Mfg, SirThornberry[/edit]

xman236 8. Sep 2009 21:04

Re: Wuerfelspiel Hilfe!!! :(
 
Wolfgang, kannst du bitte in Chat eintreten und mir helfen?

Wolfgang Mix 8. Sep 2009 21:08

Re: Wuerfelspiel Hilfe!!! :(
 
Markiere bitte Deinen Code und jkicke dann auf Delphi-Code.
Dann läßt sich das besser lesen.

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

var
i:integer;
j:integer;
h:integer;

begin
//Hier stimmte die Reihenfolge nicht
i:=random(6)+1;
j:=random(6)+1;
h:=random(6)+1;
i:=StrToInt(Edit1.Text);
j:=StrToInt(Edit2.Text);
h:=StrToInt(Edit3.Text);
Edit1.Text:=IntToStr(i);
Edit2.Text:=IntToStr(j);
Edit3.Text:=IntToStr(h);[pre]
[/pre]

end;

procedure TForm1.Button2Click(Sender: TObject);
var

Konto:integer;
begin
Konto:=StrToInt(Edit4.Text);
Konto:=Konto-1 ;
Edit4.Text:=IntToStr(Konto);

end;
Gruß

Wolfgang

False Pretense 8. Sep 2009 21:10

Re: Wuerfelspiel Hilfe!!! :(
 
Hallo!

Soweit ich verstanden habe, möchtest du den Benutzer 3 Zahlen eingeben lassen und dann prüfen, wie viele dieser Zahlen mit den Gewinnzahlen (Deine Zufallszahlen da) übereinstimmen.

Ich würde es so machen:

Delphi-Quellcode:
var gewinn_zahlen, deine_zahlen: array [1..3] of Integer;
var i, j, gewinn: integer;
begin
  gewinn_zahlen[1]:= random(6)+1;
  gewinn_zahlen[2]:= random(6)+1;
  gewinn_zahlen[3]:= random(6)+1;

  deine_zahlen[1]:= StrToInt(Edit1.Text);
  deine_zahlen[2]:= StrToInt(Edit2.Text);
  deine_zahlen[3]:= StrToInt(Edit3.Text);

  gewinn:= 0;
  for i := 1 to 3 do begin
    for j := 1 to 3 do
        if deine_zahlen[i] = gewinn_zahlen[j] then gewinn:= gewinn + 1;
  end;

  // Konto:= Konto + gewinn;

end;
Deine 3 Gewinnzahlen sind im Array "gewinn_zahlen" gespeichert. Die 3 Zahlen des Spielers in "deine_zahlen".
In der for-Schleife überprüfst du dann, ob die Zahlen der Spieler mit den Gewinnzahlen übereinstimmen.
Für jeden Treffer, gibt's 1Euro mehr aufs Konto.

Gruß, False Pretense.

P.S: Ich würde bei den Zufallszahlen drauf achten, dass keine doppelt vorkommt. Sonst bekommt man für einen Treffer 2 Euro.

Norbert987 8. Sep 2009 21:13

Re: Wuerfelspiel Hilfe!!! :(
 
Hallo xman236,

als kleinen Tipp, das würfeln lässt sich auch kürzer gestalten:
Delphi-Quellcode:
procedure TForm1.Button1Click(Sender: TObject);
begin
  Edit1.Text:=random(6)+1;
  Edit2.Text:=random(6)+1;
  Edit3.Text:=random(6)+1;
end;
Bei der anderen Procedure vermisse ich die getippte Zahl, die du wie Wolfgang geschrieben hat, dann nur abfragen brauchst ;)


EDIT: oh, False Pretense war schneller

Wolfgang Mix 8. Sep 2009 23:16

Re: Wuerfelspiel Hilfe!!! :(
 
@xman236

Nach unserem längeren netten Chat noch einige Tipps:

- Wenn Du beim nächsten mal eine Hausaufgabe zu lösen hast, melde Dich rechtzeitig im Forum und nicht am Abend davor. Das Forum ist nicht dazu gedacht, Hausaufgaben zu lösen. Dann wird Dir auch jeder hier im Forum gerne helfen.

- Arbeite die Tutorials von Delphi-Treff durch. Dann wirst Du die Grundlagen schneller verstehen.

- Arbeite anfangs nur mit einfachen Objekten. Fast alle einfachen Aufgaben lassen sich mit TButton, TLabel und TEdit erledigen.

- Beschreibe Dein Vorhaben genauer. Kaum einer hat hier wirklich begriffen, was Du wirklich vorhattest.

- Wenn das Deine erste Hausaufgabe ist, bestelle Deinem Lehrer schöne Grüße. Der muß Euch mehr Grundlagen auf den Weg geben.

-- Lasse Dich nicht einschüchtern, wir haben alle einmal ganz klein angefangen.

-- Komme bald rechtzeitig wieder, wir helfen gerne. ;-)

Gruß

Wolfgang


Alle Zeitangaben in WEZ +1. Es ist jetzt 16:39 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