Instrução C++ switch..case
Instrução C++ switch..case
Neste tutorial, aprenderemos sobre a instrução switch e seu funcionamento na programação C++ com a ajuda de alguns exemplos.
O switch
instrução nos permite executar um bloco de código entre muitas alternativas.
A sintaxe do switch
declaração em C++ é:
switch (expression) {
case constant1:
// code to be executed if
// expression is equal to constant1;
break;
case constant2:
// code to be executed if
// expression is equal to constant2;
break;
.
.
.
default:
// code to be executed if
// expression doesn't match any constant
}
Como funciona a instrução switch?
Os
expression
é avaliado uma vez e comparado com os valores de cada case
etiqueta. - Se houver uma correspondência, o código correspondente após o rótulo correspondente será executado. Por exemplo, se o valor da variável for igual a
constant2
, o código apóscase constant2:
é executado até que a instrução break seja encontrada. - Se não houver correspondência, o código após
default:
é executado.
Observação :Podemos fazer o mesmo com o
if...else..if
escada. No entanto, a sintaxe do switch
declaração é mais limpa e muito mais fácil de ler e escrever. Fluxograma da declaração do switch
Exemplo:crie uma calculadora usando a instrução switch
// Program to build a simple calculator using switch Statement
#include <iostream>
using namespace std;
int main() {
char oper;
float num1, num2;
cout << "Enter an operator (+, -, *, /): ";
cin >> oper;
cout << "Enter two numbers: " << endl;
cin >> num1 >> num2;
switch (oper) {
case '+':
cout << num1 << " + " << num2 << " = " << num1 + num2;
break;
case '-':
cout << num1 << " - " << num2 << " = " << num1 - num2;
break;
case '*':
cout << num1 << " * " << num2 << " = " << num1 * num2;
break;
case '/':
cout << num1 << " / " << num2 << " = " << num1 / num2;
break;
default:
// operator is doesn't match any case constant (+, -, *, /)
cout << "Error! The operator is not correct";
break;
}
return 0;
}
Saída 1
Enter an operator (+, -, *, /): + Enter two numbers: 2.3 4.5 2.3 + 4.5 = 6.8
Saída 2
Enter an operator (+, -, *, /): - Enter two numbers: 2.3 4.5 2.3 - 4.5 = -2.2
Saída 3
Enter an operator (+, -, *, /): * Enter two numbers: 2.3 4.5 2.3 * 4.5 = 10.35
Saída 4
Enter an operator (+, -, *, /): / Enter two numbers: 2.3 4.5 2.3 / 4.5 = 0.511111
Saída 5
Enter an operator (+, -, *, /): ? Enter two numbers: 2.3 4.5 Error! The operator is not correct.
No programa acima, estamos usando o
switch...case
instrução para realizar adição, subtração, multiplicação e divisão. Como este programa funciona
- Primeiro, solicitamos que o usuário insira o operador desejado. Esta entrada é então armazenada no
char
variável chamada oper . - Em seguida, solicitamos que o usuário insira dois números, que são armazenados nas variáveis flutuantes num1 e num2 .
- Os
switch
A instrução é então usada para verificar o operador digitado pelo usuário:- Se o usuário digitar
+
, a adição é realizada nos números. - Se o usuário digitar
-
, a subtração é realizada nos números. - Se o usuário digitar
*
, a multiplicação é realizada nos números. - Se o usuário digitar
/
, a divisão é realizada nos números. - Se o usuário digitar qualquer outro caractere, o código padrão será impresso.
- Se o usuário digitar
Observe que o
break
instrução é usada dentro de cada case
quadra. Isso encerra o switch
declaração. Se o
break
instrução não é usada, todos os casos após o case
correto são executados. Linguagem C