rand()関数を使用してカードのデッキをシャッフルしようとしていますが、何らかの理由で、シャッフルされたデッキがどのように見えるかを確認しようとすると、完全にシャッフルされていない状態で表示されます。何が足りないのかわからないので、助けていただければ幸いです。
void Deck::Shuffle()
{
for (int j = 0; j <= 51; j++)
{
srand(time(0));
int i = 1 + rand()%52;
int k = 1 + rand()%52;
Card temp = theDeck[i];
theDeck[i] = theDeck[k];
theDeck[k]= temp;
}
}
編集:皆さんの助けに感謝します。今読むようにコードを修正しました。
void Deck::Shuffle()
{
srand(time(0));
for (int j = 0; j <= 51; j++)
{
int i = 1 + rand()%52;
int k = 1 + rand()%52;
Card temp = theDeck[i];
theDeck[i] = theDeck[k];
theDeck[k]= temp;
}
}