01 Solución de Problemas...Pseudocodigo LPP 6.2. Diagramas de flujo DFD 01 ción 1.1. Introducción...

16
5 Fase Análisis Fase Análisis Sena Producción en multimedia Solución de problemas Introducción Lógica de la programación Introducción a la programación 2.1. Conceptos generales 2.2. Algoritmos y diagramas de flujo 2.3. Conceptos fundamentales 2.4. Construcción de Algoritmos y Diagramas de flujo. Estructuras Selectivas 3.1. Si Entonces (If Then) 3.2. Si Entonces Sino (If Then Else) 3.3. Si Anidado 3.4. Si Multiple (Case) Estructuras Repetitivas 4.1. Mientras que (While) 4.2. Repetir para (For) 4.3. Hacer mientras (Do … while) Estructuras de Datos (Arreglos) 5.1. Arreglos en una dimensión o Vectores 5.2. Arreglos multidimensionales Herramientas para la Simulación 6.1. Pseudocodigo LPP 6.2. Diagramas de flujo DFD 0 1 Solución de problemas, programación, Estructuras selectivas, repetitivas y datos, herramienta para simulación 1.1. Introducción a la solución de problemas: C aracterísticas, pasos para resolverlos, estrategia para mejorar la compresión del enunciado de un problema y las va- riables e identificación de los datos de un pro- blema. Con frecuencia la solución de problemas ha es- tado rodeada de mitos y creencias que obstaculi- zan el aprendizaje, se atribuyen a los problemas dificultades no justificadas que, más bien, surgen de la falta de información acerca de lo que es un problema y de la variedad de estrategas que pueden utilizarse para resolverlos. Un problema es un enunciado en el cual se da cierta información y se plantea una pregun- ta que debe ser respondida; en general se pide calcular o indagar uno o más datos faltantes o generar explicaciones acerca de ciertos hechos o situaciones. Todo problema involucra una discrepancia o diferencia entre dos situaciones, una observa- da o dada y otra deseada. Resolver el problema es encontrar la manera de reducir o eliminar la discrepancia. 0 1 Solución de Problemas Tipos de Problemas De acuerdo con la naturaleza de la informa- ción que se da o se proporciona, los problemas se dividen en dos tipos: estructurados y no es- tructurados. En el primer tipo se proporciona la información necesaria y suficiente para encon- trar la solución, y en el segundo la información es incompleta o ambigua y debe complementarse con datos adicionales. Etapas para resolver un problema Para llegar a la solución de un problema la persona debe, en primer lugar; leer cuidadosa- mente el enunciado, codificar toda la informa- ción dada e identificar la información relevante y las pistas que se dan. Este proceso contribu- ye a lograr una clara imagen o representación mental del problema y es básica para alcanzar la segunda etapa durante el proceso de solución de un problema. Con frecuencia la solución de problemas ha estado rodeada de mitos y creencias que obstaculizan el aprendizaje 02 03 04 05 06 4 Solución de Problemas 1.1. Introducción a la solución de problemas: Características, pasos para resolverlos, estrategia para mejorar la compresión del enunciado de un problema y las variables e identificación de los datos de un problema 1.2. Relación entre variables y características: Relaciones parte-todo, de orden, con inversiones, con inversiones de orden y familiares. 1.3. Problemas acerca de las relaciones entre dos variables: tablas numéricas, lógicas y conceptuales.

