I have a standard deck of 52 cards is represented in an array. Each card is represented as an integer. I wrote the below function to shuffle the cards. Does the code below l
This is formally now known as the 'Briggs' Shuffle
Module module1
Dim cards(51) As String
Dim trues(51) As Boolean
Dim number, Truecheck As Integer
Dim stores, loopy As String
Sub main()
number = 1
cards(0) = "Ace of Spades"
cards(10) = "Jack of Spades"
cards(11) = "Queen of Spades"
cards(12) = "King of Spades"
cards(13) = "Ace of Clubs"
cards(23) = "Jack of Clubs"
cards(24) = "Queen of Clubs"
cards(25) = "King of Clubs"
cards(26) = "Aec of Diamonds"
cards(36) = "Jack of Diamods"
cards(37) = "Queen of Diamonds"
cards(38) = "King of Diamonds"
cards(39) = "Ace of Hearts"
cards(49) = "Jack of Heats"
cards(50) = "Queen of Hearts"
cards(51) = "King of Hearts"
For i = 1 To 9
number = number + 1
cards(i) = number.ToString + " of Spades"
Next
number = 1
For i = 14 To 22
number = number + 1
cards(i) = number.ToString + " of Clubs"
Next
number = 1
For i = 27 To 35
number = number + 1
cards(i) = number.ToString + " of Diamonds"
Next
number = 1
For i = 40 To 48
number = number + 1
cards(i) = number.ToString + " of Hearts"
Next
For i = 0 To 51
Console.WriteLine(cards(i))
Next
Console.WriteLine("")
Console.WriteLine("")
For i = 0 To 51
linetrue:
Randomize()
stores = cards(i)
Truecheck = Int(Rnd() * 51)
If trues(Truecheck) = True Then GoTo linetrue
trues(i) = True
cards(i) = cards(Truecheck)
cards(Truecheck) = stores
Console.WriteLine(cards(i))
Next
End Sub
End Module