私はスロットマシンのコードで作業していましたが、リールの入力があり、発生するさまざまな組み合わせをすべてコーディングしました。私はそれをファイルに出力し、十分なすべてがそこにあることを確認します。今、私は何とかすべての組み合わせをスキャンし、支払いのルール(2倍、3倍、5倍の同じシンボル)に基づいて、2勝があればルールに従う必要があります。 aabbb
より高い支払うものだけが支払われるなら、すべての支払条件のためのカウンターを作る。トラフの組み合わせをスキャンする方法を理解する必要があります
#include <stdio.h>
int main() {
freopen("C:\\tmp\\output.txt", "w", stdout);
char reel1[37] = { 'A', '1', 'W', 'Q', '9', 'L', '1', 'J', 'H', 'Q', '9', 'W', '1', 'A', 'M', 'K', 'Q', 'L', 'A', '9', '1', 'M', 'K', 'Q', 'H', '9', 'A', 'Q', 'K', 'T', '9', 'J', 'W', '9', '1', 'L', '9' };
char reel2[36] = { 'A', 'K', 'L', '1', '9', 'M', 'J', '1', 'K', 'M', 'Q', '9', 'T', 'A', '1', 'Q', 'W', 'K', '9', 'L', 'J', '1', 'Q', 'L', 'K', 'J', 'W', 'A', '9', 'K', 'H', 'Q', '1', 'K', 'Q', '1' };
char reel3[35] = { 'J', 'K', '9', 'A', '1', 'Q', 'L', '9', 'A', '1', 'T', 'J', '9', 'A', 'H', '1', 'J', '9', 'L', 'Q', '1', 'J', 'H', '9', 'K', '1', 'M', 'A', 'J', 'K', 'W', '9', '1', 'J', '1' };
char reel4[32] = { 'K', 'A', 'L', 'Q', '1', 'M', 'A', 'K', 'J', 'M', 'Q', '1', 'H', 'J', 'A', 'K', 'M', '9', 'J', 'H', '1', 'Q', '9', 'J', '1', 'W', 'K', '9', 'J', 'T', '1', 'J' };
char reel5[32] = { 'J', '1', 'Q', 'W', 'K', '9', 'Q', 'J', 'K', '9', '1', 'H', 'J', '9', 'A', 'M', '9', 'J', '1', '9', 'L', 'A', '9', 'J', 'L', '9', 'K', 'Q', '9', 'T', 'K', 'Q' };
int a, b, c, d, e;
for (a = 0; a <= 36; a++) {
for (b = 0; b <= 35; b++) {
for (c = 0; c <= 34; c++) {
for (d = 0; d <= 31; d++) {
for (e = 0; e <= 31; e++) {
printf("%c%c%c%c%c\n", reel1[a], reel2[b], reel3[c], reel4[d], reel5[e]);
}
}
}
}
}
return 0;
}
私は今、このタックルはどうすればよい:ここで
は、私がこれまで持っているものでしょうか?私はすべての配当の組み合わせに対してカウンターを設置しなければならないことを知っています。一度それが現れれば、リールで最高の支払いです。しかしそこに着く方法は私を打ち負かす。すべての組み合わせをスキャンする方法は?誰でも提案がありますか?
あまりにも巣立つ! –
提案: 'for(a = 0; a <= 36; a ++)'の代わりに 'for(a = 0; a <37; a ++)'を書くことは、配列が '37 'ハードコードされた値に頼るのを避けるために 'for(a = 0; a <(int)(sizeof(reel1)/ sizeof(* reel1)); a ++)'と書くこともできます。 – chqrlie
@chqrlieありがとう、私はそれに変更しました。ハードコードされた値については、今のところ私にとっては大したことではありません。なぜなら、私がこれを行うために必要なのは、これを一度実行して、必要なものを私に与えることだけだからです。 –