私のクラスプログラミングプロジェクトでは、数字と文字を入力してカード番号とスーツを指定できるプログラムを作成します(たとえば、Diamondsの2とD = 2)。VBポーカーハンドエバリュエーター
これは、それがどのように見えるかです: Poker
これは私がこれまで持っているコードです:
Public Class frmPoker
Private Sub btnDisplay_Click(sender As Object, e As EventArgs) Handles btnDisplay.Click
Dim cards(4) As Integer
Dim suit(4) As String
cards(0) = CInt(txtCard1.Text)
cards(1) = CInt(txtCard2.Text)
cards(2) = CInt(txtCard3.Text)
cards(3) = CInt(txtCard4.Text)
cards(4) = CInt(txtCard5.Text)
Dim card = From item In cards
Select item
Distinct
If card.Count = 4 Then
txtDisplay.Text = "One Pair"
ElseIf card.Count = 3 Then
txtDisplay.Text = "Three of a kind"
ElseIf card.Count = 2 Then
txtDisplay.Text = "Four of a kind"
End If
suit(0) = txtSuit1.Text
suit(1) = txtSuit2.Text
suit(2) = txtSuit3.Text
suit(3) = txtSuit4.Text
suit(4) = txtSuit5.Text
Dim suits = From item In suit
Select item
Distinct
If suits.Count = 1 Then
txtDisplay.Text = "Flush"
End If
私は満員とストレートフラッシュを決定するアプローチするかどうかはわかりません。また、例えば2つの2つと2つの3つがある場合、プログラムは実際には3つの種類のものであると判断する。
[これは興味深いかもしれません](http://stackoverflow.com/a/38129686/1070452)。キーは高値から低値まで評価され、FullHouseは旅行やペアとして見えません。 – Plutonix
私はそのコードのいくつかを、あなたがどこかでニックネームを入れて、イントロクラスで覆われたものではないと思っていますか? – Plutonix
クラスからです。本は簡単にLINQに行きます。残念ながら、少なくとも(私にとっては)事を説明する良い仕事をしません。 – Bubblebeard