SlideShare una empresa de Scribd logo
1 de 37
ESTRUCTURAS SELECTIVAS




               Elaborado por; Ing. Alberto Pérez
FLUJO DE CONTROL
 En las estructuras selectivas se evalúa una condición y en
  función del resultado de la misma se realiza una
  instrucción u otra.
 Las estructuras selectivas o alternativas pueden ser:

  -Simples
  -Dobles
  -Múltiples



                                     Elaborado por; Ing. Alberto Pérez
ALTERNATIVA SIMPLE
 La estructura alternativa simple si-
  entonces ejecuta una determinada
  acción    cuando      se     cumple
  determinada condición .
 Si la condición es verdadera
  entonces ejecuta la acción S1 (o
  acciones en caso de ser S1 una
  acción compuesta y constar de
  varias acciones).
 Si la condición es falsa entonces no
  hace nada.                        Elaborado por; Ing. Alberto Pérez
EJEMPLO:
 Si <condición> entonces
       <acción S1>
   fin_si

 // S1 acción compuesta
  si <condición> entonces
       <acción S1>
           <acción S2>
       <acción Sn>
  fin_si

                            Elaborado por; Ing. Alberto Pérez
ALTERNATIVA SIMPLE
 Obsérvese que las palabras del pseudocódigo si y fin_si se
  alinean verticalmente identando la <acción> o bloque de
  acciones.


 Sintaxis en lenguaje de programación C/C++
  if (condición )
  {
       sentencias
   }
                                    Elaborado por; Ing. Alberto Pérez
ALTERNATIVA DOBLE

       La estructura anterior es muy
        limitada y normalmente se
        necesitara una estructura que
        permita elegir entre dos
        opciones     o     alternativas
        posibles, en función del
        cumplimiento o no de una
        determinada condición .




               Elaborado por; Ing. Alberto Pérez
ALTERNATIVA DOBLE
 Ejemplo:
  Resolución de una ecuación de primer grado.
 Si la ecuación es ax + b = 0 , a y b son los datos, y las
  posibles soluciones son:
 a != 0     x = -b/a
 a=0        b !=0 entonces ‘solución imposible’
 A=0b=0            entonces ‘solución indeterminada’


                                     Elaborado por; Ing. Alberto Pérez
EJEMPLO

 Pseudocódigo
     si <condición>entonces
       <acción S1>
     si_no
       <acción S2>
     fin_si



                              Elaborado por; Ing. Alberto Pérez
PRÁCTICA
 Se desea obtener la nómina semanal del salario neto de lo
  empleados de una empresa cuyo trabajo se paga por
  horas         y        del        modo          siguiente:
  -Las horas inferiores o iguales a 35 horas (normales) se
  pagan a una tarifa determinada que se debe introducir por
  teclado al igual que el numero de horas y nombre del
  trabajador.
    Las horas superiores a 35 se pagaran como extras a un
     precio de 1.5 horas normales.


                                    Elaborado por; Ing. Alberto Pérez
PRÁCTICA
 Los impuestos a deducir a los trabajadores varían en
  función a su sueldo mensual.
   Sueldo < = 20000, libre de impuestos.
   Los siguientes 15000 al 20% y el resto al 30% .




                                    Elaborado por; Ing. Alberto Pérez
ALTERNATIVA MÚLTIPLE
 Con frecuencia en la práctica es necesario que existan mas
  de dos elecciones.
 Este problema, como se vera mas adelante, se podría
  resolver por estructuras simples o dobles, anidadas o en
  cascada; sin embargo, si el numero de alternativas es
  grande puede plantear serios problemas de escritura del
  algoritmo y naturalmente de legibilidad.




                                    Elaborado por; Ing. Alberto Pérez
ALTERNATIVA MÚLTIPLE
 La estructura de decisión
  múltiple evaluara una
  expresión que podrá tomar
  n valores distintos.
 Según el valor elegido se
  realizara una de las n
  acciones, o lo que es
  igual, el flujo del algoritmo
  seguirá un determinado
  camino entre los n
  posibles.
                                  Elaborado por; Ing. Alberto Pérez
ALTERNATIVA MÚLTIPLE
según_sea expresión (E) hacer
     e1: acción S11
         acción S12
     e2: acción S1a
         acción S21
           acción S22
           acción S2b
       en: acción S31
           acción S32
      si_no
           acción Sx
