You are on page 1of 18

Sentencia condicional

De Wikipedia, la enciclopedia libre Saltar a: navegacin, bsqueda Este artculo trata sobre la sentencia de programacin. Para otros usos de este trmino, vase Si. En programacin, una sentencia condicional es una instruccin o grupo de instrucciones que se pueden ejecutar o no en funcin del valor de una condicin. Los tipos ms conocidos de setencias condicionales son el SI..ENTONCES (if..then), el SI..ENTONCES..SI NO (if..then..elsA) y el SEGN (case o switch), aunque tambin podramos mencionar al lanzamiento de errores como una alternativa ms moderna para evitar el "anidamiento" de sentencias condicionales. Las sentencias condicionales constituyen, junto con los bucles, los pilares de la programacin estructurada, y su uso es una evolucin de una sentencia en lenguaje ensamblador que ejecutaba la siguiente lnea o no en funcin del valor de una condicin.

[editar] Lanzamiento de errores


En el caso de algoritmos donde se ejecutan muchas instrucciones que pueden devolver errores se vuelve a tener el caso de condicionales anidados que dificultan la lectura. Por ejemplo:
Archivo f SI (LeerArchivo(f)) ENTONCES SI (AvanzarArchivo(f)) ENTONCES SI (ObtenerEntero(Leer(f)) ENTONCES Cuerpo SINO Imprimir "El valor no es entero" FIN SI SINO Imprimir "Se lleg al fin del archivo" FIN SI SINO Imprimir "No se pudo abrir el archivo" FIN SI CerrarArchivo(f)

Si bien es un problema que este anidamiento puede llegar a ser muy grande, la principal razn para utilizar el lanzamiento de errores es que con el tipo de estructura anterior se pierde la nocin del camino principal, y cuesta mucho ms encontrar las sentencias de ejecucin normal, (en este caso Cuerpo), por la presencia de las condiciones de error que entorpecen la legibilidad.

Algunos lenguajes como Java han tenido esto en cuenta y desarrollaron el lanzamiento de errores, que consiste en separar el tratamiento de errores al final de la instruccin, para no perder de vista el hilo de continuidad. Para esto, los mtodos en lugar de devolver un valor lgico (verdadero o falso) para determinar si la operacin se efectu correctamente, deben "lanzar" excepciones. El cdigo es ejecutado normalmente hasta que ocurre una excepcin, en este caso "salta" al manejo de errores adecuado; es decir las sentencias pueden o no ejecutarse, en funcin de si previamente se haya lanzado un error o no. En algunos casos puede darse que exista cdigo que debe ejecutarse al final, independientemente de si se haya lanzado o no un error (en nuestro caso podra ser la operacin de cerrar el archivo para que otros puedan acceder a l), para lo cual tambin hay sentencias especiales.
INTENTAR LeerArchivo(f) AvanzarArchivo(f) ObtenerEntero(Leer(f)) Cuerpo CAPTURAR Error1(ExcepcinDeAperturaDeArchivo) Imprimir "No se pudo abrir el archivo" CAPTURAR Error2(ExcepcinDeLecturaDeArchivo) Imprimir "Se lleg al final del archivo" CAPTURAR Error3(ExcepcinDeConversinDeDatos) Imprimir "El valor no es entero) FINALMENTE CuCerrarArchivo(f)

A su vez los procedimientos que lanzan excepciones deben contener alguna lnea con el siguiente cdigo:
LANZAR TipoExcepcin

El cdigo que llama a una subrutina que puede lanzar un error, tiene dos alternativas: o la trata l mismo (con la estructura anterior) o la "LANZA" a la subrutina superior que la invoc. Algunas veces no es obligatorio tratar estos errores. En Java la estructura es la siguiente:
try { instrucciones } catch (ClaseDeLaExcepcin1 objetoExcepcin1) { instruccionesPorError1 } catch (ClaseDeExcepcin2 ojbetoExcepcin2) { instruccionesPorError2

} finally { instruccionesFinales }

Tabla de verdad
De Wikipedia, la enciclopedia libre Saltar a: navegacin, bsqueda

Una tabla de verdad, o tabla de valores de verdad, es una tabla que despliega el valor de verdad de una proposicin compuesta, para cada combinacin de valores de verdad que se pueda asignar a sus componentes.[1] Fue desarrollada por Charles Sanders Peirce por los aos 1880, pero el formato ms popular es el que introdujo Ludwig Wittgenstein en su Tractatus logico-philosophicus, publicado en 1921.

Contenido
[ocultar]

1 Definicin y algoritmo fundamental 2 Definiciones en el clculo lgico o 2.1 Negacin o 2.2 Conjuncin o 2.3 Disyuncin o 2.4 Implicacin o Condicional o 2.5 Bicondicional 3 Tablas de verdad o 3.1 Verdad Indeterminada o Contingencia o 3.2 Contradiccin o 3.3 Tautologas 4 Tablas de verdad, proposiciones lgicas y argumentos deductivos 5 Aplicaciones o 5.1 Clculo lgico o 5.2 Lgica de circuitos o 5.3 Desarrollo del algoritmo fundamental en lgica de circuitos 5.3.1 Caso 1 5.3.2 Caso 2 5.3.3 Caso 3 5.3.4 Caso 4

5.3.5 Caso 5 5.3.6 Caso 6 5.3.7 Caso 7 5.3.8 Caso 8 5.3.9 Caso 9 5.3.10 Caso 10 5.3.11 Caso 11 5.3.12 Caso 12 5.3.13 Caso 13 5.3.14 Caso 14 5.3.15 Caso 15 5.3.16 Caso 16 6 Vase tambin 7 Notas y referencias 8 Enlaces externos

[editar] Definicin y algoritmo fundamental


Considrese dos variables proposicionales A y B.[2] Cada una puede tomar uno de dos valores de verdad: o V (verdadero), o F (falso). Por lo tanto, los valores de verdad de A y de B pueden combinarse de cuatro maneras distintas: o ambas son verdaderas; o A es verdadera y B falsa, o A es falsa y B verdadera, o ambas son falsas. Esto puede expresarse con una tabla simple:

Considrese adems a "" como una operacin o funcin lgica que realiza una funcin de verdad al tomar los valores de verdad de A y de B, y devolver un nico valor de verdad. Entonces, existen 16 funciones distintas posibles, y es fcil construir una tabla que muestre qu devuelve cada funcin frente a las distintas combinaciones de valores de verdad de A y de B.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

A B AB AB AB AB AB AB AB AB AB AB AB AB AB AB AB AB V V V V V V V V V V F F F F F F F F

V F F

F V F

V V V

V V F

V F V

V F F

F V V

F V F

F F V

F F F

V V V

V V F

V F V

V F F

F V V

F V F

F F V

F F F

Las dos primeras columnas de la tabla muestran las cuatro combinaciones posibles de valores de verdad de A y de B. Hay por lo tanto 4 lneas, y las 16 columnas despliegan todos los posibles valores que puede devolver una funcin "". De esta forma podemos conocer mecnicamente, mediante algoritmo, los posibles valores de verdad de cualquier conexin lgica interpretada como funcin, siempre y cuando definamos los valores que devuelva la funcin. Se hace necesario, pues, definir las funciones que se utilizan en la confeccin de un sistema lgico. De especial relevancia se consideran las definiciones para el Clculo de deduccin natural y las puertas lgicas en los circuitos electrnicos.

[editar] Definiciones en el clculo lgico


Artculo principal: Clculo lgico

Para establecer un Sistema formal se establecen las definiciones de los operadores. Las definiciones se harn en funcin del fin que se pretenda al construir el sistema que haga posible la formalizacin de argumentos:

Como razonamientos deductivos lgico-lingsticos Como construccin de un sistema matemtico puro Como una aplicacin lgica en un Circuito de conmutacin.

Los operadores fundamentales se definen as:


[editar] Negacin

La negacin es un operador que se ejecuta. sobre un nico valor de verdad, devolviendo el valor contradictorio de la proposicin considerada.

[editar] Conjuncin

La conjuncin es un operador que opera sobre dos valores de verdad, tpicamente los valores de verdad de dos proposiciones, devolviendo el valor de verdad verdadero cuando ambas proposiciones son verdaderas, y falso en cualquier otro caso. Es decir es verdadera cuando ambas son verdaderas

La tabla de verdad de la conjuncin es la siguiente:

Que se corresponde con la columna 8 del algoritmo fundamental.

[editar] Disyuncin

La disyuncin es un operador que opera sobre dos valores de verdad, tpicamente los valores de verdad de dos proposiciones, devolviendo el valor de verdad verdadero cuando una de las proposiciones es verdadera, o cuando ambas lo son, y falso cuando ambas son falsas. La tabla de verdad de la disyuncin es la siguiente:

Que se corresponde con la columna 2 del algoritmo fundamental.

[editar] Implicacin o Condicional

El condicional material es un operador que opera sobre dos valores de verdad, tpicamente los valores de verdad de dos proposiciones, devolviendo el valor de verdad falso slo cuando la primera proposicin es verdadera y la segunda falsa, y verdadero en cualquier otro caso. La tabla de verdad del condicional material es la siguiente:

Que se corresponde con la columna 5 del algoritmo fundamental.

[editar] Bicondicional

El bicondicional o doble implicacin es un operador que funciona sobre dos valores de verdad, tpicamente los valores de verdad de dos proposiciones, devolviendo el valor de verdad verdadero cuando ambas proposiciones tienen el mismo valor de verdad, y falso cuando sus valores de verdad difieren. La tabla de verdad del bicondicional es la siguiente:

Que se corresponde con la columna 7 del algoritmo fundamental.

[editar] Tablas de verdad


Las tablas nos manifiestan los posibles valores de verdad de cualquier proposicin molecular, as como el anlisis de la misma en funcin de las proposicones que la integran, encontrndonos con los siguientes casos:

[editar] Verdad Indeterminada o Contingencia


Se entiende por verdad contingente, o verdad de hecho, aquella proposicin que puede ser verdadera o falsa, segn los valores de las proposiciones que la integran. Sea el caso: .

Su tabla de verdad se construye de la siguiente manera: Ocho filas que responden a los casos posibles que pueden darse segn el valor V o F de cada una de las proposiciones A, B, C. (Columnas 1, 2, 3) Una columna (Columna 4) en la que se establecen los valores de aplicando la definicin del disyuntor a los valores de B y de C en cada una de las filas.(Columnas 2,3 4) Una columna (columna 5) en la que se establecen los valores resultantes de aplicar la definicin de la conjuncin entre los valores de A (columna 1) y valores de la columna , (columna 4) que representarn los valores de la proposicin completa , cuyo valor de verdad es V o F segn la fila de los valores de A, B, y C que consideremos. (Columnas 1,4 5)

Donde podemos comprobar cundo y por qu la proposicin es F.

es V y cundo

[editar] Contradiccin
Se entiende por proposicin contradictoria, o contradiccin, aquella proposicin que en todos los casos posibles de su tabla de verdad su valor siempre es F. Dicho de otra forma, su valor F no depende de los valores de verdad de las proposiciones que la forman, sino de la forma en que estn establecidas las relaciones sintcticas de unas con otras. Sea el caso:

Procederemos de manera similar al caso anterior. Partiendo de la variable A y su contradiccin, la conjuncin de ambos siempre es falso, dado que si A es verdad su contradiccin es falsa, y si A es falsa su contradiccin es verdad, la conjuncin de ambas da falso en todos los casos.

[editar] Tautologas

Se entiende por proposicin tautolgica, o tautologa, aquella proposicin que en todos los casos posibles de su tabla de verdad su valor siempre es V. Dicho de otra forma, su valor V no depende de los valores de verdad de las proposiciones que la forman, sino de la forma en que estn establecidas las relaciones sintcticas de unas con otras. Sea el caso:

Siguiendo la mecnica algortmica de la tabla anterior construiremos su tabla de verdad, tenemos la variable A en disyuncin con su contradiccin, si A es verdad, su negacin es falsa y si A es falsa su negacin es verdad, en cualquier caso una de las dos alternativas es cierta, y su disyuncin es cierta en todos los casos.

[editar] Tablas de verdad, proposiciones lgicas y argumentos deductivos


Artculo principal: Clculo lgico

En realidad toda la lgica est contenida en las tablas de verdad, en ellas se nos manifesta todo lo que implican las relaciones sintcticas entre las diversas proposiciones. No obstante la sencillez del algoritmo, aparecen dos dificultades.

La gran cantidad de operaciones que hay que hacer para una proposicin con ms de 4 variables.

Esta dificultad ha sido magnficamente superada por la rapidez de los ordenadores, y no presenta dificultad alguna.

Que nicamente ser aplicable a un esquema de inferencia, o argumento cuando la proposicin condicionada, como conclusin, sea previamente conocida, al menos como hiptesis, hasta comprobar que su tabla de verdad manifiesta una tautologa.

Por ello se construye un clculo mediante cadenas deductivas: Las proposiciones que constituyen el antecedente del esquema de inferencia, se toman como premisas de un argumento. Se establecen como reglas de clculo algunas tautologas como tales leyes lgicas, (pues garantizan, por su carcter tautolgico, el valor V).

Se permite la aplicacin de dichas reglas como reglas de sustitucin de frmulas bien formadas en las relaciones que puedan establecerse entre dichas premisas. Deduciendo mediante su aplicacin, como teoremas, todas las conclusiones posibles que haya contenidas en las premisas. Cuando en un clculo se establecen algunas leyes como principios o axiomas, el clculo se dice que es axiomtico. El clculo lgico as puede utilizarse como demostracin argumentativa.

[editar] Aplicaciones
[editar] Clculo lgico
La aplicacin fundamental se hace cuando se construye un sistema lgico que modeliza el lenguaje natural sometindolo a unas reglas de formalizacin del lenguaje. Su aplicacin puede verse en el clculo lgico.

[editar] Lgica de circuitos


Artculo principal: Puerta lgica

Puertas lgicas para circuitos elctricos

Una aplicacin importante de las tablas de verdad procede del hecho de que, interpretando los valores lgicos de verdad como 1 y 0 (lgica positiva) en el sentido que

valor "1" permite el paso de corriente elctrica; y valor "0" corta el paso de dicha corriente.

Los valores de entrada o no entrada de corriente a travs de un diodo pueden producir una salida 0 1 segn las condiciones definidas como funcin segn las tablas mostradas anteriormente. As se establecen las algunas funciones bsicas: AND, NAND, OR, NOR, XOR, XNOR (o NXOR), que se corresponden con las funciones definidas en las columnas 8, 9, 2, 15, 10 y 7 respectivamente, y la funcin NOT. En lugar de variables proposicionales, considerando las posibles entradas como EA y EB, podemos armar una tabla anloga de 16 funciones como la presentada arriba, con sus equivalentes en lgica de circuitos.
EA OR EB EA NOT( EA NOT( BUF BUF EA EA EA EA N OR EA) AND NOT( EA) Fal FER FER XNOR AND NAN XOR OT NOR NOT OR NOT( EA) OR so EA EB EB EB D EB EB EB (EB) EB EB) EB

E E Ver A B dad

1 1 1 0 0 1 0 0

1 1 1 1

1 1 1 0

1 1 0 1

1 1 0 0

1 0 1 1

1 0 1 0

1 0 0 1

1 0 0 0

0 1 1 1

0 1 1 0

0 1 0 1

0 1 0 0

0 0 1 1

0 0 1 0

0 0 0 1

0 0 0 0

Esta aplicacin hace posible la construccin de aparatos capaces de realizar estas computaciones a alta velocidad, y la construccin de circuitos que utilizan este tipo de anlisis se hace por medio de puertas lgicas. La Tabla de la verdad es una herramienta imprescindible en la recuperacin de datos en las bases de datos como Internet con los motores de bsqueda o en una biblioteca con sus ficheros informatizados. As mismo se utilizan para programar simulaciones lgicas de inteligencia artificial con lenguajes propios. Tambin en modelos matemticos predictores: meteorologa, marketing y otros muchos.

[editar] Desarrollo del algoritmo fundamental en lgica de circuitos


Artculo principal: Formas cannicas (lgebra de Boole) Artculo principal: Circuito de conmutacin

La definicin de la tabla de verdad corresponde a funciones concretas, en cada caso, as como a implementaciones en cada una de las tecnologas que pueden representar funciones lgicas en binario, como las puertas lgicas o los circuitos de conmutacin. Se entender como verdad la conexin que da paso a la corriente; en caso contrario se entender como falso. [editar] Caso 1 El primer caso en una funcin lgica que para todas las posibles combinaciones de A y B, el resultado siempre es verdadero, es un caso de tautologa, su implementacin en un circuito es una conexin fija.

[editar] Caso 2 En este segundo caso el resultado solo es falso si A y B son falsos, si una de las dos variables es verdad el resultado es verdad. La funcin seria:

[editar] Caso 3

En el tercer caso es verdad si A es verdad y cuando A y B son falsos el resultado tambin es verdad. Su funcin seria:

[editar] Caso 4 En el cuarto caso la funcin es cierta si A es cierta, los posibles valores de B no influyen en el resultado. La funcin solo depende de A:

[editar] Caso 5 En el quinto caso si A es falso el resultado es verdadero, y si A y B son verdaderos el resultado tambin es verdadero, puede verse que este caso es idntico al tercero permutando A por B. Y si funcin es:

[editar] Caso 6 En el sexto caso la funcin es cierta si B es cierta, los valores de A no influyen en el resultado. La funcin solo depende de B:

[editar] Caso 7 El sptimo caso corresponde a la relacin bicondicional entre A y B, el resultado solo es verdad si A y B son ambos verdad o si A y B son ambos falsos.

[editar] Caso 8 En el octavo caso el resultado es verdad si A y B son verdad, en el resto de los valores de A y B el resultado es falso, corresponde a la conjuncin de A y B, equivalente a un circuito en serie.

[editar] Caso 9 En el noveno caso el resultado solo es falso si A y B son verdad, en el resto de los valores de A y B el resultado es verdadero, corresponde a la disyuncin de la negacin A y de B, equivalente a un circuito en paralelo de conexiones inversas.

[editar] Caso 10 Podemos ver que el dcimo caso es lo opuesto a la bicondicional, solo es verdad si A y B discrepan, si A y B son diferentes el valor es verdad, si A y B son iguales el resultado es falso.

[editar] Caso 11

En este caso posemos ver que cuando B es verdad el resultado es falso y que cuando B es falso el resultado es verdadero, independientemente del valor de A, luego la funcin solo depende de B, en sentido inverso.

[editar] Caso 12 En el caso doce, vemos que solo hay un combinacin de A y B con resultado verdadero, que es A y la negacin de B.

[editar] Caso 13 En el caso decimotercero podemos ver que el resultado es el opuesto de A, independientemente del valor de B:

[editar] Caso 14 Caso decimocuarto, el resultado de la funcin solo es verdad si A es falso y B verdadero, luego es equivalente a un circuito en serie de A en conexin inversa y de B en conexin directa.

[editar] Caso 15 En el caso decimoquinto, el resultado solo es verdad si A y B son falsos, Luego es necesario que Tanto A como B sean falsos para que el resultado sea verdadero.

[editar] Caso 16 Por ltimo en el caso decimosexto, tenemos que el resultado siempre es falso independientemente de los valores de A o de B.

You might also like