00-自测5. Shuffling Machine (20)

#include "stdio.h"
#include "string.h"
#define NUM 54
void  other();
void OutputWord(int a);
int main()
{

	char card[54][4];
	char temp_card[54][4];
	char temp[4];
	int n;
	int i;
	int	j=0;
//	int a[54];
   int a[54]={36,52,37,38,3,39,40,53,54,41,11,12,13,42,43,44,2,4,23,24,25,26,27,6,7,8,48,49,50,51,9,10,14,15,16,5,17,18,19,1,20,21,22,28,29,30,31,32,33,34,35,45,46,47};
	n =2;
   /*	 scanf("%d", &n);
     for(i = 0; i < NUM; ++i)  
		scanf("%d", &a[i]);  
    */	
	for(i=0;i<13;i++)
	{
		sprintf(temp,"S%d",i+1);
		strcpy(card[j++],temp);
	}	
	for(i=0;i<13;i++)
	{
		sprintf(temp,"H%d",i+1);
		strcpy(card[j++],temp);
	}
	for(i=0;i<13;i++)
	{
		sprintf(temp,"C%d",i+1);
		strcpy(card[j++],temp);
	}
	for(i=0;i<13;i++)
	{
		sprintf(temp,"D%d",i+1);
		strcpy(card[j++],temp);
	}
	for(i=0;i<2;i++)
	{
		sprintf(temp,"J%d",i+1);
		strcpy(card[j++],temp);
	}
	while(n)
	{
		n--;
		//		printf("36[%s] \n",card[36-1]);
		for(i=0;i<54;i++)
			strcpy(temp_card[a[i]-1],card[i]);	
		for(i=0;i<54;i++)
			strcpy(card[i],temp_card[i]);

	}

	for(i=0;i<53;i++)
		printf("%s ",card[i]);
	printf("%s\n",card[i]);
	return 0;
}




 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
A shuffling machine in C++ can be implemented using an array to represent the deck of cards and using the random number generator to shuffle the cards. Here is a sample code for a shuffling machine: ``` #include <iostream> #include <cstdlib> #include <ctime> using namespace std; const int NUM_CARDS = 52; class ShufflingMachine { private: int deck[NUM_CARDS]; int position; public: ShufflingMachine() { for (int i = 0; i < NUM_CARDS; i++) { deck[i] = i; } position = 0; } void shuffle() { srand(time(NULL)); for (int i = 0; i < NUM_CARDS; i++) { int j = rand() % NUM_CARDS; swap(deck[i], deck[j]); } position = 0; } int dealCard() { if (position >= NUM_CARDS) { shuffle(); } return deck[position++]; } }; int main() { ShufflingMachine shuffler; shuffler.shuffle(); for (int i = 0; i < NUM_CARDS; i++) { cout << shuffler.dealCard() << " "; } cout << endl; return 0; } ``` In this code, the `ShufflingMachine` class represents the shuffling machine. The `deck` array stores the deck of cards, and the `position` variable keeps track of the current position in the deck. The `shuffle` method shuffles the deck by randomly swapping cards. It uses the `srand` function to seed the random number generator with the current time, and the `rand` function to generate random indices for swapping cards. The `dealCard` method deals the next card from the deck. If the deck has been exhausted, it calls the `shuffle` method to shuffle the cards again. In the `main` function, we create a `ShufflingMachine` object and shuffle the cards. Then we deal all the cards and print them out.
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值