¿Cómo crear una calculadora con la sentencia switch en C ++
Puede utilizar la sentencia switch en C ++ para hacer elecciones entre opciones. El seguimiento SwitchCalculator programa utiliza el interruptor declaración para implementar una simple calculadora:
// SwitchCalculator - utilizar la sentencia switch a // implementar una calculadora # include#include #include using namespace std-int main (int nNumberofArgs, char * pszArgs []) {// introducir operando1 op operand2int nOperand1-int nOperand2-char cOperator-cout lt; lt; "Enter 'valor1 valor2 op' n" lt; lt; "donde op es +, -, *, / o%:" lt; lt; endl-cin >> nOperand1 >> cOperator >> nOperand2 - // echo lo que el operador enteredcout lt; lt; nOperand1 lt; lt; "" Lt; lt; cOperator lt; lt; "" Lt; lt; nOperand2 lt; lt; "=" - // Ahora calcular la resultante recuerde que el usuario // podría introducir algo unexpectedswitch (cOperator) {case '+': cout lt; lt; nOperand1 + nOperand2-break-case '-': cout lt; lt; nOperand1 - nOperand2-break-caso '*': caso "x": caso 'X': cout lt; lt; nOperand1 * nOperand2-break-caso '/': cout lt; lt; nOperand1 / nOperand2-break-caso '%': cout lt; lt; nOperand1% nOperand2-break-default: // no entendieron la operatorcout lt; lt; "No se entiende" -} cout lt; lt; endl - // espera hasta que el usuario esté listo antes del programa // terminar para permitir al usuario ver el resultscout programa lt; lt; "Pulse Intro para continuar ..." lt; lt; endl-cin.ignore (10, ' n') - cin.get () - volver 0-}
Este programa comienza por preguntar al usuario para entrar "op valor2 valor1" dónde op es uno de los operadores aritméticos comunes +, -, *, / o%. El programa lee entonces las variables nOperand1, cOperator, y nOperand2.
El programa comienza haciéndose eco de vuelta al usuario lo que lee desde el teclado. De ello se deduce esto con el resultado del cálculo.
Haciéndose eco de la entrada de nuevo al usuario es siempre una buena práctica de programación. Le da al usuario la confirmación de que el programa leyó su entrada correctamente.
los interruptor en cOperator que diferencia entre las operaciones que esta calculadora implementa. Por ejemplo, en el caso de que cOperator es '+', el programa informa de la suma de nOperand1 y nOperand2.
Porque 'X' es otro símbolo común para multiplicar, el programa acepta '*', 'X', y 'X' todos como sinónimos de multiplican utilizando el caso " caer al " característica. El programa emite un mensaje de error si cOperator no coincide con ninguno de los operadores conocidos.
La salida desde unas pocas carreras de muestra aparece como sigue:
Enter 'op valor1 value2'where op es +, -, *, / o%:22 x 622 x 6 = 132Press Intro para continuar. . .Enter 'Valor1 op value2'where op es +, -, *, / o%:22/622/6 = 3 Pulse Intro para continuar. . .Enter 'Valor1 op value2'where op es +, -, *, / o%:22% 622% 6 = 4 Pulse Intro para continuar. . .Enter 'Valor1 op value2'where op es +, -, *, / o%:22 $ 622 $ 6 = no understoodPress Intro para continuar. . .
Observe que la recta final ejecuta el caso predeterminado de la interruptor declaración ya que el carácter '$' no encontró ninguno de los casos.