SE HAN DISPUESTO DOCUMENTOS EN PDF DE CADA TEMA, SE RECOMIENDA LOS DESCARGUE PARA MEJOR USO DE ESTOS.

martes, 26 de enero de 2010

Iniciando la programación Parte 4


Estructura Algorítmicas – Parte II 

Estructuras selectivas

Estructuras Condicionales o de selección

Las estructuras condicionales se emplean para comparar una variable contra otros valores y dependiendo del resultado de dicha comparación, ha de ejecutarse una acción dentro del programa.
En este tipo de estructuras se evaluan variables entre si e incluso constantes según sea el caso, las comparaciones o condiciones se especifican usando expresiones lógicas, las estructuras condicionales o selectivas pueden ser: simples, dobles y múltiples.


Alternativa simple SI – ENTONCES / IF – THEN

La estructura alternativa simple del tipo si – entonces ejecuta una acción determinada cuando se cumple una condición determinada, la estructura si – entonces evalúa la condición:

Si la condición es verdadera entonces ejecuta la acción o acciones, si la condición es falsa entonces no hace nada.


Ejemplo de la estructura
 
Si (Condición) entonces
Acción_1
Acción_2
.......................
.......................
Acción_N
fin – si

Fijese que la estructura condicional simple si – entonces tiene un inicio y un fin, si usted no cierra la estructura los resultados no serán correctos, puede hacer que el compilador o leng. de programación le genere errores por confusión, toda estructura tiene un inicio y fin, es obligatorio el mismo compilador del lenguaje de programación que este usando, se lo hará saber y lo obligará a que indique el fin de la estructura.

 
Alternativa Doble SI – ENTONCES – SINO / IF – THEN – ELSE

La estructura condicional simple es muy limitada, existirán ocaciones en las cuales deberá hacer un proceso en caso que se cumpla una condición u otra y la estructura simple no se lo permite, básicamente si la condición es verdadera ejecuta la acción en caso que sea falsa no hace nada y finaliza el programa que esta en ejecución.

La alternativa doble le permite ejecutar una acción dependiendo del cumplimiento de la acción, es decir si la condición o comparación es verdadera ejecuta una acción, en caso contrario si la condicion o comparación es falsa ejecuta otra acción, para que usted entienda estas dos estructuras se realizará un ejemplo sencillo, muy popular usado por docentes o instructores.

Ejemplo de la estructura

si (Condición) entonces
Acción_1
Sino
Acción_2
fin – si

Ejemplo

Realize un algoritmo/programa que solicite al usuario ingresar un numero a través del teclado, el programa debe mostrar a través de la pantalla un mensaje que indique si el numero ingresado es par o un numero impar.

Análisis:
Matemáticamente un numero es par cuando el residuo de dividir un numero x entre 2 es cero, ejemplo: el residuo de 4 / 2 es 0, el único operador que puede arrojar el residuo de una división el el “mod” %.

Solución:

1. Declarar variables / constantes según sea
2. Leer numero
3. Comparar si el residuo de la división entre dos es cero
4. Si el resultado es verdadero indicar que es par
5. Si el resultado es falso indicar que es impar



Se realizará la solución empleando las estructuras condicionales simple y doble para que usted vea la diferenca entre el uso o aplicación de ambas.

Estructura condicional simple

Inicio

Entero numero
Escribir Ingrese un numero
Leer numero

Si ( numero % 2 = 0 ) entonces
Escriba “El numero es par”
Fin – si

Fin

Estructura condicional doble

Inicio
Entero numero
Escribir Ingrese un numero
Leer numero

Si ( numero % 2 = 0 ) entonces
Escriba “El numero es par”

Sino
Escriba El numero es impar
Fin – si

Fin

La estructura condicional simple no permite realizar las operaciones que indica el enunciado, tiene una limitación y solo puede ejecutar una acción, en el ejemplo solo permite mostrar que el numero es par cuando la condición es verdadera.
La estructura condicional doble por el contrario permite realizar las operaciones que indica el enunciado, como no tiene limitación ejecuta una acción cuando la condición es verdadera o falsa, muestra un mensaje cuando se cumple o no la condición tal como solicita el enunciado.

Estructura condicional múltiple

Se involucran dos grupos de estruturas alternativas aunque muchos autores no lo ven de esa manera, pero en esta serie de evidencias de aprendizaje se le enseñará de manera ordenada según el criterio del autor.

Estructura ( SI – ENTONCES – SINO ) ANIDADOS

Concepto como tal no hay pero son procesos que son llevados a la práctica y arrojan resultados válidos, para que entienda a que se hace referencia se le hará un ejemplo de esta estructura:

Si (Condición_1) entonces
Acción_1
Sino

Si (Condición_2) entonces
Acción_2
Fin-si

Fin-si

Como puede observar existe más de una estructura compartiva o de evaluación por lo cual se usa la palabra de SI Anidados pues existirán ocasiones en las que necesitará usar estructuras de comparación múltiples, esto no quiere decir que la estructura doble tiene limitaciones, no, pues son solo formas de agrupar o dividir los conceptos para una mayor comprensión o entendimiento por parte del estudiante / aprendiz.

Para que usted entienda mejor esta estructura de SI anidados, se realizará un ejercicio de ejemplo para lo cual fijese en este problema resuelto anteriormente, se agregará una condición más.

Ejemplo

