Page cover

🔀Switch

Оператор множественного выбора.

Оператор switch в C++ используется для выбора одной из нескольких веток кода в зависимости от значения целочисленного или символьного выражения.

Синтаксис
switch (выражение) {
  case значение1:
    // код для значения1
    break;
    
  case значение2:
    // код для значения2
    break;

  default:
    // код, выполняемый по умолчанию, если ни один из случаев не совпадает
}

break - Завершает case и дальнейшее выполнение оператора.


Небольшой пример написания теста при помощи оператора switch

Пример switch
cout << "Выберите вариант ответа:" << endl << endl;
cout << "Какая самая большая страна в мире?\n\n1. Соединенные Штаты Амиерики\n2. Российская Федерация\n3. Канада\n4. Китай" << endl << endl;


int number;        // объявляем целочисленную переменную
cin >> number;     // инициализируем переменную


switch (number)    
{

case 1  :                         // если пользователь ввел: 1, то вывести: "НЕВЕРНО!"
	cout << "НЕВЕРНО!";
		break;

case 2 :		          // если пользователь ввел: 2, то вывести: "ВЕРНО!"
	cout << "ВЕРНО!";        
	break;

case 3 :
	cout << "НЕВЕРНО!";
	break;

case 4 :
	cout << "НЕВЕРНО!";
	break;


default: 
	cout << "Такого варианта ответа не существует!" << endl; // ответ при других значениях переменной
	break;
}

Выше написанный пример теста с использованием оператора switch можно продлить добавив большее количество вопросов, а так же сделать подсчет балов с помощью конструкции if и применения инкремента для добавления баллов за каждый правильный ответ. В конце же просто выводим нашу переменную к которой мы каждый раз прибавляли единицу за правильный ответ. cout << "Ваш результат: " << x << "/3";

Простой тест написанный на c++ с применением switch для выбора варианта ответа и if для подсчета баллов
Полный код теста
cout << "Выберите один вариант ответа:" << endl << endl;

cout << "====================================================" << endl << endl;
cout << "Какая самая большая страна в мире?\n\n1. Соединенные Штаты Амиерики\n2. Российская Федерация\n3. Канада\n4. Китай" << endl << endl;
cout << "====================================================" << endl << endl;

int number;
cin >> number;


switch (number)
{

case 1  : 
	cout << "Неверно!";
		break;

case 2 :
	cout << "Верно!";
	break;

case 3 :
	cout << "Неверно!";
	break;

case 4 :
	cout << "Неверно!";
	break;


default: 
	cout << "Такого варианта ответа не существует!" << endl;
	break;
}


int x = 0;

if ( number == 2 )
{
	x++;
}




cout << "Выберите один вариант ответа:" << endl << endl;

cout << "====================================================" << endl << endl;
cout << "2 + 2 * 2 = ?" << endl << endl;
cout << "====================================================" << endl << endl;

int number2;
cin >> number2;


switch (number2)
{

case 6:
	cout << "Верно!";
	break;


default:
	cout << "Неверно!" << endl;
	break;
}





if (number2 == 6)
{
	x++;
}


cout << "Выберите один вариант ответа:" << endl << endl;

cout << "====================================================" << endl << endl;
cout << "Президент США убитый Ли Харви Освальдом?\n\n1. Джон Кеннеди\n2. Джордж Буш\n3. Барак Обама\n4. Дональд Трамп" << endl << endl;
cout << "====================================================" << endl << endl;

int number3;
cin >> number3;

switch (number3)
{

case 1:
	cout << "Верно!";
	break;

case 2:
	cout << "Верно!";
	break;

case 3:
	cout << "Неверно!";
	break;

case 4:
	cout << "Неверно!";
	break;


default:
	cout << "Такого варианта ответа не существует!" << endl;
	break;
}

if (number3 == 1)
{
	x++;
}


cout << "Ваш результат: " << x << "/3";

Last updated