fin_según
                                Elaborado por; Ing. Alberto Pérez
EJEMPLO
 Se desea diseñar un algoritmo que escriba los nombres de
  los días de la semana en función del valor de una variable
  DIA introducida por el teclado.
 Los días de la semana son 7; por consiguiente el rango de
  valores de DIA será 1. . 7 y en caso de que DIA tome un
  valor fuera de este rango se deberá producir un mensaje
  de error advirtiendo la situación anómala.




                                    Elaborado por; Ing. Alberto Pérez
PRÁCTICA

 Se desea convertir la calificaciones alfabéticas A, B, C, D y E
  a calificaciones numéricas 4, 5, 6, 7 y 8 respectivamente.


 Introducir un número del 1 al 10 y visualizar si el número
  es par o impar.




                                       Elaborado por; Ing. Alberto Pérez
ESTRUCTURA DE DECISION ANIDADAS
                Es posible utilizar la instrucción
                 si para enseñar estructuras de
                 selección que contengan mas de
                 3 alternativas.
                Una estructura si-entonces
                 puede contener otra estructura
                 si-entonces, y esta estructura
                 puede contener otra y así
                 sucesivamente        cualquier
                 número de veces.


                          Elaborado por; Ing. Alberto Pérez
ESTRUCTURA DE DECISION ANIDADAS
    si < condicion1> entonces
      si <condición> entonces
        <acciones>
      fin_si
    fin_si




                                Elaborado por; Ing. Alberto Pérez
ESTRUCTURA DE DECISION ANIDADAS
 Una estructura selectiva múltiple constara de una serie de
  estructuras si, unas interiores a otras.
 Como las estructuras si pueden volverse bastante
  complejas para que el algoritmo sea claro, será preciso
  utilizar identación.
 Deberá existir una correspondencia entre las palabras
  reservadas si y fin_si, por un lado, y entonces y si_no.




                                    Elaborado por; Ing. Alberto Pérez
PRÁCTICAS
 Calcular la hora dentro de un segundo, el usuario
  introducirá HH, MM, SS.


 Leer dos números y determinar si están en orden creciente
  o decreciente.




                                   Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS

FLUJO DE CONTROL
    Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
 Un tipo muy importante de
  estructura es el algoritmo
  necesario para repetir una
  o varias acciones un
  numero determinado de
  veces.
 Las estructuras que repiten
  una       secuencia      de
  instrucciones un numero
  determinado de veces se
  denominan ciclos.
                                Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
 Se denomina iteración al
  hecho de repetir la
  ejecución de una secuencia
  de acciones.
 Las     dos      principales
  preguntas a realizarse en el
  diseño de un bucle son:
    ¿Qué contiene el ciclo?
    ¿Cuántas veces se tiene que
     repetir?


                                   Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
 Para detener la ejecución
  de los ciclos se utiliza una
  condición de parada.


 El pseudocódigo de una
  estructura       repetitiva
  tendrá este formato:




                                 Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
    inicio
    //iniciación de variables
    repetir
      acciones S1, S2 …
      salir según condición
      acciones Sn, Sn + 1, …
    fin_repetir


                                Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
 Los enunciados a utilizar
  serán:
   Iterar    (loop)
   mientras (while)
   hacer-mientras (do-while)
   repetir   (repeat)
   desde     (for)


                               Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
algoritmo SUMA 1
  inicio
       K=0
       S=0
    leer (n)
    mientras K < n hacer
    K = K+ 1
    S = S +K
    fin_mientras
    escribir (S)
  fin
                           Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
 MIENTRAS
 La estructura repetitiva mientras
  es aquella en que el cuerpo del
  ciclo se repite mientras se
  cumple determinada condición.
 Cuando se ejecuta la instrucción
  mientras, la primera cosa que
  sucede es que se evalúa la
  condición.

                                      Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS

 Si se evalúa falsa no se toma ninguna acción y el programa
  prosigue en la siguiente instrucción después del ciclo.


 Si la expresión booleana es verdadera, entonces se ejecuta
  el cuerpo del ciclo, después de lo cual se evalúa de nuevo
  la expresión booleana.



                                    Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
    mientras condición hacer
     acción S1
     acción S2
     acción Sn
    fin_mientras




                               Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
 Hacer-mientras (do-while)
 Este ciclo se denomina ciclo
  post-test       o      ciclos
  controlados por la salida.
 Las sentencias de este ciclo
  se ejecutan al menos una
  vez, incluso aunque la
  expresión booleana sea
  falsa

                                  Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
 La elección entre un ciclo
  mientras y un ciclo hacer-
  mientras depende del
  problema     computo     a
  resolver.
 En la mayoría de los casos
  el ciclo mientras será el
  indicado



                               Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS

