Interesting thread. I am not a casino goer so do not appreciate some of the terminology nor the intricacies.
But I was curious as to whether or not there was a minimum/maximum number of cards when "cutting the deck". I found this on wikipedia.
If you have 312 cards in your shuffled "pile", it seems you could get a random number between your minimum and maximum cards in a cut, then use that number for your TOP N, then use your idea of placing the top cut on the bottom and the original bottom on top.
If the MinCountInCut is X and the MaxCountInCut is Y where X<Y, then your N (the number of cards in the cut) would have X<=N<=Y.
Here is a randomNumber function I have used, but you may find, or have, something that works better for you.
Code:
Function randomNumber(Lo As Long, Hi As Long) As Long
10 On Error GoTo randomNumber_Error
20 Randomize
30 randomNumber = Int((Hi - Lo + 1) * Rnd + Lo)
40 On Error GoTo 0
randomNumber_Exit:
50 Exit Function
randomNumber_Error:
60 MsgBox "Error " & Err.number & " (" & Err.Description & ") in procedure randomNumber of Module AccessMonster"
70 GoTo randomNumber_Exit
End Function
Here is some sample code re cutting deck of 312 cards where the cut must be 10 cards or greater. This is just a guess at how this could be done. The value would be the N as above.
Code:
Sub testrandomCut()
'simulate cutting a 312 card deck
'where min cut is 10 and max cut is 302
Dim DeckSize As Long: DeckSize = 312
Dim minCountInCut As Long: minCountInCut = 10
Dim maxCountInCut As Long: maxCountInCut = DeckSize - minCountInCut
Dim i As Integer
For i = 1 To 20
Debug.Print "For cut (" & i & ") N is at card number: " & randomNumber(minCountInCut, maxCountInCut)
Next i
End Sub
Here are 20 random cut values
Code:
For cut (1) N is at card number: 161
For cut (2) N is at card number: 96
For cut (3) N is at card number: 134
For cut (4) N is at card number: 80
For cut (5) N is at card number: 28
For cut (6) N is at card number: 106
For cut (7) N is at card number: 165
For cut (8) N is at card number: 68
For cut (9) N is at card number: 66
For cut (10) N is at card number: 287
For cut (11) N is at card number: 246
For cut (12) N is at card number: 106
For cut (13) N is at card number: 155
For cut (14) N is at card number: 225
For cut (15) N is at card number: 13
For cut (16) N is at card number: 124
For cut (17) N is at card number: 222
For cut (18) N is at card number: 65
For cut (19) N is at card number: 166
For cut (20) N is at card number: 234
I hope the above is useful.
Good luck.