Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez
-
Upload
manuel-gonzalez -
Category
Education
-
view
6.567 -
download
4
description
Transcript of Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez
![Page 1: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/1.jpg)
SOLUCION DE PROBLEMAS CON PROGRAMACION
ME MANUEL GONZALEZ SANCHEZ
![Page 2: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/2.jpg)
COMO USAR LOS TIC´S EN LOS PROCESOS DE LA SOLUCION DE PROBLEMAS
![Page 3: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/3.jpg)
QUE SON TIC’S??
• Las tecnologías de la información y la comunicación son un conjunto de servicios, redes, software y dispositivos que tienen como fin la mejora de la calidad de vida de las personas dentro de un entorno, y que se integran a un sistema de información interconectado y complementario
![Page 4: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/4.jpg)
PROCEDIMIENTOS PARA PLANTEAR PROBLEMAS BASICOS Y ESTABLECER SUS SOLUCIONES
![Page 5: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/5.jpg)
SOLUCION DE PROBLEMAS MEDIANTE ALGORITMOS
• Objetivos
Describir la diferencia entre la solución de problemas algorítmica y heurística.
Presentar y describir las seis etapas para resolver un problema.
![Page 6: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/6.jpg)
¿Qué es un algoritmo?• Es una serie de pasos organizados que
describe el proceso que se debe seguir para dar solución a un problema especifico.
• Es aquel por medio del cual se realiza un análisis previo del problema a resolver y encontrar un método que permita resolverlo. El conjunto de todas las operaciones a realizar y el orden en el que deben efectuarse.
![Page 7: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/7.jpg)
Diseño para un algoritmoLas características de un buen algoritmo son:• Tener un punto particular de inicio.• Ser definido: no debe permitir dobles
interpretaciones.• Ser general: soportar la mayoría de las
variantes que se puedan presentar en la definición del problema.
• Debe ser finito en tamaño y tiempo de ejecución.
![Page 8: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/8.jpg)
ETAPAS PARA LA SOLUCIÓN DE PROBLEMAS
• Identificar el problema.¿Cuál es el problema?
• Análisis del problema.¿Qué se sabe del el problema?
• Generación de soluciones potenciales.Describe el conocimiento básico y lo que se espera debe conocerse para resolver el problema.Identificar las distintas alternativas (vias alternas) para resolver el problema.¿De cuántas formas se puede resolver el problema? Indica los:
Aspectos a favor de cada alternativaAspectos en contra de cada alternativa
![Page 9: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/9.jpg)
ETAPAS PARA LA SOLUCIÓN DE PROBLEMAS
• Selección y planificación de la solución. ¿Con qué alternativa me quedo? Para seleccionar la mejor vía, se requiere establecer los criterios de evaluación.
• Aplicación de la solución
• Evaluación de la solución¿Se resolvió el problema? (errores, éxitos, porcentaje de la resolución)
![Page 10: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/10.jpg)
Tipos de Problemas• Algunos problemas, se resuelven con una serie de
actividades claras y específicas. Esta forma de solución se conoce como solución algorítmica. En este caso, las distintas actividades se ejecutan en un orden lógico, etapa por etapa.
• La solución a otros problemas menos sistemáticos como qué computadora comprar, dónde invertir el capital, cuándo mover las acciones de una cuenta a otra, requiere mayor conocimiento, experiencia e inmiscuirse en un proceso de intento y error.
![Page 11: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/11.jpg)
Entre los primeros, se encuentran:– ordinogramas (flujogramas), – las tablas de decisión y,– los pseudocódigos.
En los segundos:La solución a este tipo de problemas que no recite la simpleza y claridad de ir etapa por etapa se conoce como solución heurística.
![Page 12: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/12.jpg)
Tipos de Problemas
• Problemas por etapas. Esto quiere decir que para su resolución se requiere aplicar más de una operación.
• Problema en el cual los pasos para encontrar la solución no están indicados en el texto de la situación problemática.
• Problemas incompletos o de soluciones múltiples.
![Page 13: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/13.jpg)
Solución de problemas con computadoras
• En el campo de las computadoras se entiende por solución las instrucciones que se dan a la computadora, paso por paso con el propósito de obtener el mejor resultado.
• El resultado es la salida o la respuesta asistida por la computadora.
• Programa: es el grupo de instrucciones que, una vez codificadas en un lenguaje de computadora, hacen posible la solución.
![Page 14: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/14.jpg)
Glosario
• Algoritmo: serie de pasos organizados para dar solución a un problema especifico.
• Solución algorítmica: Es un proceso óptico utilizando el principio de mínimo pontriguin para sistemas de eventos discretos.
• Solución herística: Es un algoritmo que abandona uno o ambos objetivos, normalmente encuentra buenas soluciones, pero en ocasiones no hay prueba de que la solución no pueda ser errónea y se ejecuta racionalmente rápido aunque no existe prueba de que pueda ser así.
![Page 15: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/15.jpg)
Glosario
• Programa: Es una serie de ordenes dirigidas a la maquina para ejecutar una tarea determinada automatizada mente.
• Resultados: La consecuencia del efecto de una acción.
• Solución: Es la respuesta a un problema.
![Page 16: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/16.jpg)
Reglas para Estructurar algoritmos
![Page 17: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/17.jpg)
Concepto
Algoritmo: es un método para
resolver un problema mediante una serie de pasos definidos, precisos y finitos.
Preciso: implica el orden de realización de cada uno de los pasosDefinido: si se sigue dos veces, se obtiene el mismo resultado. Finito: Tiene un numero determinado de pasos, implica que tiene un fin.
![Page 18: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/18.jpg)
TiposMétodo Descripción Ejemplos Algorítmico Utiliza un algoritmo y
puede ser implementado en una computadora
Instrucciones para manejar un vehículo
Instrucciones para resolver ecuación de segundo grado
Heurística Se apoya en el resultado obtenido en un análisis de alternativas de experiencias anteriores similares. De las mismas, a se deducen una serie de reglas empíricas o heurísticas que de ser seguidas, conducen a la selección de la mejor alternativa en todas o la mayoría de las veces.
![Page 19: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/19.jpg)
Tipos de problemas
La solución a otros problemas menos sistemáticos como qué computadora comprar, dónde invertir el capital, cuándo mover las acciones de una cuenta a otra, requiere mayor conocimiento, experiencia e inmiscuirse en un proceso de intento y error.
![Page 20: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/20.jpg)
Solución de problemas con computadoras
En el campo de las computadoras se entiende por solución las instrucciones que se dan a la computadora, paso por paso con el propósito de obtener el mejor resultado. El resultado es la salida (output) o la respuesta asistida por la computadora y el grupo de instrucciones que, una vez codificadas en un lenguaje de computadora, hacen posible la solución.
![Page 21: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/21.jpg)
Realizar un Algoritmo
El programador diseña un programa, para resolver un problema particular.
Diseñar es un proceso creativo. El proceso de diseño de un programa consta de
los siguientes pasos o etapas
![Page 22: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/22.jpg)
PasosPasos Etapa Descripcion1.- Análisis del problema Conducen al diseño detallado por medio de un
código escrito en forma de un algoritmo
2.- Diseño de algoritmo Se implementa el algoritmo en un código escrito en un lenguaje de programación. Refleja las ideas desarrolladas en las etapas de análisis y diseño
3.- .
4.- Complicación y ejecución Traduce el programa fuente a programa en código de maquina y lo ejecuta.
5 Verificación Busca errores en las etapas anteriores y los elimina
6 Depuración Busca errores en las etapas anteriores y los elimina
7.- Documentacion Son comentarios, etiquetas de texto, que facilitan la comprensión del programa
![Page 23: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/23.jpg)
DIAGRAMA DE FLUJO Y COMO APLICARLOS PARA SOLUCIONAR
PROBLEMAS
![Page 24: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/24.jpg)
DIAGRAMAS DE FLUJO
RESPONSABLES DE EJECUCION; EN POCAS PALABRAS ES LA REPRESENTACION SIMBOLICA O PICTORICA DE UN PROCEDIMIENTO ADMINISTRATIVO
<EVITAR SUMIDEROS INFINITOS, BURBUJAS QUE TIENEN ENTRADAS PERO NO SALIDAS.<EVITAR LAS BURBUJAS DE GENERACION ESPONTANEA QUE TIENE SALIDASSIN TENER ENTRADAS , PORQUE SON SUMAMENTE SOSPECHOSASY GENERALMENTE INCORRECTAS
![Page 25: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/25.jpg)
Un diagrama de flujo es una forma más tradicional de especificar los detalles algorítmicos de un proceso y constituye la representación gráfica de un proceso multifactorial. Se utiliza principalmente en programación, economía y procesos industriales, pasando también a partir de estas disciplinas a formar parte fundamental de otras, como la psicología cognitiva; estos diagramas utilizan una serie de símbolos con significados especiales. Son la representación gráfica de los pasos de un proceso, que se realiza para entenderlo mejor. Son modelos tecnológicos utilizados para comprender los rudimentos de la programación lineal representativos.
.
![Page 26: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/26.jpg)
Un diagrama de flujo.- Es la representación gráfica de flujo o secuencia de resta es asi desde que empezó, etc. Rutinas simples, son la forma de especificar los detalles algorítmicos de un proceso mediante la esquematización gráfica para entenderlo mejor. Se basan en la utilización de diversos símbolos para representar operaciones específicas. Se les llama diagramas de flujo porque los símbolos utilizados se conectan por medio de flechas para indicar la secuencia de la operación.
![Page 27: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/27.jpg)
Un diagrama de flujo es la representación gráfica del flujo o secuencia de rutinas simples. Tiene la ventaja de indicar la secuencia del proceso en cuestión, las unidades involucradas y los responsables de su ejecución; en pocas palabras es la representación simbólica o pictórica de un procedimiento administrativo.
![Page 28: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/28.jpg)
DIGRAMA DE FLUJO
Diagrama de flujo sencillo con los pasos a seguir si una lámpara no funciona
![Page 29: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/29.jpg)
ALGUNOS SIMBOLOS UTILIZADOS EN LOS DIAGRAMAS
![Page 30: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/30.jpg)
Características que debe cumplir un diagrama de flujo
En los diagramas de flujo se presuponen los siguientes aspectos:
Existe siempre un camino que permite llegar a una solución (finalización del algoritmo).Existe un único inicio del proceso.Existe un único punto de fin para el proceso de flujo (salvo del rombo que indica una comparación con dos caminos posibles).
![Page 31: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/31.jpg)
Desarrollo del Diagrama de FlujoLas siguientes son acciones previas a la realización del diagrama de flujo:
Identificar las ideas principales a ser incluidas en el diagrama de flujo. Deben estar presentes el dueño o responsable del proceso, los dueños o responsables del proceso
anterior y posterior y de otros procesos interrelacionados, otras partes interesadas.Definir qué se espera obtener del diagrama de flujo.
Identificar quién lo empleará y cómo.Establecer el nivel de detalle requerido.
Determinar los límites del proceso a describir. Los pasos a seguir para construir el diagrama de flujo son :
Establecer el alcance del proceso a describir. De esta manera quedará fijado el comienzo y el final del diagrama. Frecuentemente el comienzo es la salida del proceso
previo y el final la entrada al proceso siguiente.Identificar y listar las principales actividades/subprocesos que están incluidos en el
proceso a describir y su orden cronológico.Si el nivel de detalle definido incluye actividades menores, listarlas también.
Identificar y listar los puntos de decisión.Construir el diagrama respetando la secuencia cronológica y asignando los
correspondientes símbolos.Asignar un título al diagrama y verificar que esté completo y describa con exactitud el
proceso elegido.
![Page 32: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/32.jpg)
RecomendacionesA su vez, es importante que al construir diagramas de flujo, se observen las
siguientes recomendaciones:Evitar sumideros infinitos, burbujas que tienen entradas pero no salidas.
Evitar las burbujas de generación espontánea, que tienen salidas sin tener entradas, porque son sumamente sospechosas y generalmente incorrectas.
Tener cuidado con los flujos y procesos no etiquetados. Esto suele ser un indicio de falta de esmero, pero puede esconder un error aún más grave: a veces el analista
no etiqueta un flujo o un proceso porque simplemente no se le ocurre algún nombre razonable.
Ventajas de los Diagramas de FlujoFavorecen la comprensión del proceso a través de mostrarlo como un dibujo. El
cerebro humano reconoce fácilmente los dibujos. Un buen diagrama de flujo reemplaza varias páginas de texto.
Permiten identificar los problemas y las oportunidades de mejora del proceso. Se identifican los pasos redundantes, los flujos de los re-procesos , los conflictos de autoridad, las responsabilidades, los cuellos de botella, y los puntos de decisión.
Muestran las interfaces cliente-proveedor y las transacciones que en ellas se realizan, facilitando a los empleados el análisis de las mismas.
Son una excelente herramienta para capacitar a los nuevos empleados y también a los que desarrollan la tarea, cuando se realizan
![Page 33: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/33.jpg)
Tipos de diagramas de flujoFormato Vertical: En él el flujo o la secuencia de las operaciones, va de arriba hacia abajo. Es una lista ordenada de las operaciones de un proceso con toda la información que se considere necesaria, según su propósito.Formato Horizontal: En él el flujo o la secuencia de las operaciones, va de izquierda a derecha.Formato Panorámico: El proceso entero está representado en una sola carta y puede apreciarse de una sola mirada mucho más rápido que leyendo el texto, lo que facilita su comprensión, aun para personas no familiarizadas. Registra no solo en línea vertical, sino también horizontal, distintas acciones simultáneas y la participación de más de un puesto o departamento que el formato vertical no registra.
![Page 34: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/34.jpg)
DIAGRAMA DE FLUJO EN FORMATO VERTICAL
![Page 35: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/35.jpg)
DIAGRAMA DE FLUJO FORMATO HORIZONTAL
![Page 36: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/36.jpg)
DIAGRAMA DE FLUJO FORMATO PANORAMICO
![Page 37: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/37.jpg)
Diagrama de Flujo de DatosComponentes de un Diagrama de Flujo de Datos (DFD) según la notación de Yourdon y DeMarco.Un diagrama de flujo de datos (DFD por sus siglas en español e inglés) es una representación gráfica del "flujo" de datos a través de un sistema de información. Un diagrama de flujo de datos también se puede utilizar para la visualización de procesamiento de datos (diseño estructurado). Es una práctica común para un diseñador dibujar un contexto a nivel de DFD que primero muestra la interacción entre el sistema y la entidades externas. Este contexto a nivel de DFD se "explotó" para mostrar más detalles del sistema que se está modelando.
![Page 38: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/38.jpg)
DIAGRAMA DE FLUJO DE DATOS
![Page 39: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/39.jpg)
Diagrama de Contexto: Nivel 0 En el diagrama de contexto solo se dibuja el proceso principal y los flujos entre este y sus entidades externas.
Diagrama de Nivel Superior: Nivel 1 En el diagrama de nivel superior se plasman todos los procesos que describen al proceso principal. En este nivel los procesos no pueden interrelacionarse directamente, sino que entre ellos siempre debe existir algún almacenamiento o entidad
NIVELES DE DIGRAMA DE FLUJO
![Page 40: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/40.jpg)
NIVELES DE DIAGRAMA
• Diagrama de Detalle o Expansión: Nivel 2 • A partir del nivel 2 de detalle, los procesos pueden
interrelacionarse directamente, sin necesidad de almacenamiento que los una. Cabe destacar que en el nivel 1 y 2 siempre los procesos deben tener las entradas y las salidas dadas en el diagrama de contexto.
• Nota: Diagrama de nivel 2 (o superior) en la fotografía. Es de nivel >= 2, y no de nivel 1 porque en el nivel 1 no se permiten las interconecciones entre procesos, como puede verse entre el proceso 2 y 3. tambien no se que mas decir
![Page 41: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/41.jpg)
Lenguaje Estructurado
![Page 42: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/42.jpg)
Es un método de programación basado sobre el concepto de la unidad y del alcanzo .Un lenguaje estructurado se compone de unas o mas unidades o módulos-escrito por el usuario o sacado de una librería: Cada modulo se compone de uno o mas procedimientos también llamada una función, una rutina, un subprograma, o un método dependiendo del lenguaje de programación.
![Page 43: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/43.jpg)
Un lenguaje estructurado ( no imperativa) es logo, especifica secuencias de pasos para realizarse pero no tiene un estado interno. Ofrece muchas ventajas sobre la programación secuencial: el código de programación estructurada es mas fácil de leer y mas conservable: el código procesado es mas flexible; la programación estructurada permite la practica mas fácil del buen diseño del programa.
![Page 44: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/44.jpg)
DEFINICIÓN DE LAS ESTRUCTURAS BÁSICAS DE CONTROL LÓGICO
• 1.- SECUENCIA • 2.- SELECCIÓN • 3.- ITERACIÓN
![Page 45: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/45.jpg)
1.- SECUENCIA
Indica que las instrucciones de un programa
se ejecutan una después de la otra, en el mismo orden en el cual aparecen en el programa.
![Page 46: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/46.jpg)
2.- SELECCIÓN
También conocida como la estructura SI-CIERTO-FALSO, plantea la selección entre dos alternativas con base en el resultado de la evaluación de una condición o predicado; equivale a la instrucción IF de todos los lenguajes de programación y se representa gráficamente.
![Page 47: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/47.jpg)
3.ITERACIÓN
También llamada la estructura HACER-
MIENTRAS-QUE, corresponde a la ejecución repetida de una instrucción mientras que se cumple una determinada condición .
![Page 48: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/48.jpg)
Ventajas del lenguaje estructurada
*La estructura del lenguaje es clara* La estructura del lenguaje es clara
*Los lenguajes son más fáciles de entender*Reducción del esfuerzo en las pruebas
*Reducción de los costes de mantenimiento de los lenguajes.
*Lenguajes más sencillos y más rápidos *Los bloques de código son auto explicativos
*Los GOTO se reservan para construir las instrucciones básicas .
![Page 49: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/49.jpg)
Pseudoscódigos
![Page 50: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/50.jpg)
*Pseudocódigo* Es una serie de normas léxicas y gramaticales parecidas a la mayoría de
los lenguajes de programación, pero sin llegar a la rigidez de sintaxis de estos ni a la fluidez del lenguaje coloquial. Esto permite codificar un programa con mayor agilidad que en cualquier lenguaje de programación, con la misma validez semántica, normalmente se utiliza en las fases de análisis o diseño de Software, o en el estudio de un algoritmo. Forma parte de las distintas herramientas de la ingeniería de software. El pseudocódigo describe un algoritmo utilizando una mezcla de frases en lenguaje común, instrucciones de programación y palabras clave que definen las estructuras básicas. Su objetivo es permitir que el programador se centre en los aspectos lógicos de la solución a un problema.
![Page 51: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/51.jpg)
*Pseudocódigo*
No siendo el pseudocódigo un lenguaje formal, varían de un programador a otro, es decir, no hay una estructura semántica ni arquitectura estándar. Es una herramienta ágil para el estudio y diseño de aplicaciones, veamos un ejemplo, que podríamos definir como: lenguaje imperativo, de tercera generación, según el método de programación estructurada.
Pseudocódigo = Pseudo (Supuesto) + Código (Instrucción)
![Page 52: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/52.jpg)
Definición de datos del Pseudocódigo
• La definición de datos se da por supuesta, sobre todo en las variables sencillas, si se emplea formaciones: pilas, colas, vectores o registros, se pueden definir en la cabecera del algoritmo, y naturalmente cuando empleemos el pseudocódigo para definir estructuras de datos, esta parte la desarrollaremos adecuadamente.
![Page 53: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/53.jpg)
Secuencial * • Las instrucciones se siguen en una secuencia fija que
normalmente viene dada por el número de renglón. Es decir que las instrucciones se ejecutan de arriba hacia abajo.
• Instrucción1 • Instrucción2• Instrucción3
![Page 54: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/54.jpg)
Selectiva • La instrucción selectiva determina si una determinada
instrucción se ejecuta o no, según el cumplimiento de una condición P.
![Page 55: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/55.jpg)
Diagrama de flujo que muestra el funcionamiento de la instrucción condicional
si P entonces Instrucciones1 fin si La condición P es una variable booleana o una función
reducible a booleana (lógica, Verdadero/Falso). Si esta condición es cierta se ejecuta Instrucciones1, si no es así, ésta no se ejecuta.
![Page 56: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/56.jpg)
Selectiva doble (alternativa) La instrucción selectiva realiza una instrucción de dos posibles, según el
cumplimiento de una condición P. Diagrama de flujo que muestra el funcionamiento de la instruccióncondicionalsi P entonces Instrucciones1si no Instrucciones2 fin si La condición P es una variable booleana o una función reducible abooleana (lógica, Verdadero/Falso). Si esta condición es cierta seejecuta Instrucciones1, si no es así, entonces se ejecuta
![Page 57: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/57.jpg)
Selectiva múltiple
También es común el uso de una selección múltiple que equivaldría a anidar varias funciones de selección.
si Condición1 entonces Instrucciones1 si no si Condición2 entonces Instrucciones2 si no si Condiciónn entonces Instruccionesn – 1 si no Instruccionesn fin si
![Page 58: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/58.jpg)
• En este caso hay una serie de condiciones que tienen que ser mutuamente excluyentes, si una de ellas se cumple las demás tienen que ser falsas necesariamente, hay un caso si no que será cierto cuando las demás condiciones sean falsas.
• En esta estructura si Condición1 es cierta, entonces se ejecuta sólo Instrucciones1. En general, si Condicióni es verdadera, entonces sólo se ejecuta Instruccionesi
![Page 59: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/59.jpg)
Selectiva múltiple-Casos Una construcción similar a la anterior (equivalente en algunos casos) es la que se muestra a continuación.• seleccionar Indicador • caso Valor1: • Instrucciones1 • caso Valor2: • Instrucciones2 • caso Valorn-1: • Instruccionesn-1 • [en otro caso: • Instruccionesn] • Fin seleccionar Indicador • En este caso hay un Indicador es una variable o una función cuyo
valor es comparado en cada caso con los valores "Valori", si en algún caso coinciden ambos valores, entonces se ejecutarán las Instruccionesi correspondientes. La sección en otro caso es análoga a la sección si no del ejemplo anterior.
![Page 60: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/60.jpg)
Iterativa *
• Las instrucciones iterativas abren la posibilidad de realizar una secuencia de instrucciones más de una vez.
Diagrama de flujo que muestra el funcionamiento de lainstrucción mientrasmientras P hacerInstruccionesfin mientras El bucle se repite mientras la condición P sea cierta, si al llegar
por primera vez al bucle mientras la condición es falsa, el cuerpo del bucle no se ejecuta ninguna vez.
![Page 61: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/61.jpg)
El anidamiento Cualquier instrucción puede ser sustituida por unaestructura de control. El siguiente ejemplo muestra unpseudocódigo de un método de ordenamiento denominadoOrdenamiento de burbuja en el cual aparecen variasestructuras anidadas. Este algoritmo ordena una lista L.
• procedimiento // es una lista con n elementos// • hacer • para hasta hacer • si entonces • fin si • fin para • mientras fin procedimiento
![Page 62: Concentrado del Modulo Soluciones de Problemas - Manuel Gonzalez Sanchez](https://reader033.fdocuments.es/reader033/viewer/2022051817/54880550b4af9f9b0d8b55d9/html5/thumbnails/62.jpg)
Desarrollo de algoritmos
Con este pseudocódigo se puede desarrollarcualquier algoritmo que:• Tenga un único punto de inicio. • Tenga un número finito de posibles puntos de
término. • Haya un número finito de caminos, entre el punto
de inicio y los posibles puntos de término.