hacer
   <acciones>
mientras (<expresión>)




                         Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
 Estructura desde/para (for)
 En muchas ocasiones se conoce de antemano el número
  de veces que se desean ejecutar las acciones de un ciclo.
 En estos casos se debe usar la estructura desde.
 Ejecuta las acciones del cuerpo un número especificado de
  veces y de modo automático controla el número de
  iteraciones.



                                     Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
desde v = vi hasta vf [incremento incr] hacer
  <acciones>


 fin_desde
 Si se omite el incremento el default es que aumente en 1




                                    Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
desde i = 20 hasta 10 hacer
  <acciones>
fin_desde


 desde i = 20 hasta 10 decremento 1 hacer
    <acciones>
  fin_desde


                                  Elaborado por; Ing. Alberto Pérez
ESTRUCTURAS REPETITIVAS
 ESTRUCTURAS ANIDADAS


 De igual forma que se pueden anidar estructuras de
  selección, es posible insertar un ciclo dentro de otro.


 Las variables índices o de control toman valores de modo
  tal que por cada valor de la variable índice del ciclo
  externo se debe ejecutar totalmente el ciclo interno.


                                      Elaborado por; Ing. Alberto Pérez
PRÁCTICAS - CICLOS
 PRÁCTICA 18
 Algoritmo para obtener la tabla de multiplicar completa de
  un número dado (ciclo anidado)
 PRÁCTICA 19
 Buscar y escribir la primera vocal leída del teclado
 PRÁCTICA 20
 Escribir un algoritmo que permita escribir en una pantalla
  la frase ¿Desea continuar? S / N hasta que la respuesta
  sea S o N

                                      Elaborado por; Ing. Alberto Pérez

Más contenido relacionado

La actualidad más candente

Parcial (estructuras repetitivas"for y while" - herrmanientas case)
Parcial (estructuras repetitivas"for y while" - herrmanientas case)Parcial (estructuras repetitivas"for y while" - herrmanientas case)
Parcial (estructuras repetitivas"for y while" - herrmanientas case)Maria B. Ramos Osorio
 
Algoritmo congruencial aditivo
Algoritmo congruencial aditivoAlgoritmo congruencial aditivo
Algoritmo congruencial aditivoJammil Ramos
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Rommel Lòpez
 
Los Ciclos en los Diagramas de Flujo
Los Ciclos en los Diagramas de FlujoLos Ciclos en los Diagramas de Flujo
Los Ciclos en los Diagramas de FlujoBennen Tun
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasJosé Antonio Sandoval Acosta
 
Ejemplos de algoritmos con estructuras repetitivas
Ejemplos de algoritmos con estructuras repetitivasEjemplos de algoritmos con estructuras repetitivas
Ejemplos de algoritmos con estructuras repetitivasJunior Solano de Arco
 
Topicos Avanzados de Programacion - Unidad 4 programacion concurrente
Topicos Avanzados de Programacion - Unidad 4 programacion concurrenteTopicos Avanzados de Programacion - Unidad 4 programacion concurrente
Topicos Avanzados de Programacion - Unidad 4 programacion concurrenteJosé Antonio Sandoval Acosta
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructuradaJennifer Montano
 
PARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOPARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOFredy Olaya
 
Taller de ciclos en PSeInt
Taller de ciclos en PSeIntTaller de ciclos en PSeInt
Taller de ciclos en PSeIntCristian C
 
LENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONLENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONKathGon1
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmostaurivan
 
Etapas del desarrolo de un programa
Etapas del desarrolo de un programaEtapas del desarrolo de un programa
Etapas del desarrolo de un programazeta2015
 
Estructuras condicionales
Estructuras condicionalesEstructuras condicionales
Estructuras condicionalesAndreina Trejo
 
