tablas de verdad en php

Download Tablas de verdad en PHP

If you can't read please download the document

Upload: giles

Post on 22-Mar-2016

108 views

Category:

Documents


1 download

DESCRIPTION

Tablas de verdad en PHP. Programación en Internet II. Tablas de verdad en PHP. Todos los operadores lógicos evalúan el “valor de verdad” (es decir, si es verdadera o falsa) - PowerPoint PPT Presentation

TRANSCRIPT

Diapositiva 1

Tablas de verdad en PHPProgramacin en Internet II

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaTodos los operadores lgicos evalan el valor de verdad (es decir, si es verdadera o falsa)

De cada una de las condiciones por separado y, luego, segn el operador utilizado para unir estas condiciones, devuelven un nico valor de verdadero o falso para el conjunto completo de condiciones que formaban esa expresin.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaVamos a analizar cuatro operadores lgicos:

And (conjuncin, tambin puede escribirse en PHP como &&),

Or ( disyuncin, tambin puede escribirse en PHP como ||),

Xor ( disyuncin excluyente, informalmente llamado or excluyente),

!(negacin).

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaSi a las dos condiciones que uniremos mediante operadores lgicos les damos un nombre simblico y las denominaciones $x e $y, los valores de verdad pueden ser solamente cuatro:

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la Costa Que ambas condiciones sean verdaderas,

Que ambas condiciones sean falsas,

Que la primera sea verdadera y la segunda falsa,

Que la primera sea falsa y la segunda verdadera. No hay otra alternativa.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaEsto puede graficarse con esta tabla:

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la Costa(Siendo V verdadero, y F falso).

Dependiendo de cual operador utilicemos para unir ambas condiciones, obtendremos distintos resultados al evaluar el conjunto completo.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaVeamos cual es la tabla de verdad para unir condiciones, segn cada uno de estos operadores lgicos.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaEl operador de conjuncin es un operador lgico bastante restrictivo, ya que requiere que todas las condiciones que forman parte de la expresin sean verdaderas para que devuelva verdadera la condicin completa.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaEn cualquier otro caso, es decir, con que slo una de las condiciones sea falsa, la expresin completa se evala como falsa.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaVeamos un ejemplo con PHP. Supongamos que disponemos de estos datos:

$usuario = "pepe";$clave = 123456;

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaY que queremos validarlos con un condicional que evalu si el nombre es pepe y la clave es 123456.

Necesitamos que ambos sean verdaderos para dar por verdadera la condicin entera y darle acceso a ese usuario, entonces, usaremos un operador de conjuncin:

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la Costaif($nombre == "pepe" and $clave == "123456") {print ("Bien venido pepe!");} else {print ("No lo conocemos, disculpe pero queda fuera");}

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaEs recomendable que probemos qu sucede cuando proporcionamos valores falsos (distintos a los esperados en la condicin).

Por ejemplo, podramos cambiar los valores de esas dos variables de esta manera:

$usuario = "Juan";$clave = 123456;

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaEn ese caso, se evaluara como falsa la condicin, ya que la primera condicin (que $nombre valga pepe) se evala como falsa, as que, por ms que la segunda sea verdadera, al haber unido ambas con un operador de conjuncin and, la condicin entera se evala como falsa.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaDel mismo modo, podramos volver a cambiar los valores de esas dos variables, esta vez a algo como.

$usuario = "Pepe";$clave = 99999;

Y tambin en este caso, se evaluara como falsa la condicin, ya que la primera condicin es verdadera, pero la segunda es falsa.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaDesde ya que tambin se evaluara como falsa si ambas partes fueran falsos (tanto el nombre como la clave).

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaEl operador de disyuncin, contrariamente al anterior, es un operador lgico bastante amplio, ya que considera que la expresin es verdadera si al menos una de las condiciones que forma parte de la expresin es verdadera.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaLa nica forma de que una disyuncin resulte falsa es que todas las condiciones sean falsas, sin excepcin.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaVeamos un ejemplo con PHP, imaginemos que un sitio de comercio electrnico realiza envos a domicilio solamente en tres ciudades: ciudad 1, ciudad 2 y ciudad 3; solicitamos al usuario que ingrese su ciudad de residencia en un campo llamado ciudad, y evaluemos ese dato.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaNecesitamos que al menos uno de esos tres nombres de ciudad sea el que verdaderamente ingreso el usuario para dar por verdadera la condicin entera, y realizar el pedido. Entonces, usaremos un operador de disyuncin:

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la Costaif ($_POST["ciudad"] == "ciudad 1" or $_POST["ciudad"] == "ciudad 2" or $_POST["ciudad"] == "ciudad 3"){

print ("Zona correcta! Recibira su pedido.");} else {print ("Esta fuera del rea de cobertura.");

}

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaNuevamente, es recomendable que probemos cambiando los valores esperados, y que veamos que sucede cuando proporcionamos valores falsos o uno de los verdaderos.

En el caso de una disyuncin, con que proporcionaremos un solo de los valores correctos, se evaluara como correcta la expresin.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaLa diferencia con el operador de la disyuncin comn es que si ambas condiciones son verdaderas, devuelve falso.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaSupongamos que disponemos de estos datos proporcionados en un pedido:

$targeta = "VISA";$cupon = "19876";

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaY que queremos validarlos con la regla de que si paga con tarjeta VISA, no se considera ningn cupn de descuento. Por el contrario, si ingresa un cupn de descuento, la forma de pago no puede ser VISA.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaSon excluyentes:

if ($targeta == "VISA" xor $cupon ""){print ("Podemos tomar su pedido");} else {print ("No puede elegir VISA y a la vez colocar un cdigo de cupn de descuento, y tampoco puede elegir otro medio de pago sin ingresar un cdigo de cupn.");}

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaEl operador de negacin transforma la expresin en su contrario.

Es decir, si la condicin es verdadera, devuelve falso, y si la condicin es falsa, devuelve verdadero.

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaYa hemos utilizado este operador en otros casos, como por ejemplo en:

if ($_POST["nombre"] != "Pepe" {print ("No sos Pepe");

}

Tablas de verdad en PHPProgramacin en Internet IIUniversidad de Guadalajara | Centro Universitario de la CostaDevuelve verdadero si nombre no es igual a Pepe.Resumamos, entonces, en un cuadro, los distintos operadores lgicos: