Команда вибору має вигляд:
switch(<вираз>);
{
case<ознака 1> : <команда 1>; break;
…
case<ознака N> : <команда N>; break;
default : <команда N+1>;
}
|
Вираз та ознаки мають бути цілочисельні. Оскільки транслятор мови С++ може розглядати значення змінних типу charі enum як цілі дані, то на місці виразу та ознак можуть бути сталі цілого, символьного або перерахованого типів. На місці команд 1 – N може бути одна команда, декілька або не бути жодної команди. Команда break не є обов’язковою і записується у разі потреби. Вона слугує для виходу з команди switch.
Складова частина default : <команда N+1> також може бути відсутня – тоді матимемо коротку форму команди вибору switch.
Дія команди. Якщо значення виразу збігається зі значенням ознаки п, то виконується команда з номером п і розглядається наступний за нею рядок case і т. д. Для того, щоб припинити дію команди switch, наприклад, після виконання команди п (тобто щоб вийти з цієї команди), записують команду break;. Якщо значення виразу не збігається із жодною з ознак, то виконується команда N+1 або, у випадку короткої форми, наступна команда після команди switch.
Задача 4 (про квитки).Нехай населені пункти позначені номерами від 1 до 8. Вартість одного квитка до конкретного пункту k визначається так:

Скільки коштуватимуть т квитків до населеного пункту, номер k якого вводять з клавіатури?
#include<iostream.h>
#include<conio.h>
voidmain()
{
intk, m;________________________________________________________
floatcina;_________________________________________________________
cout<< “Уведіть номер k населеного пункту і кількість квитків m ”;
cin >> k >> m;
switch(k)___________________________________________________________
{
case1: cina = 22; break;______________________________________________
case2:____________________________________________________________
case3:
case4: cina = 25; break;_____________________________________________
case5:
case6: cina = 30; break;_________________________________________________
case7:
case8: cina = 35; break;
default:______________________________________________________________
cout<< “Дані введено неправильно \n”;
cina = 0;_____________________________________________________________
}
cout<< m << “квитків до пункту” << k << “ коштують”;_____________________
cout<< cina *m << “ грн”;______________________________________________
getch();
}
Якщо під час виконання програми дані ввести так: 3 5, то на екрані матимемо: 5 квитків до пункту 3 коштують 125 грн.