Мне нужно создать игровой автомат для моего первого класса C++, и я должен использовать нумерованный тип данных и массив для барабанов. Моя программа в настоящее время выбирает все три барабана случайных кадров, но для жизни меня, я не могу придумать способ сделать ее более компактной. Мне нужно сохранить все значения барабанов, чтобы я мог создать результат выигрыша или потери с помощью утверждений 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