Realize un algoritmo/programa que solicite al usuario ingresar un numero a través del teclado, el programa debe mostrar a través de la pantalla un mensaje que indique si el numero ingresado es par o un numero impar, el programa debe validar que el numero ingresado por el usuario sea distinto a cero o mayor a cero, en caso que sea igual o menor a cero debe mostrar un mensaje indicando que el numero ingresado no es valido y finalice el programa.


Solución:


Inicio
Entero numero
Escribir Ingrese un numero
Leer numero

Si (numero<=0) entonces
Escriba “El numero ingresado no es válido”
Sino

Si (numero > 0) entonces
Si ( numero % 2 = 0 ) entonces
Escriba “El numero es par”
Sino
Escriba El numero es impar
Fin si

Fin – si
Fin

Fijese que en el ejemplo ya se hace una importante validación, el programa no aceptará numeros que sea igual a cero (0) o que sean menores que cero es decir valores negativos, cuando esta comparación es verdadera, el programa se cierra o como se dice en la jerga informática, “se sale”, caso contrario cuando esa condición es falsa entra a la siguiente estructura de comparación y ejecuta las acciones ya descritas. Este tipo de validaciones y secuencia de comparaciones son válidas y muy usadas así que procure entender esta sección, lea hasta que entienda el porque de sus usos.

Nota: Recuerde que cada estructura comparativa tiene un inicio y fin, fijese en el orden que se lleva en el inicio y fin de cada proceso, no puede uster cerrar un proceso dentro de otro al cual no pertenece, si hace esto se presentaran errores que detendran la ejecución del programa.

Estructura SEGÚN SEA o EN CASO DE / SWITCH CASE

Hay ocasiones en las cuales existen muchas opciones alternativas en las cuales el uso de las estructuras condicionales SI se hace torpe o poco factible, es decir la estructura de decisión múltiple evaluará una expresión que podrá tomar N valores distintos 1, 2, 3, 4 …... N según se elija uno de estos valores en la condición es ahí cuando entran alternativas como la estructura SEGUN SEA o EN CASO DE.

Ejemplo de estructura:

según sea (Condición) hacer

Caso condición_1: Acción_1
Acción_1-1
Acción_1-N
Caso condición_2: Acción_2
Acción_2-2
Acción_2-3
Caso condición_N: Acción_N

Fin – según sea

Para que usted entienda con exactitud a que se hace referencia con este tipo de etructura, se hará un ejemplo sencillo.

Ejemplo: Haga un porgrama que muestre en pantalla una lista como la siguiente y según la opcíon que escoja muestre un mensaje así:

Seleccione su estado:

1. Fumador : “No fume o destruirá sus pulmones“
2. No fumador: “Felicidades usted tiene pulmones sanos!”
3. Tomador de alcohol: “ No consuma alcohol, le destruye el hígado”
4. No tomador de alcohol: “Felicidades usted tiene un higado libre de daños!”
5. Consumidor de drogas: “No consuma drogas, afecta su organismo y acaba con su vida”
6. No consumidor de drogas: “Felicidades usted no corre riesgo de muerte o locura”
7. Todas las anteriores: “Usted es una persona con poco tiempo de vida, busque a Jesucristo!!!”
8. No fuma, No consume alcohol, No consume drogas: “ Felicidades, usted es una persona con un organismo sana y libre de enfermedades, seguro vivirá mucho tiempo.”
Solución:

1. Declarar variables / constantes según sea
2. Mostrar lista en pantalla
3. Mostrar mensaje según opción
4. Salir del programa

Inicio

Enero opcion

Escriba “1. Fumador
Escriba “2. No fumador
Escriba “3. Tomador de alcohol
Escriba “4. No tomador de alcohol
Escriba “5. Consumidor de drogas
Escriba “6. No consumidor de drogas
Escriba “7. Todas las anteriores
Escriba “8. No fuma, No consume alcohol, No consume drogas:
Leer opcion

según sea (opcion)

Caso 1: Escriba “No fume o destruirá sus pulmones”
Caso 2: Escriba “Felicidades usted tiene pulmones sanos!”
Caso 3: Escriba “No consuma alcohol, le destruye el hígado”
Caso 4: Escriba “Felicidades usted tiene un higado libre de daños!”
Caso 5: Escriba “No consuma drogas, afecta su organismo y acaba con su vida”
Caso 6: Escriba “Felicidades usted no corre riesgo de muerte o locura”
Caso 7: Escriba “Usted es una persona con poco tiempo de vida, busque a Jesucristo!!!”
Caso 8: Escriba “Felicidades, usted es una persona con un organismo sana y libre de enfermedades, seguro vivirá mucho tiempo.”

Fin – según sea

Este tipo de estructuras son más que comunes y normales en el desarrollo de programas informáticos, son muchos los ejemplos y problemas que pueden realizar/solucionar con este método.


Ejercicio.

1. Realice un algoritmo / programa que escriba el nombre de los días de la semana en función del valor de una variable DIA introducida por teclado.
Como los días de la semana son 7, el rango de valores a usar en el programa son 1, 2, 3, 4, 5, 6, 7 en caso que el valor introducido se salga del rango de valores, debe el programa mostrar un mensaje de error indicando la anomalía.

Nota: no debe hacer uso de SI porque la estructura case / caso reemplaza la función SI pero puede usar SINO en la validación.


 Descargue este contenido en un archivo PDF aquí

0 comentarios:

Publicar un comentario