Operadores relacionales.
Cuando necesitamos comparar el valor asignado a dos variables empleamos los operadores relacionales, los cuales devuelven Verdadero (V o 1) si el resultado de la comparación es positivo o Falso (F o 0) si ese resultado es negativo.
Los principales operadores relacionales son los siguientes:
- De igualdad (= o ==, según el lenguaje), que valora V/F en función de que el contenido de de las dos variables sea el mismo.
- De diferencia ( !=, <>), el opuesto del anterior.
- De superioridad: Mayor (>) o igual o mayor (>=), que compara dos variables y determina V/F en función de que la primera sea más grande o cuanto menos igual de grande (en el caso de >=) que la segunda.
- De inferioridad: Menor (<) o igual o menor (<=), que realiza la misma comparación que los anteriores, pero ahora en relación al juicio de inferioridad.
En PSeInt y también Python, los comparadores relacionales son los mismos, aunque algunos de ellos se representen mediante símbolos diferentes.
- El comparador de igualdad se representa con = en pseudocódigo (PSeInt), coincidiendo con el signo del operador de asignación. En Python se emplea el doble signo de igualdad (==) para evitar esa posible confusión.
- El opuesto al anterior, el comparador de diferencia se expresa de dos formas diferentes en PSeInt (<> o !=), aunque se puede convertir automáticamente al símbolo matemático de diferencia () según configuración.
- El segundo de estos símbolos (!=) es que que empleamos en Python.
- El resto de los operadores (< vs. > y <= vs. >=) son iguales en PSeInt y Python.
Por lo que parece, los operadores relacionales no presentan especial dificultad, pero es conveniente analizar su comportamiento cuando los empleamos en la comparación de los dos tipos de variable que conocemos hasta el momento: variables alfanuméricas (o de texto) y los distintos tipo de variables numéricas.
- Sólo cuando dos variables (var1 y var2) son del mismo tipo (sea éste alfanumérico o numérico) y tienen asignado el mismo dato, existe coincidencia (V) entre los operadores de igualdad (=), superioridad (>=) o inferioridad (<=), dado que los tres devuelven V. Y es que en realidad se trata de la misma situación: var1 = var2.
- En caso de variables alfanuméricas, = es V sí y sólo sí ambas tienen asignado exactamente el mismo contenido. Un cambio, por mínimo que sea (vg. un espacio en blanco en Var1 ausente en Var2), aunque no cambie el significado del contenido (vg, el uso de mayúsculas) o sea admisible desde el punto de vista del significado (vg, en caso de que la presencia/ausencia de tilde no afecte al significado), da como resultado que la comparación = resulte F y la comparación <> resulte V.
- No es posible comparar entre variables de diferente tipo (vg, alfanuméricas con numéricas). En estos casos, Python resuelve la igualdad (==) como F y la diferencia (!=) como V.
- En las variables numéricas, aunque una variable sea de tipo diferente a otra (Entero vs Real) son posibles todas las comparaciones.
No hay comentarios:
Publicar un comentario
Comenta esta entrada