""
En programación, una sentencia condicional es una instrucción grupo de instrucciones que se pueden ejecutar o no en función del valor de una condición.
Los tipos más conocidos de setencias condicionales son el SI..ENTONCES (if..then), el SI..ENTONCES..SINO (if..then..else) y el SEGÚN (case o switch), aunque también podríamos mencionar al lanzamiento de errores como una alternativa más moderna para evitar el "anidamiento" de sentencias condicionales.
Los sentencias condicionales constituyen, junto con los bucles, los pilares de la programación estructurada, y su uso es una evolución de una sentencia en lenguaje ensamblador que ejecutaba la siguiente línea o no en función del valor de una condición.
Sentencias condicionales simples
La estructura de las sentencias condicionales simples (SI...ENTONCES y SI...ENTONCES...SINO) se mantiene en casi todos los lenguajes de programación, y se representa en pseudolenguaje de la siguiente manera:
SI condición ENTONCES
Cuerpo
FIN SI
SI condición ENTONCES
CuerpoAfirmativo
SINO
CuerpoNegativo
FIN SI
La palabra ENTONCES es uno de los casos más curiosos, en algunos lenguajes es obligatoria (Pascal), en otros no existe (como en C) y en unos terceros es opcional (como Basic o FoxPro)
Sentencia condicional SEGÚN
La sentencia condicional SEGÚN surgió como alternativa a la notación de las sentencias condicionales SIMPLES anidadas, del tipo:
SI condición ENTONCES
Cuerpo1
SINO
SI condición2 ENTONCES
Cuerpo2
SINO
SI condición3 ENTONCES
Cuerpo3
...
FIN SI
FIN SI
FIN SI
El sentencia condicional SEGÚN presenta uno de los casos de variaciones más grandes en los distintos lenguajes, y prácticamente es imperioso visitar la definición de la misma las primeras veces que se lo utiliza al aventurarnos en algún un lenguaje en particular para poder adecuarnos a su uso. En pseudolenguaje se lo suele ocupar de la siguiente manera:
SEGÚN Condición HACER
Valor1:
Cuerpo1
Valor2:
Cuerpo2
Valor3:
Cuerpo3
...
ValorN:
CuerpoN
SINO
CuerpoSiNo
FIN SEGÚN
Donde la variable Condición es un entero al igual que Valor1, Valor2 ... ValorN y donde la sentencia que se ejecutará dependerá del valor que tome la variable condición. Si la variable Condición es igual a Valor1 se ejecutará el Cuerpo1, si es igual a Valor2 se ejecutará Cuerpo2 y así sucesivamente. En caso de que no coincida con ninguno de los valores especificados se ejecutará CuerpoSiNo.
En algunos casos se permiten cadenas de caracteres, y en otros valores enumerados (que no vienen a ser más que representacionse de valores enteros) como valores para la condición. Raras veces las sentencias condiciones permiten una condición libre (del tipo por ejemplo > ó <). El SINO, también conocido como DEFAULT o POR DEFECTO en algunos lenguajes, es opcional. Tanto las palabras SEGÚN como la sintaxis de las condiciones y del tipo de valor admitido en la condición sufren grandes cambios de un lenguaje a otro. El caso de C y Java, que utiliza parte de la sintaxis de C, es muy particular, el final de cada Cuerpo debe ser una instrucción break (para escapar o romper el grupo de instrucciones) o return (par terminar un método, procedimiento o función) si no se desea que las siguientes líneas de código se ejecuten, aun cuando el valor de la condición no se cumpla.
Al desarrollarse las primeras computadoras electrónicas, se vio la necesidad de programarlas, es decir, de almacenar en memoria la información sobre la tarea que iban a ejecutar. Las primeras se usaban como calculadoras simples; se les indicaban los pasos de cálculo, uno por uno.
John Von Neumann desarrolló el modelo que lleva su nombre, para describir este concepto de "programa almacenado". En este modelo, se tiene una abstracción de la memoria como un conjunto de celdas, que almacenan simplemente números. Estos números pueden representar dos cosas: los datos, sobre los que va a trabajar el programa; o bien, el programa en sí.
¿Cómo es que describimos un programa como números? Se tenía el problema de representar las acciones que iba a realizar la computadora, y que la memoria, al estar compuesta por switches correspondientes al concepto de bit, solamente nos permitía almacenar números binarios
""