AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Thema durchsuchen
Ansicht
Themen-Optionen

draw poker, hand erkennung

Ein Thema von schmog · begonnen am 10. Jan 2007 · letzter Beitrag vom 1. Mär 2007
 
Benutzerbild von zecke
zecke

Registriert seit: 17. Jan 2004
494 Beiträge
 
Turbo Delphi für Win32
 
#3

Re: draw poker, hand erkennung

  Alt 1. Mär 2007, 17:10


Ich habe mal deinen Code herumgetestet, speziell um mir anzuschauen, wie das dem Deklarieren einer Klasse etc. funktioniert. Dafür eignet sich dein Ausschnitt bisher hervorragend

Meine Frage dazu: Wie kann ich denn die Kartenwerte in die Variablen schreiben?

Ich habe bisher ein bisschen herummodifiziert, was aber nicht funktioniert (Exception, Zugriffsverletzung):
Delphi-Quellcode:
unit Unit1;

interface

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

type
  TForm1 = class(TForm)
    Button1: TButton;
    procedure Button1Click(Sender: TObject);
  private
    { Private-Deklarationen }
  public
    { Public-Deklarationen }
  end;

type
  TKartenWert = 1..13; // 1 = AS, 11 = Bube, 12 = Dame, 13 = König
  TKartenFarbe = (kfKaro, kfHerz, kfPik, kfKreuz);
  TKartenPosition = 1..5;

  TKarte = class(TObject)
    private
      FWert: TKartenWert;
      FFarbe: TKartenFarbe;
      FPosition: TKartenPosition;
    public
      property RWert: TKartenwert read FWert;
      property RFarbe: TKartenFarbe read FFarbe;
      property RPosition: TKartenPosition read FPosition;
      property WWert: TKartenwert write FWert;
      property WFarbe: TKartenFarbe write FFarbe;
      property WPosition: TKartenPosition write FPosition;

end;

var
  Form1: TForm1;
  TBlatt: Array[1..5] of TKarte;

implementation

{$R *.dfm}

function isOnePair():Boolean;
begin
  result := ((TBlatt[1].RWert = TBlatt[2].RWert) and (TBlatt[1].RWert <> TBlatt[3].RWert));
end;

procedure TForm1.Button1Click(Sender: TObject);
begin
TBlatt[1].WWert:=1;
TBlatt[1].WFarbe:=kfKaro;
TBlatt[1].WPosition:=1;
{
TBlatt[2].WWert:=2;
TBlatt[2].WFarbe:=kfKaro;
TBlatt[2].WPosition:=2;

TBlatt[3].WWert:=3;
TBlatt[3].WFarbe:=kfKaro;
TBlatt[3].WPosition:=3;

TBlatt[4].WWert:=4;
TBlatt[4].WFarbe:=kfKaro;
TBlatt[4].WPosition:=4;

TBlatt[5].WWert:=5;
TBlatt[5].WFarbe:=kfKaro;
TBlatt[5].WPosition:=5;
}


isOnePair();
end;

end.
Mir ist übrigens klar, dass isOnePair nur die 1. beiden Karten auf ein Paar prüft und nur die 1. drei Karten brücksichtigt.


Wäre nett, wenn mir jemand helfen könnte, das System zu verstehen

Ich probiere und probiere, aber es will nicht so recht.
mfg zecke
  Mit Zitat antworten Zitat
 


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 00:38 Uhr.
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz