4.9.12 Operadores relacionales
1 Sinopsis
Los operadores relacionales, también denominados operadores binarios lógicos y de comparación, se utilizan para comprobar la veracidad o falsedad de determinadas propuestas de relación (en realidad se trata respuestas a preguntas). Las expresiones que los contienen se denominan expresiones relacionales. Aceptan diversos tipos de argumentos, y el resultado, que es la respuesta a la pregunta, es siempre del tipo cierto/falso, es decir, producen un resultado booleano ( 3.2.1b)
Si la propuesta es cierta, el resultado es true (un valor distinto de cero), si es falsa false (cero). C++ dispone de los siguientes:
2 Sintaxis
3 Comentario
Observe que los operadores == y != tienen una menor precedencia (
4.9.0a) que el resto de los operadores relacionales < y >, <= y >=.
El operador de desigualdad != tiene otra forma estándar de designación mediante la palabra clave not_eq (
4.9.8)
§3.1
4 Condiciones
- E1 y E2 son tipos aritméticos.
- E1 y E2 son punteros a versiones cualificadas o no cualificadas de tipos compatibles.
- Uno de ellos es un puntero a un objeto, mientras que el otro es un puntero a una versión cualificada o no cualificada de void.
- Uno de los dos es un puntero, mientras que el otro es un puntero nulo constante.
5
Precauciónes !!
5.1 Con el operador de igualdad
Las expresiones relacionales de igualdad son frecuentísimas en la programación. En multitud de ocasiones se comparan dos expresiones y se toma una decisión en función del resultado cierto / falso obtenido. Por ejemplo, la condición de la sentencia de iteración while (
4.10.3) puede ser una expresión relacional de igualdad:
Algunos compiladores son suficientemente "inteligentes" como para advertir del posible error, pero otros aceptan que se pretende una asignación. Por ejemplo, en el caso anterior, el compilador Borland C++ 5.5 produce una advertencia:
En cambio Visual C++ 6.0 de MS acepta la propuesta sin rechistar.
En cambio Visual C++ 6.0 de MS acepta la propuesta sin rechistar.
5.2 Con los operadores compuestos
int n = 10;
for (i = 0 ; i =< n ; i++) { /* ejecutar este bucle */ } // Error !!
for (i = 0 ; i <= n ; i++) { /* ejecutar este bucle */ } // Ok.
Operadores Relacionales
Se utilizan para establecer una relación entre dos valores. Luego compara estos valores entre si y esta comparación produce un resultado de certeza o falsedad (verdadero o falso).
Los operadores relacionales comparan valores del mismo tipo (numéricos o cadenas). Estos tienen el mismo nivel de prioridad en su evaluación.
Los operadores relaciónales tiene menor prioridad que los aritméticos.
Tipos de operadores Relacionales
Si a = 10, b = 20, c = 30
Ejemplos no lógicos:
a < b < c
10 < 20 < 30
T > 5 < 30
(no es lógico porque tiene diferentes operandos)
for (i = 0 ; i =< n ; i++) { /* ejecutar este bucle */ } // Error !!
for (i = 0 ; i <= n ; i++) { /* ejecutar este bucle */ } // Ok.
Operadores Relacionales
Se utilizan para establecer una relación entre dos valores. Luego compara estos valores entre si y esta comparación produce un resultado de certeza o falsedad (verdadero o falso).
Los operadores relacionales comparan valores del mismo tipo (numéricos o cadenas). Estos tienen el mismo nivel de prioridad en su evaluación.
Los operadores relaciónales tiene menor prioridad que los aritméticos.
Tipos de operadores Relacionales
- > Mayor que
- < Menor que
- > = Mayor o igual que
- < = Menor o igual que
- < > Diferente
- = Igual
Si a = 10, b = 20, c = 30
a + b > c | Falso | |
a - b < c | Verdadero | |
a - b = c | Falso | |
a * b < > c | Verdadero |
Ejemplos no lógicos:
a < b < c
10 < 20 < 30
T > 5 < 30
(no es lógico porque tiene diferentes operandos)
Ejemplos:
Sea: a = 10 b = 12 c = 13 d =10
Sea: a = 10 b = 12 c = 13 d =10
Reflexion:
lo que entendi es que lo operadores funcionales.Nos lleba a una serie de problema que nos ayuda a resolver ecuacion o trabajos cualquier.
los operadares relacionales son como:
> Mayor que
< Menor que
> = Mayor o igual que
< = Menor o igual que
< > Diferente
= Igual
que hacen importante el operador.