Guia de ejercicios_java_resueltos
Guia de ejercicios_java_resueltosGuia de ejercicios_java_resueltos
Guia de ejercicios_java_resueltosDamian Morocho
 
Librerias Básicas y sus Funciones Lenguaje de Programación C
Librerias Básicas y sus Funciones Lenguaje de Programación CLibrerias Básicas y sus Funciones Lenguaje de Programación C
Librerias Básicas y sus Funciones Lenguaje de Programación CCristian Maza
 

La actualidad más candente (20)

Parcial (estructuras repetitivas"for y while" - herrmanientas case)
Parcial (estructuras repetitivas"for y while" - herrmanientas case)Parcial (estructuras repetitivas"for y while" - herrmanientas case)
Parcial (estructuras repetitivas"for y while" - herrmanientas case)
 
Algoritmo congruencial aditivo
Algoritmo congruencial aditivoAlgoritmo congruencial aditivo
Algoritmo congruencial aditivo
 
Tutorial de codeblocks
Tutorial de codeblocksTutorial de codeblocks
Tutorial de codeblocks
 
Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)Estructuras repetitivas(while, for, repeat)
Estructuras repetitivas(while, for, repeat)
 
Los Ciclos en los Diagramas de Flujo
Los Ciclos en los Diagramas de FlujoLos Ciclos en los Diagramas de Flujo
Los Ciclos en los Diagramas de Flujo
 
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y libreriasTópicos Avanzados de Programación - Unidad 2 componentes y librerias
Tópicos Avanzados de Programación - Unidad 2 componentes y librerias
 
Analizador Léxico en C++
Analizador Léxico en C++Analizador Léxico en C++
Analizador Léxico en C++
 
Ejemplos de algoritmos con estructuras repetitivas
Ejemplos de algoritmos con estructuras repetitivasEjemplos de algoritmos con estructuras repetitivas
Ejemplos de algoritmos con estructuras repetitivas
 
Topicos Avanzados de Programacion - Unidad 4 programacion concurrente
Topicos Avanzados de Programacion - Unidad 4 programacion concurrenteTopicos Avanzados de Programacion - Unidad 4 programacion concurrente
Topicos Avanzados de Programacion - Unidad 4 programacion concurrente
 
Programación estructurada
Programación estructuradaProgramación estructurada
Programación estructurada
 
PARADIGMA IMPERATIVO
PARADIGMA IMPERATIVOPARADIGMA IMPERATIVO
PARADIGMA IMPERATIVO
 
Taller de ciclos en PSeInt
Taller de ciclos en PSeIntTaller de ciclos en PSeInt
Taller de ciclos en PSeInt
 
LENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACIONLENGUAJE DE PROGRAMACION. INVESTIGACION
LENGUAJE DE PROGRAMACION. INVESTIGACION
 
Algoritmos
AlgoritmosAlgoritmos
Algoritmos
 
Etapas del desarrolo de un programa
Etapas del desarrolo de un programaEtapas del desarrolo de un programa
Etapas del desarrolo de un programa
 
Estructuras condicionales
Estructuras condicionalesEstructuras condicionales
Estructuras condicionales
 
Guia de ejercicios_java_resueltos
Guia de ejercicios_java_resueltosGuia de ejercicios_java_resueltos
Guia de ejercicios_java_resueltos
 
Presentación PSeInt
Presentación PSeIntPresentación PSeInt
Presentación PSeInt
 
Librerias Básicas y sus Funciones Lenguaje de Programación C
Librerias Básicas y sus Funciones Lenguaje de Programación CLibrerias Básicas y sus Funciones Lenguaje de Programación C
Librerias Básicas y sus Funciones Lenguaje de Programación C
 
Paradigmas de la programación
Paradigmas de la programación Paradigmas de la programación
Paradigmas de la programación
 

Similar a 4. estructuras selectivas

Similar a 4. estructuras selectivas (20)

Clase 3
Clase 3Clase 3
Clase 3
 
6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas
 
Estructuras de control de flujo
Estructuras de control de flujoEstructuras de control de flujo
Estructuras de control de flujo
 
algoritmos
algoritmosalgoritmos
algoritmos
 
Teoria
TeoriaTeoria
Teoria
 