Transcript of 01 Solución de Problemas...Pseudocodigo LPP 6.2. Diagramas de flujo DFD 01 ción 1.1. Introducción...

  • 54 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Solución de problemas

    Introducción

    Lógica de laprogramación

    Introducción a la programación2.1. Conceptos generales

    2.2. Algoritmos y diagramas de flujo

    2.3. Conceptos fundamentales

    2.4. Construcción de Algoritmos y Diagramas

    de flujo.

    Estructuras Selectivas3.1. Si Entonces (If Then)

    3.2. Si Entonces Sino (If Then Else)

    3.3. Si Anidado

    3.4. Si Multiple (Case)

    Estructuras Repetitivas4.1. Mientras que (While)

    4.2. Repetir para (For)

    4.3. Hacer mientras (Do … while)

    Estructuras de Datos (Arreglos)5.1. Arreglos en una dimensión o Vectores

    5.2. Arreglos multidimensionales

    Herramientas para la Simulación6.1. Pseudocodigo LPP

    6.2. Diagramas de flujo DFD

    01

    Solución de problemas, programa

    ción, Estructuras

    selectivas, repetitivas y datos, her

    ramienta para simulación 1.1. Introducción a la

    solución de problemas:

    Características, pasos para resolverlos, estrategia para mejorar la compresión del enunciado de un problema y las va-riables e identificación de los datos de un pro-blema.

    Con frecuencia la solución de problemas ha es-tado rodeada de mitos y creencias que obstaculi-zan el aprendizaje, se atribuyen a los problemas dificultades no justificadas que, más bien, surgen de la falta de información acerca de lo que es un problema y de la variedad de estrategas que pueden utilizarse para resolverlos.

    Un problema es un enunciado en el cual se da cierta información y se plantea una pregun-ta que debe ser respondida; en general se pide calcular o indagar uno o más datos faltantes o generar explicaciones acerca de ciertos hechos o situaciones.

    Todo problema involucra una discrepancia o diferencia entre dos situaciones, una observa-da o dada y otra deseada. Resolver el problema es encontrar la manera de reducir o eliminar la discrepancia.

    01 Solución de Problemas

    Tipos de Problemas

    De acuerdo con la naturaleza de la informa-ción que se da o se proporciona, los problemas se dividen en dos tipos: estructurados y no es-tructurados. En el primer tipo se proporciona la información necesaria y suficiente para encon-trar la solución, y en el segundo la información es incompleta o ambigua y debe complementarse con datos adicionales.

    Etapas para resolver un problema

    Para llegar a la solución de un problema la persona debe, en primer lugar; leer cuidadosa-mente el enunciado, codificar toda la informa-ción dada e identificar la información relevante y las pistas que se dan. Este proceso contribu-ye a lograr una clara imagen o representación mental del problema y es básica para alcanzar la segunda etapa durante el proceso de solución de un problema.

    Con frecuencia la solución de problemas ha estado rodeada de mitos y creencias que obstaculizan el aprendizaje

    02

    03

    04

    05

    06

    4

    Solución de Problemas

    1.1. Introducción a la solución de problemas: Características, pasos para resolverlos, estrategia para mejorar la compresión del enunciado de un problema y las variables e identificación de los datos de un problema

    1.2. Relación entre variables y características: Relaciones parte-todo, de orden, con inversiones, con inversiones de orden y familiares.

    1.3. Problemas acerca de las relaciones entre dos variables: tablas numéricas, lógicas y conceptuales.

  • 76 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Solución de problemas

    Solución de problemas

    Solu

    ción

    de

    prob

    lem

    as S

    olu

    Características de los problemas

    Un problema es un enunciado acerca de una situación determina en el cual se dan datos o in-formación y se plantea una pregunta acerca de una discrepancia o un desequilibrio entre una si-tuación observada o dada y una situación desea-da. La respuesta a la pregunta proporciona los datos para reducir la discrepancia y constituye la solución el problema.

    Identificación de las características del enunciado de un problema.

    Ejercicio introductorio

    1. Las grandes ciudades son urbes superpo-bladas con una enorme diversidad de activida-des comerciales y productivas, generalmente con grandes problemas de contaminación. ¿Cuáles son las principales causas de la contaminación ambiental de las grandes ciudades?

    2. ¿Cuántos jóvenes han recibido los benefi-cios del plan de renovación de la educación del país Colombia?

    3. La protección de la salud de la población es uno de los beneficios más importantes que una comunidad puede recibir. Se precisa saber hasta qué punto este beneficio lo están recibiendo los habitantes de la región del Catatumbo.

    Problemas Estructurados y Problemas no Estructurados

    Problemas no estructurados La información dada no es suficiente

    EstructuradosLa información dada es la necesaria y suficiente

    Pasos para resolver un Problema:

    Estrategia para resolver un problema.

    1. Leer el problema en su totalidad e identificar los datos y la pregunta.

    2. Leer el problema parte por parte y representar los datos en un diagrama.

    3. Interpretar el diagrama y extraer conclusiones.

    4. Relacionar las conclusiones con la pregunta del problema

    5. Realizar los cálculos que sean requeridos6. Verificar resultado

    Una estrategia es un conjunto ordenado de pasos que permite lograr un objetivo.

    Estrategia para mejorar la comprensión del enunciado de un problema: componentes de un problema

    a. Estado inicial: condición de partida.b. Estados intermedios: diferente etapas

    intermedia que deben completarse para resolver el problema.

    c. Estado final: condición de llegada determinada por lo que se pide en el enunciado del problema.

    d. Operaciones: diferentes acciones, actividades o procesos sugeridos en el problema.

    e. Condiciones: requerimientos o condiciones que se imponen en el enunciado

    f. Pregunta: lo que se desea saber o se cuestiona en el problema

    Un problema es un enunciado en el cual se plantean datos iniciales y finales, se describen algunas acciones realizadas, se establecen restricciones (si existen) y se plantea una pregunta acerca de uno o más datos faltantes. Resolver el problema es encontrar el o los datos faltantes.

    Estrategia general y específica

    En este caso, dentro de la estrategia general utilizamos además dos estrategias particulares o específicas:

    La identificación de los elementos del problema

    La elaboración del diagrama

    La identificación de los elementos del problema y la elaboración del diagrama también tienen sus particulares. Una estrategia es un conjunto ordenado de pasos que permite lograr un objetivo.

    Componentes de un problema

    Datos Iniciales Estado inicial

    Datos finales Estado final

    Productos intermedios Estados intermedios

    Actividades que se describen Acciones u operaciones

    Lo que se debe respetar Restricciones

    Lo que se desea saber Pregunta del problema

    ¿Cuántos jóvenes han recibido los beneficios del plan de renovación de la educación del país Colombia?

  • 98 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Solución de problemas

    Solución de problemas

    Las variables y la identificación de los datos de un problema

    Los datos de un problema, cualquiera que éste sea, se expresan en términos de variables, de los valores de éstas o de características de los obje-tos o situaciones involucradas en el enunciado. Podemos afirmar que los datos siempre provie-nen de variables. Vale recordar que una varia-ble es una magnitud que puede tomar valores cualitativos o cuantitativos.

    Para distinguir estos conceptos consideremos el siguiente ejemplo. Si hablamos del peso del cuerpo, nos referimos a una variable; si deci-mos que María pesa 60 kg, nos referimos a una característica de María; y si decimos que la va-riable peso puede tomar los valores desde cero hasta infinito, estamos hablando de valores de la variable.

    Por lo que cabe mencionar que la compren-sión del enunciado de un problema está íntima-mente relacionada con la identificación clara y precisa de las variables que se consideran en el enunciado.

    Concepto de variable

    El concepto de variable lo hemos utilizado en temas anteriores con otro nombre, el de aspecto. Siempre dijimos que edad, color, tamaño, canti-dad de dinero, lugar, etc., eran aspectos; ahora estamos dándole al aspecto un nuevo nombre, el de variable, y estamos aprendiendo algo más sobre éstas. Una variable es una magnitud que puede tomar valores cualitativos o cuantitativos.

    1.2. Relación entre variables y características: Relaciones parte-todo, de orden, con inversiones, con inversiones de orden y familiares.

    Una relación es un nexo entre dos o más carac-terísticas correspondientes a la misma variable. En el enunciado del problema se dan los valores de las variables que correspondan y se presentan los nexos entre éstas; del análisis de estos nexos surge el tipo de relación, y de éste la estrategia particular de representación que se va a utilizar para comprender el problema, lograr la imagen mental y, en muchos casos, obtener la solución.

    Las variables, sus valores y sus relaciones con-forman los datos de los problemas. Un dato puede ser una variable, un valor de una variable o una relación entre dos variables o entre sus valores.

    Problemas acerca de las relaciones parte-todo:

    En este tipo de problema unimos un conjunto de partes conocidas para formar diferentes cantidades y generar ciertos desequilibrios entre las partes. Son problemas donde se relacionan partes para formar una totalidad deseada, por eso se denominan “problemas sobre relaciones parte-todo”.

    Problemas respecto a relaciones de orden:

    La estrategia a utilizar se denomina represen-tación lineal y permite visualizar el enunciado de los problemas y en la mayoría de los casos, lograr la solución. La estrategia que permite re-presentar datos correspondientes a una sola va-riable o aspecto se denomina representación en una dimensión.

    Problemas acerca de las relaciones con inversiones de orden:

    En este caso se requiere aplicar una estrategia adicional, llamada postergación, que consiste en dejar para más tarde aquellos datos que parez-can incompletos, hasta que se presente el dato que complete la información.

    Problemas acerca de las relaciones con inversiones de orden:

    Ejercicios con enunciados confusos, en este tipo de casos es necesario prestar atención espe-cial a la variable, a los signos de puntuación y al uso de ciertas palabras presentes en el enunciado.

    Problemas acerca de las relaciones familiares:

    En este tipo de ejercicios se presenta un tipo particular de relación referido a los nexos de pa-rentesco entre los diferentes componentes de la familia. Los tipos de relaciones o nexos que se presentan entre los miembros de una familia pue-den ser: Relaciones padre-hijo, entre hermanos, tío sobrino, entre primos, entre esposos y sus familiares, suegros, yernos, cuñados, etc.

    1.3. Problemas acerca de las relaciones entre dos variables: tablas numéricas, lógicas y conceptuales.

    En este tipo de problemas se plantean relacio-nes simultaneas entre dos variables y se pide una respuesta que corresponde a una tercera variable que resulta de las relaciones previamente men-cionadas. En este tipo de problemas la estrategia más apropiada para obtener las soluciones es la construcción de tablas.

    La estrategia particular que se utiliza en este caso es la representación mediante tablas, que son reticulados que tienen filas y columnas, las cuales determinan celdas. En las filas y las co-lumnas se representan los tipos de variables con-sideradas y en las celdas se insertan los números o valores de las diferentes pares de variables.

    De las tres variables que se dan, dos son cua-litativas y permiten construir la tabla, y la ter-cera puede ser cualitativa, cuantitativa o lógica, según el tipo de respuesta que se pide encontrar y los datos dados en el problema. Esta tercera variable siempre está incluida en la pregunta del problema y se utiliza para llenar las celdas o los cuadros de la tabla.

  • 1110 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Introducción a la programación

    Solución de problemas

    Tres tipos de problemas se refieren a estas relaciones entre variables: relaciones numéricas, relaciones lógicas entre dos o más variables y relaciones entre conceptos. El primer tipo de problema se resuelve mediante la construcción de tablas numéricas; el segundo tipo de problema se apoya en las tablas lógicas y el tercer tipo se trabaja con tablas semánticas o conceptuales. En la primeras se registran en las celdas cantidades o números, en las segundas, relaciones lógicas y en las terceras, conceptos.

    Las tablas son instrumentos muy útiles para resolver problemas pues permiten organizar la información y visualizar el problemas; además, constituyen una especie de memoria externa que nos ayuda a mantener el record de algunos elementos de información que a veces deben postergarse para relacionarse con datos que se dan posteriormente o que se infieren durante el proceso de resolución de problemas.

    Características de los problemas de tablas numéricas.

    Este tipo de problemas se refieren a relaciones entre dos variables (las dos cualitativas) y se resuelve mediante la estrategia de representación tabular llamada tabla numérica. La estrategia se llama así porque la tercera variable siempre toma valores numéricos y estos valores son los que sirven para completar la tabla.

    Los problemas acerca de las tablas numéricas con ceros.

    El número cero (0) se asocia con el concepto de “nada”, de nulo o de ausencia de algo. Por esa razón es muy común confundir la falta de información acerca de algo con el hecho establecido de que no hay información respecto a ese algo.

    Problemas acerca de tablas lógicas.En este tipo de problemas la variable trabaja

    con un tipo distinto de valor y se llama variable lógica, que sólo puede tomar como valor los calificativos “verdadero” o “falso”, o “si” o “no”. Por su naturaleza, una tabla lógica tiene ciertas propiedades que resultan muy útiles al construirlas. Una vez completada, una tabla lógica representa lo que es cierto y lo que no es, en forma directa y clara. En muchos casos (pero no siempre) las posibilidades que representa son mutuamente excluyentes.

    Problemas acerca de tablas conceptuales.Otra manera de establecer relaciones entre

    variables y características es a través de nexos entres los conceptos; en este caso se habla de relaciones semánticas. Las relaciones de este tipo de problema con las variables y características es indirecta, por medio de las características esenciales de las clases que definen los conceptos y de sus respectivas variables.

    El número cero (0) se asocia con el concepto de “nada”, de nulo o de ausencia de algo.

    02 Introducción a la programación

    11Sena Producción en multimedia

    2.1. Conceptos generales

    Antes de iniciar el tema, es conveniente, sobre todo para aquellos que comienzan su instrucción informática, hacer un breve repaso de conceptos fundamentales que se han de tomar en cuenta cuando se desarrollan programas que se utilizarán en computadoras.

    Se incluye la metodología que se requiere para diseñar algoritmos de manera sencilla y funcional.

    ¿Qué es una computadora?

    Es un dispositivo electrónico utilizado para procesar información y obtener resultados.

    Los datos y la información se pueden introducir en la computadora por la entrada y a continuación se procesan para producir una salida (resultados).

    Los datos de entrada y los datos de salida pueden ser, realmente, cualquier cosa, texto, dibujos, o sonidos.

    ¿Qué es el software?

    Conjunto de programas escritos para una computadora.

    ¿Qué es el hardware?

    Componentes físicos que constituyen la computadora, junto con los dispositivos que realizan las tareas de entrada y salida

    ¿Qué es un programa?

    Conjunto de instrucciones que hacen funcionar a la computadora.

    Organización física de la computadora

    Los dispositivos de Entrada/Salida permiten la comunicación entre la computadora y el usuario para introducir datos (información) para su proceso. Los datos se leen de los dispositivos de entrada y se almacenan en la memoria principal, convierten la información de entrada en señales eléctricas que se almacenan en la memoria principal.

    Tipos de dispositivos de entrada:• Teclados.

    • Lápices ópticos.

    • Palancas de mando (joystick).

    • Lectores de códigos de barra.

    • Micrófonos.

    • Mouse

    • Cámaras de video, etc

    Dispositivos de Entrada/Salida

  • 1312 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Introducción a la programación

    Introducción a la programación

    Los dispositivos de salida permiten representar resultados (salida) del proceso de los datos.

    • Pantalla.

    • Impresoras.

    • Trazadores gráficos (plotters).

    • Reconocedores de voz, etc.

    Memoria principal

    Conocida como RAM (Random Access Memory), almacena información (instrucciones de un programa y los datos con los que operan las instrucciones) de manera transitoria, es decir, durante la ejecución de un programa.

    Unidad Central de Proceso (UPC)

    Dirige y controla el proceso de información realizado por la computadora, esta conformada por:

    Unidad de control (UC).- coordina las actividades de la computadora y determina que operaciones se deben realizar y en que orden; así mismo controla y sincroniza todo el proceso de la computadora.

    Unidad aritmética Lógica (ALU).- realiza operaciones aritméticas y lógicas, tales como sumas, restas, multiplicaciones divisiones y comparaciones. Los datos se pueden leer (recuperar) o escribir (cambiar) por la upc.Memoria auxiliar (externa)

    • Cuando un programa se ejecuta, se debe situar primero en la memoria principal de igual modo que los datos, sin embargo, la información almacenada en la memoria se pierde (borra) cuando se apaga la computadora y, por otra parte, la memoria principal es limitada en capacidad. Por esta razón, para poder disponer de almacenamiento permanente, tanto para programas como para datos se necesitan dispositivos de almacenamiento secundario, auxiliar o masivo.

    • Los dispositivos de almacenamiento secundario o memorias auxiliares (externas o secundarias) más comúnmente utilizadas son CD-ROM, DVD, cintas y discos magnéticos, USB, etc.

    Los dispositivos son herramientas que ayudan expresar una idea, mensaje o concepto

    • Para que un procesador realice un proceso se le debe suministrar en primer lugar un algoritmo adecuado. El procesador debe ser capaz de interpretar el algoritmo, lo que significa: Comprender las instrucciones de cada paso, Realizar las operaciones correspondientes.

    • Cuando el procesador es una computadora, el algoritmo se ha de expresar en un formato que se denomina programa.

    • Un programa se escribe en un lenguaje de programación y las operaciones que conducen a expresar un algoritmo en forma de programa se llama programación.

    • Así pues, los lenguajes utilizados para escribir programas de computadoras son los lenguajes de programación y programadores son los escritores y diseñadores de programas.

    • Los principales tipos de lenguajes utilizados en la actualidad son:

    • Lenguajes máquina.• Lenguajes de bajo nivel (ensamblador)• Lenguajes de alto nivel.• programadores son los escritores y

    diseñadores de programas.• Los principales tipos de lenguajes

    utilizados en la actualidad son:• Lenguajes máquina.• Lenguajes de bajo nivel (ensamblador)• Lenguajes de alto nivel.

    • programadores son los escritores y diseñadores de programas.

    • Los principales tipos de lenguajes utilizados en la actualidad son: Lenguajes máquina, Lenguajes de bajo nivel (ensamblador), Lenguajes de alto nivel.

    • programadores son los escritores y diseñadores de programas.

    • Los principales tipos de lenguajes utilizados en la actualidad son: Lenguajes máquina, Lenguajes de bajo nivel (ensamblador), Lenguajes de alto nivel.

    Lenguajes máquina

    • Son aquellos que están escritos en lenguajes directamente inteligibles por la máquina (computadora), ya que sus instrucciones son cadenas binarias (cadenas o series de dígitos 0’s y 1’s) que especifican una operación.

    • Las posiciones (dirección) de memoria implicadas en la operación se denominan instrucciones de máquina o código máquina (código binario).

    • Las instrucciones en lenguaje máquina dependen del hardware de la computadora y, por lo tanto, diferirán de una computadora a otra.

    Para que un procesador realice un proceso

    se le debe suministrar en primer lugar un

    algoritmo adecuado

    Tipos de Lenguajes

    C++

  • 1514 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Introducción a la programación

    Introducción a la programación

    Lenguajes de bajo nivel

    • Son más fáciles de utilizar que los lenguajes máquina, pero, al igual, que ellos, dependen de la máquina en particular.• El lenguaje de bajo nivel por excelencia es el ensamblador.• Las instrucciones en lenguaje ensamblador son instrucciones conocidas como nemotécnicos. Por ejemplo, típicos de operaciones aritméticas: ADD, SUB, DIV.• Un programa escrito en lenguaje ensamblador no puede ser ejecutado directamente por la com-putadora, en esto se diferencia esencialmente del lenguaje máquina, sino que requiere una fase de traducción al lenguaje máquina.• El programa original escrito en lenguaje ensam-blador se denomina programa fuente y el pro-grama traducido en lenguaje máquina se conoce como programa objeto, ya directamente inteli-gible por la computadora.• El traductor de programas fuente a objeto es un programa llamado ensamblador.

    Lenguajes de alto nivel

    • Son los más utilizados por los programadores, están diseñados para que las personas escriban y entiendan los programas de un modo más fá-cil que los lenguajes máquina y ensambladores.• Un programa escrito en lenguaje de alto nivel es independiente de la máquina; esto es, las ins-trucciones del programa de la computadora no dependen del diseño del hardware o de una com-putadora en particular.• Los programas escritos en lenguaje de alto ni-vel son portables o transportables, lo que signi-fica la posibilidad de poder ser ejecutados con poca o ninguna modificación en diferentes tipos de computadoras.• Los programas fuente en lenguaje de alto nivel tiene que ser traducidos por los programas tra-ductores, llamados en este caso compiladores.

    Tipos de lenguajes de alto nivel:

    C, C++, Fortran, C#, VisualBasic, Java

    Muy extendidos:Modula-2, Prolog, LISP, Smaltalk

    Gran uso en el mundo profesional:Borland Delphi, C++ Builder, Power Builder

    Aunque hoy en día el mundo de Internet consume gran cantidad de recursos en forma de lenguajes de programación como: HTML, XML, JavaScript, etc.

    2.2. Algoritmos y diagramas de flujo

    Concepto de algoritmo

    Los seres humanos realizamos una serie de pa-sos, procedimientos o acciones que nos permi-ten alcanzar un resultado o resolver un proble-ma, esto se repite innumerables veces durante el día. En realidad estamos aplicando un algoritmo para resolver un problema.

    Definición de Algoritmo.- secuencia ordenada y cronológica de pasos que llevan a la solución de un problema o a la ejecución de una tarea (o actividad).

    El algoritmo debe tener las siguientes características:

    • Tener un principio• Ser simples, claros, precisos, exactos.• Tener un orden lógico.• Debe ser finito.• Tener un fin.

    La definición de un algoritmo debe describir tres partes:

    • Entrada.• Proceso.• Salida

    La serie de pasos, procedimientos o acciones que nos permiten alcanzar un resultado o resolver un problema a través de algoritmos, los desarrollamos por medio de pseudocódigo.

    • 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.

    • El objetivo del pseudocódigo es permitir que el programador se centre en los aspectos lógicos de la solución, evitando las reglas de sintaxis de los lenguajes de programación.

    • No siendo el pseudocódigo un lenguaje formal, los pseudocódigos varían de un programador a otro, es decir, no hay un pseudocódigo estándar.

    Diagramas de flujo

    • Un diagrama de flujo representa la esquematización gráfica de un algoritmo.

    • En realidad muestra gráficamente los pasos o procesos a seguir para alcanzar la solución de un problema.

    • Su correcta construcción es sumamente importante porque, a partir del mismo se escribe un programa en algún lenguaje de programación.

    • Si el diagrama de flujo está completo y correcto, el paso del mismo a un lenguaje de programación es relativamente simple y directo.

    • A continuación, presentamos los símbolos que utilizaremos y una explicación de los mismos. Estos satisfacen las recomendaciones de la ISO y la ANSI.

  • 1716 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Introducción a la programación

    Introducción a la programación

    Símbolo utilizado para expresar conexión den-tro de una misma página.

    Símbolo utilizado para introducir los datos de entrada. Expresa lectura.

    Símbolos utilizados para expresar la dirección del flujo del diagrama

    Símbolo utilizado para representar un proceso. En su interior se expresan asignaciones, opera-ciones aritméticas, cambios de valor de celdas en memoria, etc.

    Símbolo utilizado para representar la impresión de un resultado. Expresa escritura.

    Símbolo utilizado para expresar conexión en-tre páginas diferentes.

    Símbolo utilizado para marcar el inicio y el fin del diagrama flujo.

    Símbolo utilizado para representar una decisión múltiple. En su interior se almacena un selector y dependiendo del valor de dicho selector se sigue por una de las ramas o caminos alternativos.

    Símbolo utilizado para representar una decisión. En su interior se almacena una condición y dependiendo del resultado de la evaluación de la misma se sigue por una de las ramas o cami-nos alternativos: verdadero o falso.

    Tipos de datos

    * Los datos a procesar por una computa-dora pueden clasificarse en:

    • Simples• Estructurados

    * Los datos simples se caracterizan por-que ocupan sólo una casilla de memoria, por lo tanto una variable simple hace re-ferencia a un único valor a la vez. den-tro de este grupo de datos encontramos:

    • Enteros• Reales (flotantes)• Caracteres• Cadena de caracteres• Booleanos

    * Los datos estructurados se caracteri-zan por el hecho de que con un nombre se hace referencia a un grupo de casillas de memoria.

    * Es decir, un dato estructurado tiene varios componentes. Cada uno de sus componentes puede ser a su vez un dato simple. Dentro de este grupo de datos se encuentran:

    • Arreglos• Cadena de caracteres• Registros

    Datos simples

    Enteros

    Son números que no contienen compo-nentes fraccionarias y por lo tanto, no incluyen el punto decimal, pueden estar precedidos del signo + o --. Por ejemplo:

    465 -387 9 99 -1578 125550

    Reales (flotantes)

    Son números que contienen una parte frac-cionaria y por lo tanto, incluyen el punto decimal, pueden esta precedidos del sig-no + o --. Por ejemplo:

    125.87 -124.0 158000.75 -38.5879

    Carácter

    Contiene un solo carácter y va encerra-do entre comillas simples. Por ejemplo:

    ‘a’ ‘A’ ‘$’ ‘#’ ‘7’ ‘+’ ‘h’ ‘H’

    1716 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

  • 1918 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Introducción a la programación

    Introducción a la programación

    Cadena de caracteres.

    Contiene un conjunto de caracteres alfabéticos, numéricos, y especiales, que sirven para representar y manejar datos como: nombres, descripciones de artículos, direcciones, etc. Van encerrados entre comillas dobles, por ejemplo: “abc” “Carlos Jiménez” “83-15-24-65” “$8#2”

    Booleanos

    Toma los valores de verdadero (true) o falso (false), no puede ser leído o escrito, sólo asignado, es útil para plantear cierto tipo de condiciones en el manejo de las estructuras lógicas de control.

    Identificadores, constantes y variables Identificadores.

    Son nombres que se usamos para referirnos a variables, constantes, funciones o cualquier objeto definido por el usuario. Un identificador se forma de acuerdo a ciertas reglas básicas:

    » El primer carácter que forma un identificador debe ser una letra o el símbolo de subrayado ( _ ).

    » Los demás caracteres pueden ser letras, dígitos o símbolo de subrayado.

    » La longitud del identificador depende del lenguaje de programación a utilizar.

    Constantes

    Son datos que no cambian durante la ejecución de un programa. Existen tipos de constantes como tipos de datos, por lo tanto, puede haber constantes enteras, reales (flotantes), de carácter, de cadenas de caracteres, booleanas, etc.

    Variables

    1. Es un identificador que puede cambiar su valor durante la ejecución de un programa.

    2. Se utiliza para representar un dato tipo entero, real (flotante), o una constante de carácter. Por ejemplo:

    • Variable i es de tipo entero,• variable prom es de tipo real (flotante),• Variable opción es de tipo carácter.

    Operaciones aritméticas

    Para poder realizar operaciones aritméticas necesitamos de operadores aritméticos.

    Estos operadores nos permiten realizar operaciones aritméticas entre operandos: números, constantes o variables. El resultado de una operación aritmética es un número.

    Operadores Aritméticos

    Operador Aritmético

    Operación Ejemplo Resultado

    ** Potencia 3**2 9

    * Multiplicación 5.25*3 15.75

    / División 17/4 4 .25

    + Suma 58+79 1 37

    - Resta 2 5.96 -11.25 1 4.71

    Mod Módulo (residuo) 2 1 mod 2 1

    div División entera 1 9/3 6

    Al evaluar expresiones que contienen operadores aritméticos debemos respetar la jerarquía en el orden de aplicación. Es decir, si tenemos en una expresión más de un operador, debemos aplicar primero el operador de mayor jerarquía, resolver esa operación y así sucesivamente.

    Jerarquía de los operadores aritmé cos

    Operador Jerarquía Operación

    ** (Mayor)

    (menor)

    Potencia

    *, /, mod, div Mul plicación, división, módulo, división entera

    +, - Suma, resta

    A continuación presentamos en una tabla los operadores aritméticos, la operación que puede realizar y, un ejemplo de su uso y su resultado:

  • 2120 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Introducción a la programación

    Introducción a la programación

    Operadores relacionales

    Son operadores que permiten comparar dos operandos, los operandos pueden ser números, caracteres, constantes o variables.

    Las constantes o variables, a su vez, pueden ser de tipo entero, real (flotante), carácter o ca-dena de caracteres.

    El resultado de una expresión con operadores relacionales es verdadero o falso.

    Disyunción (o)Relaciona dos operandos booleanos. Proporciona un valor verdadero (V), si uno de los dos es ver-dadero; e caso contrario da un resultado falso (F).

    Negación (No)Este operador relaciona sólo un operando boo-leano y da como resultado un valor opuesto al que tenga el operando.

    Por ejemplo:

    Dados los siguientes casos, resolver cada caso aplicando las reglas correspondientes: 1). 7 + 5 – 6 2). 9 +7 * 8 – 36 / 5 3). 7 * 5 ** 3 / 4 div 3 1 1 1 12 – 6 9 + 56 – 36 / 5 7 * 125 / 4 div 3 2 2 2 = 6 9 + 56 – 7.2 875 / 4 div 3 3 3 65 – 7.2 218.75 div 3 4 4 = 57.8 = 72 4). 7 * 8 * (160 mod 3 ** 3) div 5 * 13 – 28 3640 - 28 1 7 7 * 8 * (160 mod 27) div 5 * 13 – 28 = 3612 2 7 * 8 * 25 div 5 * 13 – 28 3 56 * 25 div 5 * 13 – 28 4 1400 div 5 * 13 – 28 5 280 * 13 – 28 6

    Operadores lógicos

    • Son operadores que permiten formular condiciones complejas a partir de condiciones simples.

    • Los operadores lógicos son de: Conjunción (y)- Relaciona dos operandos booleanos. Proporcio-na un valor verdadero (V), si los dos son verda-deros; en casocontrario da un resultado falso (F).

    Operadores Relacionales

    Operador Operación Ejemplo Resultado == Igual que “lalo” == “lola” Falso < > Diferente a ‘x’ < > ‘y’ Verdadero < Menor que 14 < 25 Verdadero > Mayor que 35 > 10 Verdadero < = Menor o igual que 5 = Mayor o igual que 15 >= 7 Verdadero

    Expresiones lógicas

    Las expresiones lógicas o booleanas, están cons-tituidas por números, constantes o variables y operadores lógicos o relacionales. El valor que pueden tomar estas expresiones es de verdade-ro o falso.

    Se utilizan con frecuencia en las estructuras selectivas y en las estructuras repetitivas.

    Reglas para resolver una expresión aritmética:

    1.Si una expresión contiene subexpresiones entre paréntesis, éstas se evalúan primero, respetando claro la jerarquía de los operadores aritméticos en esta subexpresión.Si las subexpresiones se encuentran anidadas por paréntesis, primero se evalúan las subexpresiones que se encuentran en el último nivel de anidamiento.

    2. Los operadores aritméticos se aplican teniendo en cuenta la jerarquía y de izquierda a derecha.

  • 2322 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Introducción a la programación

    Introducción a la programación

    Por ejemplo:

    Dados los siguientes casos, resolver cada caso aplicando las reglas correspondientes:

    1). A = 5, B = 16 2). X = 6, B = 7.8 (A ** 2) > (B * 2) (X * 5 + B ** 3 / 4) < = (X ** 3 div B) 1 1 25 > (B * 2) (X * 5 + 474.552 / 4) < = (X ** 3 div B) 2 2 25 > 32 (30 + 474.552 / 4) < = (X ** 3 div B) 3 3 (30 + 118.638) < = (X ** 3 div B) Falso 4 ContinuaContinuación 2)

    148.638 < = (X ** 3 div B) 5 148.638 < = (216 div B) 6 148.638 < = 27 Falso 3). ~(15 > = 7 ** 2) o (43 – 8 * 2 div 4 < > 3 * 2 div 2) 1 ~(15 > = 49) o (43 – 8 * 2 div 4 < > 3 * 2 div 2) 2 3 Continua

    Continua 3).

    ~ Falso o (43 – 16 div 4 < > 3 * 2 div 2) Verdadero o Verdadero 4 10 ~ Falso o (43 – 4 < > 3 * 2 div 2) Verdadero 5 ~ Falso o (43 – 4 < > 6 div 2) 6 ~ Falso o (43 – 4 < > 3) 7 ~ Falso o (39 < > 3) 8 ~ Falso o Verdadero 9

    Estructura y diseño de un algoritmo

    • Existe una gran cantidad de problemas que requieren de un análisis profundo y de un pensamiento flexible y estructurado para la solución.

    • La idea es ofrecer un conjunto de técnicas y herramientas metodológicas que permitan flexibilizar y estructurar el razonamiento utilizado en la solución de problemas, esto provocará finalmente la construcción de algoritmos eficientes.

    • A continuación en la figura podemos observar las etapas que debemos seguir para la solución de un problema.

    Nota.- Por verificación del algoritmo entendemos el seguimiento del mismo con datos que sean representati-

    vos del problema que queremos resolver.

    1. La secuenciación es una estructura de control que permite a la computadora ejecutar una acción, después otra, luego la que sigue y así sucesivamente hasta la última.

    2. Dichas acciones pueden consistir en operaciones primitivas elementales como declaraciones de variables, leer datos, imprimir datos o calcular alguna expresión.

    3. Es conveniente etiquetar cada acción con números desde el uno en forma ascendente de uno en uno, para denotar el orden secuencial.

    4. Por lo tanto los elementos básicos que integran la estructura de un algoritmo son:

    a. Encabezado: Todo algoritmo debe tener un encabezado como identificación, el cual debe empezar con la palabra Algoritmo seguida por una descripción del problema a resolver.

    b. Inicio: Todo algoritmo debe empezar con la etiqueta 1, que marca el inicio del mismo.

    c. Declaraciones: Después de marcar el inicio se debe hacer las declaraciones que se necesiten como Variables, constantes, tipos de datos, etc.

    d. Leer, calcular e imprimir: Los siguientes pasos pueden consistir en acciones tales como: leer datos, calcular algunas expresiones aritméticas e imprimir datos tantas veces como se requiera y en el orden apropiado para resolver el problema en cuestión.

    e. 5in del algoritmo: El último paso del algoritmo consiste en incluir la indicación fin.

    2.4. Construcción de Algoritmos y Diagramas de flujo

  • 2524 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Introducción a la programación

    Introducción a la programación

    Ejemplo No 1.- De algoritmos secuenciales

    Calcular e imprimir el sueldo de un empleado, se pedirá la clave del empleado, las horas traba-jadas y el pago por hora trabajada. Algoritmo Calcular el sueldo de un empleado 1. Inicio 5. Imprimir cve, sueldo 2. Declaración de variables: 6. Fin cve, ht: entero pht, sueldo: real (flotante) 3. Leer cve, ht, pht 4. sueldo = ht * pht

    Ejemplo No 2

    Desarrollar un algoritmo que permita leer un número en radianes e imprima su equivalencia en grados; así mismo, leer un número en grados e imprima su equivalencia en radianes. Algoritmo Convierte radianes a grados y grados a radianes 1. Inicio 2. Declaración de variables: PI = 3.145926536: real (flotante) rad, grad, numrad, numgrad: real (flotante) 3. Leer rad, grad 4. numgrad = rad * (180 / PI) 5. numrad = grad * (PI / 180) 6. Imprimir numgrad, numrad 7. Fin

    Ejemplo No 3

    Desarrollar un algoritmo para calcular el promedio de un estudiante, se pedirá la matricula del estu-diante y cuatro calificaciones de los exámenes. Se imprimirá la matricula del estudiante y el promedio.

    Algoritmo calcular promedio de un estudiante 1. Inicio 2. Declaración de variables matest: entero cal1, cal2, cal3, cal4, calfin: real (flotante) 3. Leer matest, cal1, cal2, cal3, cal4 4. calfin = (cal1 + cal2 + cal3 + cal4) / 4 5. Imprimir matest, calfin 6. Fin

    Reglas para la construcción de diagramas de flujo

    • Debemos recordar que un diagrama de flujo debe ilustrar gráficamente los pasos o procesos a seguir para alcanzar la solución de un problema.

    • Los símbolos colocados adecuadamente, permiten crear una estructura gráfica flexible que ilustra los pasos a seguir para alcanzar un resultado específico.

    • El diagrama de flujo facilitará más tarde la escritura del programa en algún lenguaje de programación.

    Reglas

    • Todo diagrama de flujo debe tener un inicio y un fin.

    • Las líneas utilizadas para indicar la dirección del flujo del diagrama deben ser rectas, verticales y horizontales.

    • Todas las líneas utilizadas para indicar la dirección del flujo del diagrama deben estar conectadas. La conexión puede ser a un símbolo que exprese lectura, proceso, decisión, impresión, conexión o fin de diagrama.

    • El diagrama de flujo debe ser construido de arriba hacia abajo (top-down) y de izquierda a derecha (right to left).

    • La notación utilizada en el diagrama de flujo debe ser independiente del lenguaje de programación.

    • Es conveniente cuando realizamos una tarea compleja poner comentarios que expresen o ayuden a entender lo que hicimos.

    • Si el diagrama de flujo requiere más de una hoja para su construcción, debemos utilizar los conectores adecuados y enumerar las páginas convenientemente.

    • No puede llegar más de una línea a un símbolo.

    Diagrama de flujo del algoritmo, ejemplo 1

  • 2726 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Estructuras selectivas

    Introducción a la programación

    03 Estructuras Selectivas

    3.1. Si Entonces (If Then)

    Selección si-entonces

    • La estructura selectiva lógica “si entonces” permite que el flujo siga por un camino específico si se cumple una condición o un conjunto de condiciones.

    • Si al evaluar la condición (o condiciones) el resultado es verdadero, entonces se ejecuta (n) cierta (s) operación (es), luego continua con la secuencia normal del proceso.

    • Se utiliza cuando alguna operación está condicionada para que se lleve a cabo, pero no tiene una opción alterna.

    Formato:

    si condición entonces operación (es) { Fin del condicional }

    Donde:

    • si.- identifica la estructura selectiva • condición.- expresa la condición o

    conjunto de condiciones a evaluar• entonces.- indica el curso de acción a

    seguir si se cumple la condición.• operación.- expresa la operación o

    conjunto de operaciones.• fin del condicional.- indica el fin de la

    estructura de selección (si)

    Funcionamiento:

    Al llegar al si se evalúa la condición (es):a. Si se cumple, se ejecuta (n) la (s) operación

    (es) del entonces y luego salta hasta el siguiente paso después del fin del condicional.

    b. Si no se cumple, salta hasta después del fin del condicional, es decir no hace nada.

    Diagrama de flujo del algoritmo, ejemplo 2

    Diagrama de flujo del algoritmo, ejemplo 3Diagrama de flujo

  • 2928 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Estructuras selectivas

    Estructuras selectivas

    Ejemplo 1: Dado como dato una calificación de un alumno en un examen, desarrollar un algo-ritmo y diagrama de flujo, que imprima el men-saje de aprobado en caso de que la calificación sea mayor o igual a 70.

    Algoritmo Alumno aprobado 1. Inicio 2. Declaración de variables cal: flotante 3. Leer cal 4. si cal >=70 entonces imprimir “Aprobado” 5. Fin del condicional paso 4 6. Fin

    Ejemplo 2: Dado como dato el sueldo de un trabajador, desarrollar un algoritmo y diagrama de flujo, que aplique un aumento del 15% si su sueldo es inferior a $1000. se imprimirá el nue-vo sueldo del trabajador.

    Algoritmo Aumento de sueldo de un trabajador 1. Inicio 2. Declaración de variables: sue, aum, nsue: flotante 3. Leer sue 4. si sue < 1000 entonces aum = sue * 0.15 nsue = sue + aum imprimir nsue 5. Fin del condicional paso 4 6. Fin

    3.2. Si Entonces Sino (If Then Else)

    Selección si entonces/sino

    • La estructura selectiva si entonces/sino permite que el flujo se bifurque por dos ramas diferentes en el punto de la toma de decisión (es).

    • Si al evaluar la condición (o condiciones) el resultado es verdadero, entonces sigue por un camino específico y se ejecuta (n) cierta (as) operación (es). Por otra parte, si el resultado es falso entonces se sigue por otro camino y se ejecuta (n) otra (s) operación (es).

    • En ambos casos, luego de ejecutarse la (s) operación (es) indicada (s), se continúa con la secuencia normal del proceso.

    • Por la naturaleza de éstas, se debe ejecutar una o la otra, pero no ambas a la vez, es decir, son mutuamente excluyentes.

    Formato:

    si condición entonces hacer operación 1 sino hacer operación 2 { Fin del condicional }

    Donde:

    • si.- identifica la estructura selectiva • condición.- expresa la condición o

    conjunto de condiciones a evaluar• entonces.- indica el curso de acción a

    seguir si se cumple la condición.• operación 1.- expresa la operación o

    conjunto de operaciones.• operación 2.- expresa la operación o

    conjunto de operaciones.• fin del condicional.- indica el fin de la

    estructura de selección (si)

    Funcionamiento:

    Al llegar al si se evalúa la condición (es):

    • Opción verdadera (entonces) si se cumple, se ejecuta (n) la (s) operación (es) del entonces y luego salta hasta el siguiente paso después del fin del condicional.

    • Opción falsa (sino) De lo contrario, salta hacia el sino, ejecuta la (s) operación (es), y después salta hasta el siguiente paso después del fin del condicional.

    Diagrama de flujo

    Diagrama de flujo

  • 3130 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Estructuras selectivas

    Estructuras selectivas

    Diagrama de flujo

    Ejemplo 1: Dado como dato una calificación de un alumno en un examen, desarrollar un algo-ritmo y diagrama de flujo, que imprima el mensa-je de aprobado en caso de que la calificación sea mayor o igual a 70 o reprobado en caso contrario.

    Algoritmo 1. Inicio 2. Declaración de variables cal: flotante 3. Leer cal 4. si cal >=70 entonces imprimir “Aprobado” sino imprimir “Reprobado” 4. Fin del condicional paso 4 5. Fin

    Diagrama de flujo

    Ejemplo 2: Dado como dato el sueldo de un trabajador, desarrollar un algoritmo y diagrama de flujo, que aplique un aumento del 15% si su sueldo es inferior a $1000 y 12% en caso contra-rio. Se imprimirá el nuevo sueldo del trabajador.

    Algoritmo 1. Inicio 2. Declaración de variables: sue, nsue: flotante 3. Leer sue 4. si sue < 1000 entonces nsue = sue * 1.15 sino nsue = sue *1,12 5. Fin del condicional paso 4 6. Imprimir nsue 7. fin

    Diagrama de flujo Estructuras selectivas anidadas:

    • Encontramos numerosos casos en el desarrollo de la solución de problemas en el que luego de tomar una decisión y marcar el camino correspondiente a seguir, es necesario tomar otra decisión.. Se señala, luego de evaluar las condiciones , la rama correspondiente a seguir, y nuevamente podemos tener que tomar otra decisión.

    • El proceso puede repetirse numerosas veces. En este caso, para resolver el problema, estamos aplicando estructuras selectivas en cascada o anidadas.

    • A continuación presentamos diferentes casos de anidamiento para la estructura selectiva si:

    n si condición1 entonces n1 si condición2 entonces hacer operación21 sino hacer operación22 n2 fin del condicional del paso n1 n + 1 fin del condicional del paso n

    Caso 2

    Caso 1

  • 3332 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Estructuras selectivas

    Estructuras selectivas

    Lenguaje algorítmico de la estructura selectiva anidada del diagrama de flujo caso2:

    n si condición1 entonces n1 si condición2 entonces hacer operación 21 sino hacer operación 22 n2 fin del condicional del paso n1 sino n3 si condición3 entonces hacer operación 31 n4 fin del condicional del paso n3 n +1 fin del condicional del paso n

    Lenguaje algorítmico de la estructura selectiva anidada del diagrama de flujo caso3:

    n si condición1 entonces n1 si condición2 entonces hacer operación 21 n2 fin del condicional paso n1 sino n3 si condición3 entonces hacer operación 31 sino hacer operación 32 n4 fin del condicional del paso n3 n +1 fin del condicional del paso n

    Algoritmo Dado un valor entero determinar si es cero, positivo o negativo 1 inicio 2 Declaración de variables: num: entero 3 Leer num 4. si num ==0 entonces imprimir “cero” sino 4.1 si num > 0 entonces imprimir “positivo” sino imprimir “negativo” 4.2 fin del condicional paso 4.1 5 fin del condicional del paso 4

    Ejemplo 1: Desarrollar un algoritmo y diagra-ma de flujo el cual, dado un valor entero, deter-minar si es cero, positivo o negativo.

    Diagrama de flujo

    Diagrama de flujo

  • 3534 Sena Producción en multimedia Fase Análisis Fase Análisis Sena Producción en multimedia

    Estructuras selectivas

    Estructuras selectivas

    3.4. Si Multiple (Case)

    Estructura selectiva si múltiple

    • La estructura selectiva si múltiple permite que el flujo del proceso se bifurque por varias ramas en el punto de la toma de decisión (es), esto en función del valor que tome el selector.

    • Si el selector toma el valor 1 se ejecutará la acción 1, si toma el valor 2 se ejecutará la acción 2, si toma el valor n se realizará la acción n, y si toma un valor distinto de los valores comprendidos entre 1 y n, se continuará con el flujo normal del proceso realizándose la acción n + 1.

    Formato:

    si selector igual valor 1: hacer acción 1 valor 2: hacer acción 2 valor 3: hacer acción 3 valor n: hacer acción n fin del condicional hacer acción n + 1

    Donde:

    Selector.- variable o expresión a evaluar-se, según la cual se tomará una de las múltiples decisiones o alternativas. Acción 1.- expresa la operación o conjunto de operaciones que se van a realizar si el selec-tor toma el valor 1. Acción 2.- expresa la operación o conjunto de operaciones que se van a realizar si el selec-tor toma el valor 2. Acción n.- expresa la operación o conjunto de operaciones que se van a realizar si el selec-tor toma el valor n. Acción n + 1.- expresa la operación que se va a realizar cuando se continúe con el flujo normal del proceso.

    La estructura selectiva si múltiple es muy flexi-ble, lo que permite aplicarse de diferentes formas. Por ejemplo observemos el siguiente formato:

    si selector igual valor 1,2: hacer acción 1 valor 3,4,5: hacer acción 2 de otra forma : hacer acción 3 fin del condicional hacer acción x

    Diagrama de flujo

    Por ejemplo: Desarrollar un algoritmo y diagra-ma de flujo tal que dado como datos la categoría y el sueldo de un trabajador, calcule el aumento correspondiente teniendo en cuenta la siguiente tabla. Se imprimirá la categoría del trabajador y su nuevo sueldo.

    Categoria Aumento1 15%2 10%3 8%4 7%

    Diagrama de flujo

    Algoritmo:

    1. Inicio Dado la categoría y el sueldo de un trabajador calcular el aumento 2. Declaración de variables: cate: entero sue, nsue: flotante 3. Leer cate, sue 4. si cate igual 1: nsue = sue * 1015 2: nsue = sue * 1010 3: nsue = sue * 1.08 4: nsue = sue * 1.07 5. Fin de la condición del paso 2 6. imprimir cate, sue 7. Fin

    Diagrama de flujo