okay
{1,2,3,4,5,6,7,8,9,...48,49,50,51,52,53.1,53.2→DECK
53.1=Joker A
53.2=Joker B
length(Str1→F
1→Z:F→dim(∟KEY
DelVar ∟KEYDelVar ∟DECK2DelVar ∟A
Lbl I
While Z<F+1
1→Y
For(X,1,54:If ∟DECK(X)=53.1:X→A:End ;find joker A
;-----------move joker A 1 down
If ∟DECK(A)=53.1 and A=54
Then
∟DECK(1→C:∟DECK(54→D:D→∟DECK(1:C→∟DECK(54
End
If ∟DECK(A)=53.1 and A not= 54
Then
∟DECK(A→C:∟DECK(A+1)→D:D→∟∟DECK(A:C→∟DECK(A+1)
End
;-----------end move joker A 1 down
For(X,1,54:If ∟DECK(X)=53.2:X→A:End ;find joker B
;-----------move joker B 2 down (3 down in calc lists,
rotate back to 1 if neccessary)
If A=52
Then
For(X,53,54
∟DECK(X→∟DECK(X-1)
End
53.2→∟DECK(54
End
If A=53
Then
For(X,52,2,-1
∟DECK(X→∟DECK(X+1)
End
53.2→∟DECK(2
End
If A=54
Then
For(X,53,3,-1
∟DECK(X→∟DECK(X+1)
End
53.2→∟DECK(3
End
If A<52
Then
∟DECK(A+1)→∟DECK(A
∟DECK(A+2)→∟DECK(A+1)
53.2→∟DECK(A+3)
End
;-----------end move joker B 2 down
1→Y:2→dim(∟A:54→dim(∟DECK2
For(X,1,54 ;find jokers
If int(∟DECK(X))=53
Then
X→∟A(Y
Y+1→Y
End
End
;triple cut-
;move everything from 1 to nearest joker to bottom,
;farther joker to 54 to back, everything in the middle
;stays
For(X,1,∟A(1)-1
∟DECK(X→∟DECK2(55-∟A(1)+X)
End
1→Y
For(X,∟A(2)+1,54
∟DECK(X→∟DECK2(Y
Y+1→Y
End
1→Y
For(X,1,54:If ∟DECK(X)=53.1:X→A:If ∟DECK(X)=53.2:X→B:End
{A,B→A:SortA(∟A
1→Y
For(X,∟A(1),∟A(2
∟DECK(X)→∟DECK2(54-∟A(2)+Y)
Y+1→Y
End
;-----------------end triple cut
DelVar ∟DECKDelVar ∟A
∟DECK2→∟DECK:∟DECK(54→A ;count cut number
54→dim(∟DECK2:∟DECK(54→∟DECK2(54
;------------count cut (according to ∟DECK(54)) i think
For(X,1,A i did this wrong
∟DECK(X→∟DECK2(53-A+X)
End
For(X,A+1,53
∟DECK(X→∟DECK2(54-(54-X)-A)
End
'------------end count cut
DelVar ∟DECK:∟DECK2→∟DECK:DelVar ∟DECK2
∟DECK(1→A
If int(A)=53:Goto I ;select key
∟DECK(A+1)→∟∟KEY(Z
Z+1→Z
End
Pause ∟KEY ;see key
when i press enter, with 5=F, the correct keys should be 4 49 10 24 8
i get 4 49 12 5 28