Estructuras de control algoritmos dq
Estructuras de control algoritmos   dqEstructuras de control algoritmos   dq
Estructuras de control algoritmos dq
 
Estructuras Selectivas.pdf
Estructuras Selectivas.pdfEstructuras Selectivas.pdf
Estructuras Selectivas.pdf
 
Estructuras if
Estructuras ifEstructuras if
Estructuras if
 
Estructuras de control selectiva
Estructuras de control selectivaEstructuras de control selectiva
Estructuras de control selectiva
 
Sesión 09 Fund Programación
Sesión 09 Fund ProgramaciónSesión 09 Fund Programación
Sesión 09 Fund Programación
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Informe 21
Informe 21Informe 21
Informe 21
 
Informe 21
Informe 21Informe 21
Informe 21
 
Guia4
Guia4Guia4
Guia4
 
Presentacion semana numero_14
Presentacion semana numero_14Presentacion semana numero_14
Presentacion semana numero_14
 
Programaciòn Estructurada
Programaciòn EstructuradaProgramaciòn Estructurada
Programaciòn Estructurada
 
Salto condicional
Salto condicionalSalto condicional
Salto condicional
 
Presentacion uno
Presentacion unoPresentacion uno
Presentacion uno
 
Algoritmos, Diagramas,Pseudocódigos
Algoritmos, Diagramas,Pseudocódigos Algoritmos, Diagramas,Pseudocódigos
Algoritmos, Diagramas,Pseudocódigos
 
Pract5
Pract5Pract5
Pract5
 

