Я пытался написать этот код для упражнения, которое представляет и позволяет пользователю выбрать напиток, введя число, соответствующее выбранному напитку (1 - 5). Затем он распечатывает с указанием того, какой напиток они выбрали, и сообщение об ошибке, если они вводят что-либо за пределами 1-5.
Ниже приведен код функции:
#include <vector>
std::string Vending (){
int num;
std::vector<std::string> beverage ={"Coke", "Sprite", "Water", "Pepsi", "7-Up"};
std::cin >> num;
switch (num){
case (1) :
std::cout << "You have chosen " << beverage[num-1];
break;
case (2) :
std::cout << "You have chosen " << beverage[num-1];
break;
case (3) :
std::cout << "You have chosen " << beverage[num-1];
break;
case (4) :
std::cout << "You have chosen " << beverage[num-1];
break;
case (5) :
std::cout << "You have chosen " << beverage[num-1];
break;
default :
std::cout << "Error, choice was not valid, here is your money back.\n";
break;
}
}
Программа работает нормально, но мне просто интересно, есть ли способ сделать switch()
короче, скажем, поместив диапазон в кейс, например case(//range from 1-5)
вместо записи каждого кейса индивидуально для каждого номера кейса.
Любые советы будут оценены! :)