Programación C# - Algoritmos Modulares con Selectivas
loni anoApuntes23 de Marzo de 2022
7.402 Palabras (30 Páginas)98 Visitas
[pic 1] Ciclo I | Universidad de El Salvador Facultad de Ingeniería y Arquitectura Escuela de Ingeniería de Sistemas Informáticos Introducción a la Informática GUIA DE LABORATORIO NO EVALUADO Modularidad - Metodología para Resolver Problemas Programación C# - Algoritmos Modulares con Selectivas |
Introducción
Esta guía consta de seis partes. La primera parte trata sobre estructuras selectivas; la segunda parte trata sobre expresiones y condiciones lógicas; mientras que la tercera parte muestra el uso de la consola interactiva de C#, siguiendo en la parte cuarta con el tipo lógico, variable lógica y “función lógica”. A continuación, la parte V, desarrolla un ejercicio completo y finalmente la parte seis presenta los ejercicios propuestos para los estudiantes.
Objetivo General:
- Adquirir el conocimiento y la habilidad para desarrollar soluciones con un enfoque de reutilización de código, aplicando la técnica divide y vencerás dentro del marco de trabajo dado por la metodología para resolver problemas, impartida en la asignatura; empleando las estructuras de control secuenciales, selectivas simples y selectivas dobles; que resuelvan problemas simples que involucren la reutilización de código por medio de clases y métodos diseñados y definidos por el estudiante, todo esto auxiliándose de la herramienta para desarrollo de aplicaciones: IDE Visual Studio.
Objetivos Específicos:
- Conocer, Comprender y aplicar las estructuras selectivas simples y dobles en el diseño de algoritmos.
- Aprender a identificar cuándo y dónde utilizar las estructuras selectivas simples o dobles dentro de un algoritmo.
- Adquirir el conocimiento y la habilidad para implementar soluciones con estructuras selectivas simples y dobles usando el Lenguaje C#
- Aprender a distinguir entre estructura selectiva, condición, expresión lógica, restricción y proceso de decisión.
Equipo, Materiales y Herramientas:
- Computadora Personal con Windows 10 y Conexión a Internet.
- Navegador de Internet (Chrome, Firefox, Opera, Internet Explorer u Otro similar).
- Visual Studio Community Edition.
Metodología. El estudiante DEBE desarrollar, esta guía (Parte I, II, IV y V), luego desarrollar los ejercicios que crea conveniente, el instructor sólo dará una breve retroalimentación de la Guía, luego dejará trabajo a los estudiantes en la Parte III y VI, debiendo asignar 2 ejercicios para que el estudiante los desarrollen.
Parte I. Solución de Problemas con Estructura Selectiva Simple y Doble
Existen varios “tipos” de estructuras selectivas, pero en esta guía solo vamos a practicar con:
- La estructura selectiva simple
- La estructura selectiva doble
Sabemos que la representación general de las estructuras selectivas simple y doble son como sigue:
Estructura selectiva simple | Estructura selectiva doble |
Si ( condición ) Entonces Acciones Cierto | Si ( condición ) Entonces Acciones Cierto Sino Acciones Falso |
Estas dos estructuras funcionan de la siguiente manera:
Estructura selectiva simple:
Si la condición se cumple entonces se toma el camino cierto ó se realizan las acciones cierto mientras que sino se cumple la condición no se hace nada y se continúa con la ejecución o flujo normal del algoritmo.
Estructura selectiva doble:
Si la condición se cumple se toma el camino cierto o se realizan las acciones cierto mientras que sino se cumple la condición se toma el camino del falso o se realizan las acciones falso.
Cualquier problema que solucione de esta guía deberá resolverlo empleando estructuras simples ó dobles o una combinación de ambas, pero sin anidamiento de estructura selectiva y por supuesto sin el uso de estructuras repetitivas (se estudiarán en la Unidad V), uno de los propósitos de lo anterior es que Ud. desarrolle el pensamiento lógico y busque la manera de resolver problemas sin recurrir a otras estructuras, otro propósito es que Ud. se auxilie del uso de la metodología y la modularidad para resolver problemas empleando solo estructuras selectivas simples y/o dobles.
En general las soluciones a desarrollar tendrán la siguiente “estructura” en el algoritmo Principal
- Declaración de variables y/o constantes
- Identificación del Programa en pantalla
- Lectura de los Datos de Entrada con sus respectivos mensajes de entrada
- Sí (Se Cumplen Restricciones de todos los Datos de Entrada)
Entonces
Realizar el(los) proceso(s) de cálculo y/o
Decisiones (+Por invocación de métodos) y/o cálculos y/o impresiones y/o
Realizar la (s) salida(s) de dato(s) con sus respectivos mensajes de salida
Sino
Mostrar un mensaje de Error en Datos de Entrada
*En cualquiera de los siguientes elementos Ud. puede hacer uso de la modularidad: las lecturas de datos, las condiciones (de restricción, uso de “funciones lógicas”), los procesos de cálculo y los procesos de decisión/cálculo/impresión, y salidas de datos. Lo anterior aplica para cualquier estructura del algoritmo Principal
**Esta estructura tiene la ventaja que solo muestra un mensaje de error general y la desventaja que no se dice al usuario cuáles datos de entrada son incorrectos (aunque los mensajes de entrada indican las restricciones que deben cumplir). Los errores se manejan en el “camino” falso de una estructura doble
+Decisiones Por invocación de métodos: se dejará claro en la Parte IV y V.
Lo que se pretende presentando esta “estructura de algoritmo Principal” es ilustrar una de las formas de emplear las estructuras selectivas en los algoritmos de solución, pero de ninguna manera se debe entender como una obligación o un lineamiento a seguir ciegamente, es más en la próxima página y en la Parte IV se estarán mostrando otras posibles estructuras para el algoritmo Principal de la solución.
Otra posible estructura para las soluciones a desarrollar es la siguiente estructura en el algoritmo Principal:
- Declaración de variables y/o constantes
- Identificación del Programa en pantalla
- Lectura de los Datos de Entrada con sus respectivos mensajes de entrada
- Si (NO se cumple restricción del Dato 1)
Entonces
Mostrar un mensaje de Error de Dato 1
- Si (NO se cumple restricción del Dato 2)
Entonces
Mostrar un mensaje de Error de Dato 2
- Si (NO se cumple restricción del Dato N-ésimo)
Entonces
Mostrar un mensaje de Error de Dato N-ésimo
- Sí (Se Cumplen Restricciones de todos los Datos de Entrada)
Entonces
Realizar el(los) proceso(s) de cálculo y/o
Decisiones (+Por invocación de métodos) y/o cálculos y/o impresiones y/o
Realizar la (s) salida(s) de dato(s) con sus respectivos mensajes de salida
*Esta estructura tiene la ventaja de que se informa al usuario de cada uno de los errores y la desventaja que se incrementa el número de pasos y vuelve más “extenso” el código.
**Los errores se manejan por N estructuras selectivas simples en el “camino” cierto PERO cuya condición es la negación de la Restricción del dato N. Ejemplo: la restricción de salario es: debe ser mayor que cero entonces la condición para el manejo del error con una estructura simple es !(salario>0)
***La estructura selectiva que verifica que se Cumple todas las restricciones (antes de realizar el proceso) va a ser simple pues ya no se dará un mensaje general cuando no se cumplan las restricciones.
...