switch (өрнек) { case n1 : 1оператор; break; case n2 : 2оператор; break; case nk : Коператор; break; default : Nоператор; break; } Таңдау операторды орындау өрнектің (селектордың) мәнін есептеуден басталады. Содан кейін таңдау операторы осы мәнге сәйкес болатын тұрақты тұрған операторға басқаруды береді. Егер де сәйкестік табылмаса, default операторынан кейін орнатылған оператор орындалады. Мысалы,
switch (i) { case l: x=0; break; case 2: x=2*x; break; case 100: x=sin (x); break; default: x=cos(x); break; } z=x; … Мысалда, i селекторы, мысалы, 100 мәнін қабылдаса, x=sin(x) операторы орындалады, содан кейін басқару z=x операторға беріледі.
Таңдау switch операторында default операторын орнатпауға болады. Оператордың әр тармағында орнатылған break операторы ағынды операторды аяқтап басқаруды бағдарламаның келесі операторына беруді білдіреді. Егер де break операторы болмаса, бағдарлама break операторыкездескенше немесе switch операторының аяғына дейін орындалады.
Шартпен өту операторының альтернативасы болып С++ тілінде үштік шартты ?: операторы болады. Бұл үш операндпен жұмыс жасайтын жалғыз оператор. Бұл оператор үш өрнекті қабылдап, мәнді қайтарады:
(1өрнек) ? 2өрнек: 3өрнек; Операторды орындау 1өрнек-ті есептеуден басталады. Егер де өрнек ақиқат болса, нәтижесі 2өрнек болады, кері жағдайда нәтижесі 3өрнек болады. Мысалы, mах = (х>у) ? х: у; операторы екі х және у сандардың максималдысын анықтайды.
Тапсырма нұсқалары 1.
21. х – аргументіне берілген мән бойынша f(x) функциясын есептеу программасын және алгоритмнің блок-схемасын құру. f(x) функциясының мәні шартты оператор көмегімен есептеледі.
f(x)=
#include
#include using namespace std;
int main(int argc, char** argv)
{double x;
float f;
cout <<"x= ";
cin>>x;
if (x<=7) f=3*cos(2*x+2);
else if (7else if (x>=8) f=log(pow(x,3));
cout<<"f="<return 0;
}