Expresiones en c ++

Variables y constantes son útiles sólo si se puede utilizar para realizar cálculos. El termino expresión es jerga C ++ para un cálculo. Ya ha visto la expresión más simple:

int n- // declarationn = 1- // expresión

Los programadores combinan variables, constantes y operadores para hacer expresiones. Un operador realiza alguna operación aritmética sobre sus argumentos. La mayoría de los operadores toman dos argumentos - estos son llamados operadores binarios. Unos pocos operadores toman un solo argumento - estos son los operadores unitarios.

Todas las expresiones devuelven un valor y un tipo.

Los operadores binarios

UN operador binario es un operador que toma dos argumentos. Si se puede decir var1 var2 op, entonces op debe ser un operador binario. Los operadores binarios más comunes son las mismas operaciones simples que usted ha aprendido en la escuela primaria. Los operadores binarios comunes aparecen en la tabla.

Los operadores matemáticos en orden de precedencia
PrecedenciaOperadorSentido
1- (unario)Devuelve el negativo de su argumento
2++ (Unario)Incremento
2- (unario)Decremento
3* (Binario)Multiplicación
3/ (Binario)División
3% (Binario)Modulo
4+ (binario)Adición
4- (binario)Sustracción
5=, * =,% =, + =, - = (especial)tipos de asignación

El binario más simple es el operador de asignación señalado del signo igual. El operador de asignación dice: “Toma el valor de la derecha; lado y almacenar a la ubicación de la izquierda; parte del operador.”

Multiplicación, división, suma, resta, y módulo son los operadores utilizados para llevar a cabo la aritmética. Ellos funcionan igual que los operadores aritméticos que ha aprendido en la escuela primaria, con las siguientes consideraciones especiales:

  • Multiplicación siempre debe constar expresamente y nunca se da a entender, ya que es en el álgebra. Consideremos el siguiente ejemplo:

    int n = 2- // declarar una variableint m = 2N // esto genera un error

    La expresión anterior no asigna metro el valor de 2 veces norte. En su lugar, C ++ trata de interpretar 2norte como nombre de variable. Dado que los nombres de variables no pueden comenzar con un dígito, se genera un error durante la fase de construcción.

    Lo que el programador quiso decir fue:

    int n = 2-int m = 2 * n- // esto es OK
  • La división entera desecha el resto. Por lo tanto, la siguiente:

    int n = 13 / 7- // asigna el valor 1 a n

    Catorce dividido por 7 es 2. Trece dividido por siete es 1.

  • El operador módulo devuelve el resto después de la división (Es posible que no recuerde módulo):

    int n = 13% 7- // establece n a 6

    Catorce de módulo siete es cero. Trece de módulo siete es seis.

Desenredar expresiones compuestas

Una sola expresión puede incluir múltiples operadores:

int n = 5 + 100 + 32-

Cuando todos los operadores son los mismos, C ++ evalúa la expresión de izquierda a derecha:

5 + 100 + 32 105 + 32 137

Cuando diferentes operadores se combinan en una sola expresión, C ++ utiliza una propiedad llamada precedencia. Precedencia es el orden que los operadores se evalúan en una expresión compuesto. Consideremos el siguiente ejemplo:

int n = 5 * 100 + 32-

¿Qué viene primero, multiplicación o adición? O se evalúa esta expresión simplemente de izquierda a derecha? Referirse de nuevo a la mesa, que te dice que la multiplicación tiene una precedencia de 3, que es más alta que la precedencia de adición, que es de 4 (los valores más pequeños tienen mayor precedencia). Por lo tanto la multiplicación se produce primero:

Video: 7. Programación en C++ || Expresiones || Ejercicio Expresiones 2 en C++

5 * 100 + 32 500 + 32 532

El orden de las operaciones es rechazada por la precedencia de los operadores. Como puedes ver

Video: 10. Programación en C++ || Expresiones || Ejercicio Raíz cuadrada y elevación

int n = 32 + 5 * 100-

genera el mismo resultado:

32 + 5 * 10032 + 500532

Pero lo que si realmente quiere 5 veces la suma de 100 más 32? Puede anular la precedencia de los operadores envolviendo expresiones que desea que se realice por primera vez en paréntesis, de la siguiente manera:

int n = 5 * (100 + 32) -

Ahora la adición se lleva a cabo antes de la multiplicación:

5 * (100 + 32) 5 * 132 660

Se pueden combinar paréntesis para hacer expresiones tan complicado como te gusta. C ++ siempre comienza con los paréntesis más profundo anidados puede encontrar y se abre camino a cabo.

(3 + 2) * ((100/20) + (50/5)) (3 + 2) * (5 + 10) 5 * 1575

Siempre se puede dividir expresiones complicadas utilizando variables intermedias. El siguiente es más seguro:

factor de int = 3 + 2-int director = (100/20) + (50/5) total de -INT = factor de * Directora-

Asignación de un nombre a valores intermedios también permite al programador para explicar las partes de una ecuación compleja - por lo que es más fácil para el próximo programador de entender.

Artículos Relacionados