4. estructuras selectivas

  • 1. ESTRUCTURAS SELECTIVAS Elaborado por; Ing. Alberto Pérez
  • 2. FLUJO DE CONTROL  En las estructuras selectivas se evalúa una condición y en función del resultado de la misma se realiza una instrucción u otra.  Las estructuras selectivas o alternativas pueden ser: -Simples -Dobles -Múltiples Elaborado por; Ing. Alberto Pérez
  • 3. ALTERNATIVA SIMPLE  La estructura alternativa simple si- entonces ejecuta una determinada acción cuando se cumple determinada condición .  Si la condición es verdadera entonces ejecuta la acción S1 (o acciones en caso de ser S1 una acción compuesta y constar de varias acciones).  Si la condición es falsa entonces no hace nada. Elaborado por; Ing. Alberto Pérez
  • 4. EJEMPLO:  Si <condición> entonces <acción S1> fin_si  // S1 acción compuesta si <condición> entonces <acción S1> <acción S2> <acción Sn> fin_si Elaborado por; Ing. Alberto Pérez
  • 5. ALTERNATIVA SIMPLE  Obsérvese que las palabras del pseudocódigo si y fin_si se alinean verticalmente identando la <acción> o bloque de acciones.  Sintaxis en lenguaje de programación C/C++ if (condición ) { sentencias } Elaborado por; Ing. Alberto Pérez
  • 6. ALTERNATIVA DOBLE  La estructura anterior es muy limitada y normalmente se necesitara una estructura que permita elegir entre dos opciones o alternativas posibles, en función del cumplimiento o no de una determinada condición . Elaborado por; Ing. Alberto Pérez
  • 7. ALTERNATIVA DOBLE  Ejemplo: Resolución de una ecuación de primer grado.  Si la ecuación es ax + b = 0 , a y b son los datos, y las posibles soluciones son:  a != 0 x = -b/a  a=0 b !=0 entonces ‘solución imposible’  A=0b=0 entonces ‘solución indeterminada’ Elaborado por; Ing. Alberto Pérez
  • 8. EJEMPLO  Pseudocódigo si <condición>entonces <acción S1> si_no <acción S2> fin_si Elaborado por; Ing. Alberto Pérez
  • 9. PRÁCTICA  Se desea obtener la nómina semanal del salario neto de lo empleados de una empresa cuyo trabajo se paga por horas y del modo siguiente: -Las horas inferiores o iguales a 35 horas (normales) se pagan a una tarifa determinada que se debe introducir por teclado al igual que el numero de horas y nombre del trabajador.  Las horas superiores a 35 se pagaran como extras a un precio de 1.5 horas normales. Elaborado por; Ing. Alberto Pérez
  • 10. PRÁCTICA  Los impuestos a deducir a los trabajadores varían en función a su sueldo mensual.  Sueldo < = 20000, libre de impuestos.  Los siguientes 15000 al 20% y el resto al 30% . Elaborado por; Ing. Alberto Pérez
  • 11. ALTERNATIVA MÚLTIPLE  Con frecuencia en la práctica es necesario que existan mas de dos elecciones.  Este problema, como se vera mas adelante, se podría resolver por estructuras simples o dobles, anidadas o en cascada; sin embargo, si el numero de alternativas es grande puede plantear serios problemas de escritura del algoritmo y naturalmente de legibilidad. Elaborado por; Ing. Alberto Pérez
  • 12. ALTERNATIVA MÚLTIPLE  La estructura de decisión múltiple evaluara una expresión que podrá tomar n valores distintos.  Según el valor elegido se realizara una de las n acciones, o lo que es igual, el flujo del algoritmo seguirá un determinado camino entre los n posibles. Elaborado por; Ing. Alberto Pérez
  • 13. ALTERNATIVA MÚLTIPLE según_sea expresión (E) hacer e1: acción S11 acción S12 e2: acción S1a acción S21 acción S22 acción S2b en: acción S31 acción S32 si_no acción Sx fin_según Elaborado por; Ing. Alberto Pérez
  • 14. EJEMPLO  Se desea diseñar un algoritmo que escriba los nombres de los días de la semana en función del valor de una variable DIA introducida por el teclado.  Los días de la semana son 7; por consiguiente el rango de valores de DIA será 1. . 7 y en caso de que DIA tome un valor fuera de este rango se deberá producir un mensaje de error advirtiendo la situación anómala. Elaborado por; Ing. Alberto Pérez
  • 15. PRÁCTICA  Se desea convertir la calificaciones alfabéticas A, B, C, D y E a calificaciones numéricas 4, 5, 6, 7 y 8 respectivamente.  Introducir un número del 1 al 10 y visualizar si el número es par o impar. Elaborado por; Ing. Alberto Pérez
  • 16. ESTRUCTURA DE DECISION ANIDADAS  Es posible utilizar la instrucción si para enseñar estructuras de selección que contengan mas de 3 alternativas.  Una estructura si-entonces puede contener otra estructura si-entonces, y esta estructura puede contener otra y así sucesivamente cualquier número de veces. Elaborado por; Ing. Alberto Pérez
  • 17. ESTRUCTURA DE DECISION ANIDADAS si < condicion1> entonces si <condición> entonces <acciones> fin_si fin_si Elaborado por; Ing. Alberto Pérez
  • 18. ESTRUCTURA DE DECISION ANIDADAS  Una estructura selectiva múltiple constara de una serie de estructuras si, unas interiores a otras.  Como las estructuras si pueden volverse bastante complejas para que el algoritmo sea claro, será preciso utilizar identación.  Deberá existir una correspondencia entre las palabras reservadas si y fin_si, por un lado, y entonces y si_no. Elaborado por; Ing. Alberto Pérez
  • 19. PRÁCTICAS  Calcular la hora dentro de un segundo, el usuario introducirá HH, MM, SS.  Leer dos números y determinar si están en orden creciente o decreciente. Elaborado por; Ing. Alberto Pérez
  • 20. ESTRUCTURAS REPETITIVAS FLUJO DE CONTROL Elaborado por; Ing. Alberto Pérez
  • 21. ESTRUCTURAS REPETITIVAS  Un tipo muy importante de estructura es el algoritmo necesario para repetir una o varias acciones un numero determinado de veces.  Las estructuras que repiten una secuencia de instrucciones un numero determinado de veces se denominan ciclos. Elaborado por; Ing. Alberto Pérez
  • 22. ESTRUCTURAS REPETITIVAS  Se denomina iteración al hecho de repetir la ejecución de una secuencia de acciones.  Las dos principales preguntas a realizarse en el diseño de un bucle son:  ¿Qué contiene el ciclo?  ¿Cuántas veces se tiene que repetir? Elaborado por; Ing. Alberto Pérez
  • 23. ESTRUCTURAS REPETITIVAS  Para detener la ejecución de los ciclos se utiliza una condición de parada.  El pseudocódigo de una estructura repetitiva tendrá este formato: Elaborado por; Ing. Alberto Pérez
  • 24. ESTRUCTURAS REPETITIVAS inicio //iniciación de variables repetir acciones S1, S2 … salir según condición acciones Sn, Sn + 1, … fin_repetir Elaborado por; Ing. Alberto Pérez
  • 25. ESTRUCTURAS REPETITIVAS  Los enunciados a utilizar serán: Iterar (loop) mientras (while) hacer-mientras (do-while) repetir (repeat) desde (for) Elaborado por; Ing. Alberto Pérez
  • 26. ESTRUCTURAS REPETITIVAS algoritmo SUMA 1 inicio K=0 S=0 leer (n) mientras K < n hacer K = K+ 1 S = S +K fin_mientras escribir (S) fin Elaborado por; Ing. Alberto Pérez
  • 27. ESTRUCTURAS REPETITIVAS  MIENTRAS  La estructura repetitiva mientras es aquella en que el cuerpo del ciclo se repite mientras se cumple determinada condición.  Cuando se ejecuta la instrucción mientras, la primera cosa que sucede es que se evalúa la condición. Elaborado por; Ing. Alberto Pérez
  • 28. ESTRUCTURAS REPETITIVAS  Si se evalúa falsa no se toma ninguna acción y el programa prosigue en la siguiente instrucción después del ciclo.  Si la expresión booleana es verdadera, entonces se ejecuta el cuerpo del ciclo, después de lo cual se evalúa de nuevo la expresión booleana. Elaborado por; Ing. Alberto Pérez
  • 29. ESTRUCTURAS REPETITIVAS mientras condición hacer acción S1 acción S2 acción Sn fin_mientras Elaborado por; Ing. Alberto Pérez
  • 30. ESTRUCTURAS REPETITIVAS  Hacer-mientras (do-while)  Este ciclo se denomina ciclo post-test o ciclos controlados por la salida.  Las sentencias de este ciclo se ejecutan al menos una vez, incluso aunque la expresión booleana sea falsa Elaborado por; Ing. Alberto Pérez
  • 31. ESTRUCTURAS REPETITIVAS  La elección entre un ciclo mientras y un ciclo hacer- mientras depende del problema computo a resolver.  En la mayoría de los casos el ciclo mientras será el indicado Elaborado por; Ing. Alberto Pérez
  • 32. ESTRUCTURAS REPETITIVAS hacer <acciones> mientras (<expresión>) Elaborado por; Ing. Alberto Pérez
  • 33. ESTRUCTURAS REPETITIVAS  Estructura desde/para (for)  En muchas ocasiones se conoce de antemano el número de veces que se desean ejecutar las acciones de un ciclo.  En estos casos se debe usar la estructura desde.  Ejecuta las acciones del cuerpo un número especificado de veces y de modo automático controla el número de iteraciones. Elaborado por; Ing. Alberto Pérez
  • 34. ESTRUCTURAS REPETITIVAS desde v = vi hasta vf [incremento incr] hacer <acciones> fin_desde  Si se omite el incremento el default es que aumente en 1 Elaborado por; Ing. Alberto Pérez
  • 35. ESTRUCTURAS REPETITIVAS desde i = 20 hasta 10 hacer <acciones> fin_desde  desde i = 20 hasta 10 decremento 1 hacer <acciones> fin_desde Elaborado por; Ing. Alberto Pérez
  • 36. ESTRUCTURAS REPETITIVAS  ESTRUCTURAS ANIDADAS  De igual forma que se pueden anidar estructuras de selección, es posible insertar un ciclo dentro de otro.  Las variables índices o de control toman valores de modo tal que por cada valor de la variable índice del ciclo externo se debe ejecutar totalmente el ciclo interno. Elaborado por; Ing. Alberto Pérez
  • 37. PRÁCTICAS - CICLOS  PRÁCTICA 18  Algoritmo para obtener la tabla de multiplicar completa de un número dado (ciclo anidado)  PRÁCTICA 19  Buscar y escribir la primera vocal leída del teclado  PRÁCTICA 20  Escribir un algoritmo que permita escribir en una pantalla la frase ¿Desea continuar? S / N hasta que la respuesta sea S o N Elaborado por; Ing. Alberto Pérez