첫 번째 C++ 클래스 용 슬롯 머신을 만들어야하며 릴에 대한 열거 형 데이터 유형과 배열을 사용해야합니다. 내 프로그램은 현재 3 개의 릴 모든 프레임을 선택하지만 내 인생에서 나는 더 컴팩트하게 만드는 방법을 생각할 수 없습니다. if 문을 사용하여 승패 결과를 만들 수 있도록 모든 릴값을 유지해야합니다. 동일한 스위치를 통해 각 변수를 루프하는 방법이 있습니까?하나의 switch 문을 통해 다른 변수 보내기
#include <iostream>
#include <cstdlib>
#include <ctime>
using namespace std;
enum frameType {PETROLEUM=1, COAL, NATURAL_GAS, URANIUM, GLOBAL_WARMING,NUCLEAR_DISASTER, DIRT};
enum outcomeType {PETROLEUM_WIN, COAL_WIN, NATURAL_GAS_WIN, URANIUM_WIN, LOSS, DRAW};
int main()
{
srand(time(NULL));
frameType frm1;
int frameReel1[] = {1,1,1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,5,5,6,7,7,7,7,7};
int frameReel2[] = {1,1,1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,5,5,6,7,7,7,7,7};
int frameReel3[] = {1,1,1,1,1,1,2,2,2,2,2,3,3,3,3,4,4,5,5,6,7,7,7,7,7};
int RandIndex1 = rand() % 25;
int RandIndex2 = rand() % 25;
int RandIndex3 = rand() % 25;
int a = frameReel1[RandIndex1];
int b = frameReel2[RandIndex2];
int c = frameReel3[RandIndex3];
switch (a)
{
case PETROLEUM:
cout << "[petroleum]n";
break;
case COAL:
cout << "[coal]";
break;
case NATURAL_GAS:
cout << "[natural gas]";
break;
case URANIUM:
cout << "[uranium]";
break;
case GLOBAL_WARMING:
cout << "[global warming]";
break;
case NUCLEAR_DISASTER:
cout << "[nuclear disaster]";
break;
case DIRT:
cout << "[dirt]";
break;
}
switch (b)
{
case PETROLEUM:
cout << "[petroleum]";
break;
case COAL:
cout << "[coal]";
break;
case NATURAL_GAS:
cout << "[natural gas]";
break;
case URANIUM:
cout << "[uranium]";
break;
case GLOBAL_WARMING:
cout << "[global warming]";
break;
case NUCLEAR_DISASTER:
cout << "[nuclear disaster]";
break;
case DIRT:
cout << "[dirt]";
break;
}
switch (c)
{
case PETROLEUM:
cout << "[petroleum]";
break;
case COAL:
cout << "[coal]\n";
break;
case NATURAL_GAS:
cout << "[natural gas]";
break;
case URANIUM:
cout << "[uranium]";
break;
case GLOBAL_WARMING:
cout << "[global warming]";
break;
case NUCLEAR_DISASTER:
cout << "[nuclear disaster]";
break;
case DIRT:
cout << "[dirt]";
break;
}
} // end main