TOMA DE DECISIONES

En ciertos casos de la programación lineal se requiere de una toma de decisiones, la cual puede ser una toma simple, doble o múltiple de acuerdo a las condiciones que se van a cumplir y el número de opciones disponibles en el algoritmo.


TOMA DE DECISIONES SIMPLE:

Se trata de hacer un arreglo normal, ya que solo se tomara un único camino y no hacen falta condicionales para ir por un camino alternativo.

Diagrama de flujo:




TOMA DE DECISIONES DOBLE:

Para ése tipo de algoritmo se requiere de dos camino diferentes los cuales se van a tomar dependiendo de las condiciones que se den en el algoritmo IF-ELSE.
La estructura de toma de decisiones If-Else está compuesta por una condición a verificar y dos bloques de instrucciones a ejecutar.

    if (condición)  //Si se cumple tal condición
        {
        instruccion1;
        instruccion2;
        instruccionx;
   
     }
   
else                //De caso contrario/De otro modo
        {
        instruccion3;
        instruccion4;
        instruccionz;
        }




Una estructura de decisión puede no contener un bloque else, dado que a veces sólo es necesario hacer algo cuando pasa y dejar todo como esta cuando no pasa.

TOMA DE DECISIONES MÚLTIPLE:

Finalmente al hacer este tipo de toma de decisiones se puede usar un IF anidado o el caso de SWITCH_CASE cuya estructura es:

#include<stdio.h>
main() {
char ch;
printf("Introduzca una vocal: ");
ch=getchar();
switch(ch) {
case 'a': puts("Se ha pulsado una a.");
break;
case 'e': puts("Se ha pulsado una a.");
break;
case 'i': puts("Se ha pulsado una a.");
break;
case 'o': puts("Se ha pulsado una a.");
break;
case 'u': puts("Se ha pulsado una a.");
break;
default: puts("Error");
}
}

Como se puede apreciar en la estructura se trata de varios casos que se van a ejecutar una vez su condición sea verdadera.

Diagrama de flujo: