Baixe o app para aproveitar ainda mais
Prévia do material em texto
6.4 – A Declaração Switch A declaração switch é uma maneira fácil e elegante de se fazer uma tomada de decisão com múltiplas escolhas. Na declaração switch, a variável é sucessivamente testada contra uma lista de inteiros ou constantes caractere. Quando uma associação é encontrada, o conjunto de comandos associado com a constante é executado. Veja a sintaxe de switch abaixo: switch ( variável ) { case valor1: comandos; break; case valor2: comandos; break; ... case valorx; comandos; break; default: comandos; } A declaração switch testa o valor de uma única variável. Note que existem vários “case”, cada um associado a um determinado valor. A declaração comparará o valor da variável com o valor de cada um dos “case”: quando uma associação é encontrada, os comandos pertencentes ao “case” relacionado são executados. Se nenhuma associação for encontrada, a declaração switch executará os comandos pertencentes ao bloco default (note que o bloco default é opcional: caso ele não exista, caso nenhuma associação seja encontrada a declaração switch termina sem que nenhum comando seja executado). O exemplo abaixo demonstra uma utilização da declaração switch. #include <iostream> using namespace std; int main() { int option; cout<<"Digite a opção desejada:\n"; cout<<"1. Opção 1\n"; cout<<"2. Opção 2\n"; cout<<"3. Opção 3\n"; option = 0; cin>> option; switch(option) { case 1: cout<<"Você escolheu a primeira opção\n"; break; case 2: cout<<"Você escolheu a segunda opção\n"; break; case 3: cout<<"Você escolheu a terceira opção\n"; break; default: cout<<"Você escolheu uma opção inválida!\n"; } system("PAUSE > null"); return 0; } Após o fim de cada bloco de comandos “case”, é comum utilizar o comando “break;”. Este comando interrompe a execução do laço em que o programa se encontra, fazendo com que o programa prossiga para o próximo comando imediatamente após o laço. No caso de switch, o comando break assegura que a execução da declaração switch termine, forçando o programa à voltar para sua execução normal. Caso omitíssemos os comandos break; no fim de cada bloco, a declaração switch executaria os comandos presentes no “case” em que a associação foi encontrada, e continuaria a executar todos os comandos presentes em todos os “case” na sequência (incluindo o bloco default) até o término da declaração switch. Note que este comportamento pode ser útil em alguns programas, como por exemplo uma sequência de operações matemáticas onde utilizamos a declaração switch para escolher o ponto de partida da sequência.
Compartilhar