Оператор case - многовариантен избор

оператор case - параметър естествено число
оператор case - параметър символ
оператор switch - многовариантен избор

Описание на оператор case - свързано е с оператор switch. Чрез оператор switch и вложени в него няколко оператори case е възможно алгоритъмът на дадена програма да се разклони в множество посоки. Параметърът, предаван на оператор switch се ползва за селектор и указва кой от случаите за оператор case трябва да бъде изпълнен. Форматът е: case константа 1 : оператор(и) 1 ; break; Изпълнява се само съставният оператор за един определен case - определен от стойността на селектора параметър в оператор switch. Ако няма равенство в подадения на switch параметър и описаните стойности за case се изпълнява съставният оператор след оператор default. Близък до действието на оператор case е оператор if. Особеното при него е, че с една конструкция if ...else са възможни само две възможности, две посоки на разклонение.

  Операторът switch изисква за параметър целочислена променлива от тип изброим, след това се изброяват отделните случаи чрез оператор case. Съвпадението на параметъра с числото в case води до изпълнение на съответния случай. Езикът допуска въвеждане и на стойности от типа char, като се прави разлика между малки и големи букви. Операторът break се ползва, за да се преустанови търсене на друга възможност - за ускоряване работата на програмата.
  Ако в тялото на switch има няколко еднакви стойности се извежда съобщение за грешка.
  Като последен ред в тялото на switch се ползва оператор default. Този последен ред ще се изпълни само, ако няма съответствие между въведената стойност в switch и описаните стойности за case.

Начало на страницата

оператор case - параметър естествено число

В следващия пример по въведено естествено число от интервала [0..5] се извежда име на континент - за всяко цяло число от указания интервал съответства отделен оператор case.

#include <iostream>
using namespace std;

int main ()
{ int N;
  cout<<"Da se systawi programa, chrez koqto se wywevda cqlo chislo N\n";
  cout<<"ot interwala [0..5]. Programata chrez operator case da izwevda edin ot kontinentite.\n";
  cout<<"Da se izwevda syobshenie za greshka, ako chisloto e izwyn interwala.\n";
  cout<<"Primer: 3 Izhod: Australia.\n";
 cout<<"Wywedete cqlo chislo [0..5]: ";cin>>N;
  switch (N) 
  {  //operator switch N selector za case
  //operator break - za da ne prowerqwa ostanalite sluchai
  //operator case - izbroima stojnost cqlo chislo
   case 0: cout<<"Africa\n"; break;
   case 1: cout<<"America\n"; break;
   case 2: cout<<"Antarctic\n"; break;
   case 3: cout<<"Australia\n"; break;
   case 4: cout<<"Asia\n"; break;
   case 5: cout<<"Europe\n"; break;
   //kliuchowa duma default - ako ne e izpylneno nito edno ot uslowiqta
   default: cout<<"Wywedenoto chislo da e w granicite [0..5].\n";
 }// kraj operator switch 
system("pause");
  return 0; 
} //kraj na programa operator case 

Начало на страницата

оператор case - параметър символ

Да разгледаме примерна програма илюстрираща решение на задачата, в която по въведен главна буква от интервала [A..F] се извежда име на континент. Знакът е различен за всеки от изброените случаи case и задължително се загражда с единични кавички - апостроф. Отново ще използваме оператор case за многовариантен избор.

#include <iostream>
using namespace std;

int main ()
 { char K;
  cout<<"Da se systawi programa, chrez koqto se wywevda glawna bukwa K\n";
  cout<<"ot interwala [A..F]. Programata da izwevda edin ot kontinentite.\n";
  cout<<"Da se izwevda syobshenie za greshka, ako bukwata e izwyn interwala.\n";
  cout<<"Primer: D Izhod: Australia.\n";
  cout<<"Wywedete bukwa [A..F]: ";cin>>K;
  switch (K) 
  {  //operator switch K selector za case
  //operator - kliuchowa duma break - za da ne prowerqwa ostanalite sluchai
  //operator - kliuchowa duma case - izbroima stojnost cqlo chislo
  case 'A': cout<<"Africa\n"; break;
  case 'B': cout<<"America\n";break;
  case 'C': cout<<"Antarctic\n";break;
  case 'D': cout<<"Australia\n"; break;
  case 'E': cout<<"Asia\n"; break;
  case 'F': cout<<"Europe\n";break;
   // operator default - ako ne e izpylneno nito edno ot uslowiqta
    default: cout<<"Wywedenata bukwa trqbwa da e w granicite [A..F].\n";
} //  kraj operator switch 
 system("pause");
 return 0; 
} //kraj na programa operator case 

Обяснени и решени задачи с подобни алгоритми, функции и служебни думи са разгледани в страницата с електронни уроци по информатика - програмиране.
Илюстриране работата на характерни алгоритми можете да намерите в предоставените електронни помагала съдържащи решени задачи, примери.

Начало на страницата

 
Размер на шрифта
Increase Font Size Option 3 Reset Font Size Option 3 Decrease Font Size Option 3
Bulgarian Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish
Търсене в сайта: