Sentencias condicionales

  Ing. Patricio Abad Espinoza
Flujo de programa
• Es la secuencia en que se        Iniciar


  ejecutan las instrucciones   Instrucción 1
  de un algoritmo.
• En un algoritmo              Instrucción 2


  estructurado, las            Instrucción 3
  instrucciones se ejecutan
  una a continuación de        Instrucción N

  otra en el orden dado.         Finalizar
Flujo secuencial
     Iniciar
                    1. Inicio


     Input
                    2. Leer el área de terreno en AreaT (d[0-n])
     AreaT



      Input         3. Leer el valor del metro cuadrado en ValorM (d[0-n])
     ValorM


                    4. Calcular CostoT (d[0-n]) <-- AreaT*ValorM
CostoT <- AreaT *
     ValorM


                    5. Mostrar el Valor del terreno CostoT
     Output
     CostoT



                    6. Fin
       Fin
Alteración del flujo de programa
• Los programas con todas las instrucciones
  secuenciales no resultan muy útiles.
• Los programas permiten ejecutar diferentes
  bloques de instrucciones respondiendo
  diferentes situaciones del problema.
• El flujo normal de un programa se puede
  alterar con sentencias condicionales
• La forma de la sentencia condicional es
  – Si <condición> entonces
Flujo condicional
         Iniciar                                        1. Iniciar



         Input                                          2. Leer el área del terreno en AreaT (d[0-n])
         AreaT



          Input                                         3. Leer el valor por metro cuadrado en ValorM (d[0-n])
         ValorM



                                                        4. Calcular el costo del terreno (CostoT,d[0-n]) <-- AreaT * ValorM
CostoT <-- AreaT*ValorM



                                                        5. Si el CostoT > 60000 Entonces
                          SI
    CostoT > 60000              imp <-- CostoT*0,08     5.1    Calcular impuesto (imp,d[0-n]) <-- CostoT * 0.05
                                                        5.2     Calcular total a pagar (Total,d[0-n]) <-- CostoT + imp
    NO                                                      De lo contrario
                                                        5.2     Calcular total a pagar Tota <-- CostoT
 Total <-- CostoT + Imp        Total <-- CostoT + Imp
                                                           Fin si



         Output
          Total
                                                        6. Presenta Total



       Finalizar
                                                        7. Fin
Condicional Simple
• En cualquier sentencia condicional el flujo de
  programa se desvía como resultado de la
  evaluación de una expresión lógica.
• La sentencia condicional simple ejecuta algo si
  el resultado de evaluar la expresión lógica es
  verdadero.
• No ejecuta nada si el resultado es falso.
Sentencia condicional simple
                     Expresión relacional o
                     lógica que evalúa una
                    situación del programa



SI   <Expresión booleana>         Entonces

     <Bloque de sentencias 1>


Fin SI
         Una o más sentencias
         que se ejecuta en caso
         que expresión resulte
               verdadero
Ejemplo 1
• ¿Cuál será el total a pagar incluido el IVA si se
  establece que cualquier producto cuyo valor
  es inferior a 400 USD no paga impuesto de lo
  contrario deberá asumir el 12% de IVA?
Ejemplo 1: Solución
1.   Inicio
2.   Solicitar el valor del producto (valor,d[0-n])
3.   Si valor >= 400 Entonces
4.      valor  valor*1.12
5.   Fin
6.   Presentar “el valor a pagar es “ , valor
Sentencia condicional compuesta
       Expresión relacional o
       lógica que evalúa una
      situación del programa



SI   <Expresión booleana>       Entonces
                                           Una o más sentencias
     <Bloque de sentencias 1>              que se ejecuta en caso
                                           que expresión resulte
                                                 verdadero
De lo contrario
     <Bloque de sentencias 2>               Una o más sentencias
                                            que se ejecuta en caso
                                            que expresión resulte
Fin SI                                               falsa
Ejemplo 2
• Se desea conocer si una persona es apta para
  sufragar en el Ecuador.

   Según la constitución son aptos para sufragar
todas las personas que hayan 16 años siendo
obligatorio el sufragio para aquellos cuya edad
esté entre 18 y 65 años.
Ejemplo 2: Solución
1.   Inicio
2.   Leer edad (b[1-120])
3.   Si edad >= 16 Entonces
4.      Presentar “Si es apto para sufragar”
5.   De lo contrario
6.      Presentar “No es apto para sufragar”
7.   Fin Si
8.   Fin
Sentencias condicionales

Sentencias condicionales

  • 1.
    Sentencias condicionales Ing. Patricio Abad Espinoza
  • 2.
    Flujo de programa •Es la secuencia en que se Iniciar ejecutan las instrucciones Instrucción 1 de un algoritmo. • En un algoritmo Instrucción 2 estructurado, las Instrucción 3 instrucciones se ejecutan una a continuación de Instrucción N otra en el orden dado. Finalizar
  • 3.
    Flujo secuencial Iniciar 1. Inicio Input 2. Leer el área de terreno en AreaT (d[0-n]) AreaT Input 3. Leer el valor del metro cuadrado en ValorM (d[0-n]) ValorM 4. Calcular CostoT (d[0-n]) <-- AreaT*ValorM CostoT <- AreaT * ValorM 5. Mostrar el Valor del terreno CostoT Output CostoT 6. Fin Fin
  • 4.
    Alteración del flujode programa • Los programas con todas las instrucciones secuenciales no resultan muy útiles. • Los programas permiten ejecutar diferentes bloques de instrucciones respondiendo diferentes situaciones del problema. • El flujo normal de un programa se puede alterar con sentencias condicionales • La forma de la sentencia condicional es – Si <condición> entonces
  • 5.
    Flujo condicional Iniciar 1. Iniciar Input 2. Leer el área del terreno en AreaT (d[0-n]) AreaT Input 3. Leer el valor por metro cuadrado en ValorM (d[0-n]) ValorM 4. Calcular el costo del terreno (CostoT,d[0-n]) <-- AreaT * ValorM CostoT <-- AreaT*ValorM 5. Si el CostoT > 60000 Entonces SI CostoT > 60000 imp <-- CostoT*0,08 5.1 Calcular impuesto (imp,d[0-n]) <-- CostoT * 0.05 5.2 Calcular total a pagar (Total,d[0-n]) <-- CostoT + imp NO De lo contrario 5.2 Calcular total a pagar Tota <-- CostoT Total <-- CostoT + Imp Total <-- CostoT + Imp Fin si Output Total 6. Presenta Total Finalizar 7. Fin
  • 6.
    Condicional Simple • Encualquier sentencia condicional el flujo de programa se desvía como resultado de la evaluación de una expresión lógica. • La sentencia condicional simple ejecuta algo si el resultado de evaluar la expresión lógica es verdadero. • No ejecuta nada si el resultado es falso.
  • 7.
    Sentencia condicional simple Expresión relacional o lógica que evalúa una situación del programa SI <Expresión booleana> Entonces <Bloque de sentencias 1> Fin SI Una o más sentencias que se ejecuta en caso que expresión resulte verdadero
  • 8.
    Ejemplo 1 • ¿Cuálserá el total a pagar incluido el IVA si se establece que cualquier producto cuyo valor es inferior a 400 USD no paga impuesto de lo contrario deberá asumir el 12% de IVA?
  • 9.
    Ejemplo 1: Solución 1. Inicio 2. Solicitar el valor del producto (valor,d[0-n]) 3. Si valor >= 400 Entonces 4. valor  valor*1.12 5. Fin 6. Presentar “el valor a pagar es “ , valor
  • 10.
    Sentencia condicional compuesta Expresión relacional o lógica que evalúa una situación del programa SI <Expresión booleana> Entonces Una o más sentencias <Bloque de sentencias 1> que se ejecuta en caso que expresión resulte verdadero De lo contrario <Bloque de sentencias 2> Una o más sentencias que se ejecuta en caso que expresión resulte Fin SI falsa
  • 11.
    Ejemplo 2 • Sedesea conocer si una persona es apta para sufragar en el Ecuador. Según la constitución son aptos para sufragar todas las personas que hayan 16 años siendo obligatorio el sufragio para aquellos cuya edad esté entre 18 y 65 años.
  • 12.
    Ejemplo 2: Solución 1. Inicio 2. Leer edad (b[1-120]) 3. Si edad >= 16 Entonces 4. Presentar “Si es apto para sufragar” 5. De lo contrario 6. Presentar “No es apto para sufragar” 7. Fin Si 8. Fin