SlideShare una empresa de Scribd logo
1 de 24
Descargar para leer sin conexión
Estructuras de Decisión
   Simples y Dobles




    Programación digital I
     Escuela de Sistemas
    Facultad de Ingeniería
        Gilberto Diaz
Control de Flujo

➲   Las sentencias estudiadas hasta ahora
    son ejecutadas una tras otra.

➲   El control de flujo de un lenguaje
    especifica el orden en el que se
    ejecuta cada sentencia.
Control de Flujo

➲   Las sentencias para controlar el flujo
    que podemos encontrar son:

    ●   Estructuras de decisión o selección

    ●   Estructuras de repetición
Control de Flujo

➲   En C el caracter (;) representa el fin de
    una instrucción


➲   En C se puede agrupar un grupo de
    sentencias utilizando las llaves ({}) y
    formar lo que se conoce como una
    instrucción compuesta.
Estructuras de Desición

➲   Las estructuras de control de flujo que
    estudiaremos en esta parte son las
    estructuras de decisión

➲   Estas permiten seleccionar la próxima
    sentencia a ejecutarse sobre la base
    de una desición (expresión lógica o
    variable lógica)
Estructuras de Desición

➲   Los tipos de estructuras de desición
    que podemos encontrar son:
    ●   Simples
    ●   Dobles
    ●   Anidadas
Estructura de Decisión Simple

➲   La sentencia if es utilizada para tomar
    decisiones y su formato es:

    ●   Pseudo lenguaje
    Si (condición) entonces
       sentencias...
    fin si

    ●   En lenguaje C
    if ( expresión lógica){
         sentencias....
    }
Estructura de Decisión Simple

➲   La condición se evalua y si el
    resultado es “cierto” entonces el
    conjunto de instrucciones encerrado
    entre las llaves se ejecuta.

➲   Si el resultado de la evaluación de la
    condición es “falso”, entonces no se
    ejecutan el bloque de instrucciones.
Estructura de Decisión Simple
              Ejemplos
➲   Pseudo código

Si ( hora < 12 )
   escribir “Buenos Días”
fin si

➲   En lenguaje C

if ( hora < 12 ){
   printf(“Buenos Díasn”);
}
Estructura de Decisión Simple
              Ejemplos
➲   Las llaves son opcionales si el bloque
    de instrucciones esta formado por una
    sola sentecia.

if ( hora < 12 )
   printf(“Buenos Díasn”);
Estructura de Decisión Simple
              Ejemplos
➲  Pseudo código
Si ( Nota > 15 ) entonces
   Escribir “Estudiante eximido”
   Eximidos = Eximidos + 1
fin si

➲  Lenguaje C
if ( Nota > 15 ){
   printf(“Estudiante eximidon”);
   Eximidos++;
}
Estructura de Decisión Simple
          Ejemplos
#include <stdio.h>
main(){
 int hora;

    printf(“Introduzca horan”);
    scanf(“%i”, &hora);
    if ( hora < 12 ){
       printf(“Buenos Díasn”);
    }
    if ( (hora > 12) && ( hora < 18 ) ){
       printf(“Buenas tardesn”);
    }
    if ( hora > 18 ){
       printf(“Buenas nochesn”);
    }
}
Estructura de Decisión Simple
              Ejemplos
➲   Compilación:

gcc ejem.c -o ejem


➲   Ejecución

./ejem
Introduzca hora
8
Buenos Días
Estructura de Decisión Simple
              Ejemplos
➲   Ejemplo: Haga el EPS, algoritmo y
    codificación para determinar si dado
    tres números, la suma de dos resulta
    igual al tercero.
Estructuras de Decisión Simple
          Anidadas
➲   Nosotros podemos colocar una
    estructura de desición dentro de otra.
    A esto se le denomina anidación.
Estructuras de Decisión Simple
          Anidadas
➲   Notación en pseudo código

Si (condición1) entonces
   Si (condición2) entonces
      sentencias
   fin si
   Sentencias
fin si
Estructuras de Decisión Simple
           Anidadas
➲   Notación en código C

if ( decisión1 ){
   if ( desición2 ){
      sentencias
   }
   sentencias
}
Estructuras de Decisión Simple
      Anidadas Ejemplos
➲   Pseudo código

Si ( x > 0 ) entonces
   Si ( y < 0.5) entonces
      y=a*x
   fin si
   a=x+y
fin si
Estructuras de Decisión Simple
       Anidadas Ejemplos
➲   Código en C

if ( x > 0 ){
   if ( y < 0.5){
      y = a * x;
   }
   a = x + y;
}
Estructura de Decisión Doble

➲   Las estructuras de decisión doble
    permiten ejecutar dos conjuntos de
    sentencias alternativos en función del
    resultado de la evaluación de una
    condición lógica.
➲   Si el resultado es “cierto” se ejecuta
    un grupo de sentencias.
➲   Si el resultado es “falso”se ejecuta
    otro grupo de sentencias.
Estructura de Decisión Doble

➲   Formato en pseudo código

Si ( decisión ) entonces
     sentencias....
Si no
     sentencias....
fin si
Estructura de Decisión Doble

➲   La sentencia if - else es utilizada para
    tomar decisiones y su formato es:

if ( expresión lógica){
     sentencias....
}
else{
     sentencias....
}
Estructura de Decisión Doble
            Ejemplos
if ( Edad < 18 ){
   printf(“Necesita autorizacionn”);
}
else{
   if ( Edad > 30 ){
      printf(“No aplican”);
   }
   else{
      printf(“Puede continuarn”);
   }
}
Estructura de Decisión Doble
              Ejercicio
➲   Calcule el salario mensual de un
    empleado sabiendo que el máximo de
    horas que puede trabajar es de 160.
    Las horas extras se calculan a 1.5
    veces la hora normal de trabajo. El
    cálculo de la hora es el valor de la
    hora por el número de horas
    trabajadas.

Más contenido relacionado

La actualidad más candente

Excepciones en java
Excepciones en javaExcepciones en java
Excepciones en javajent46
 
Estructura de control repetitiva
Estructura de control repetitivaEstructura de control repetitiva
Estructura de control repetitivavillandri pachco
 
Control de concurrencias investigación
Control de concurrencias investigaciónControl de concurrencias investigación
Control de concurrencias investigaciónJhoel Dgez Garcia
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador SintácticoPablo Guerra
 
Unidad 3 topicos avanzados de programacion
Unidad 3 topicos avanzados de programacionUnidad 3 topicos avanzados de programacion
Unidad 3 topicos avanzados de programacionIrving Che
 
Fire Bird
Fire BirdFire Bird
Fire Birdlejogu
 
Sistemas operativos de 32 bits vs 64 bits
Sistemas operativos de 32 bits vs 64 bitsSistemas operativos de 32 bits vs 64 bits
Sistemas operativos de 32 bits vs 64 bitsWalter Larreategui
 
INTRODUCCIÓN A REDES Y COMUNICACIONES DE DATOS.pptx
INTRODUCCIÓN A REDES Y COMUNICACIONES DE DATOS.pptxINTRODUCCIÓN A REDES Y COMUNICACIONES DE DATOS.pptx
INTRODUCCIÓN A REDES Y COMUNICACIONES DE DATOS.pptxRodrigo Amaya
 
Mapa conceptual - Arquitectura de Computadoras
Mapa conceptual -  Arquitectura de ComputadorasMapa conceptual -  Arquitectura de Computadoras
Mapa conceptual - Arquitectura de ComputadorasLely
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programaciondianithacipriano
 

La actualidad más candente (20)

Funciones del Procesador
Funciones del ProcesadorFunciones del Procesador
Funciones del Procesador
 
Excepciones en java
Excepciones en javaExcepciones en java
Excepciones en java
 
Seguridad de las redes
Seguridad de las redesSeguridad de las redes
Seguridad de las redes
 
Arquitectura harvard
Arquitectura harvardArquitectura harvard
Arquitectura harvard
 
Metodo congruencial mixto en java
Metodo congruencial mixto en javaMetodo congruencial mixto en java
Metodo congruencial mixto en java
 
Estructura de control repetitiva
Estructura de control repetitivaEstructura de control repetitiva
Estructura de control repetitiva
 
Jerarquia de chomsky
Jerarquia de chomskyJerarquia de chomsky
Jerarquia de chomsky
 
Control de concurrencias investigación
Control de concurrencias investigaciónControl de concurrencias investigación
Control de concurrencias investigación
 
Analizador Sintáctico
Analizador SintácticoAnalizador Sintáctico
Analizador Sintáctico
 
Unidad 3 topicos avanzados de programacion
Unidad 3 topicos avanzados de programacionUnidad 3 topicos avanzados de programacion
Unidad 3 topicos avanzados de programacion
 
Fire Bird
Fire BirdFire Bird
Fire Bird
 
UNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICAUNIDAD 2 PROGRAMACIÓN BASICA
UNIDAD 2 PROGRAMACIÓN BASICA
 
Sistemas operativos de 32 bits vs 64 bits
Sistemas operativos de 32 bits vs 64 bitsSistemas operativos de 32 bits vs 64 bits
Sistemas operativos de 32 bits vs 64 bits
 
Tabla de símbolos
Tabla de símbolosTabla de símbolos
Tabla de símbolos
 
Tipos de algoritmos
Tipos de algoritmosTipos de algoritmos
Tipos de algoritmos
 
INTRODUCCIÓN A REDES Y COMUNICACIONES DE DATOS.pptx
INTRODUCCIÓN A REDES Y COMUNICACIONES DE DATOS.pptxINTRODUCCIÓN A REDES Y COMUNICACIONES DE DATOS.pptx
INTRODUCCIÓN A REDES Y COMUNICACIONES DE DATOS.pptx
 
Mapa conceptual - Arquitectura de Computadoras
Mapa conceptual -  Arquitectura de ComputadorasMapa conceptual -  Arquitectura de Computadoras
Mapa conceptual - Arquitectura de Computadoras
 
Ensayo ciclo De Instrucción
Ensayo ciclo De InstrucciónEnsayo ciclo De Instrucción
Ensayo ciclo De Instrucción
 
Introduccion a la programacion
Introduccion a la programacionIntroduccion a la programacion
Introduccion a la programacion
 
Ensamblador y lenguaje c
Ensamblador y lenguaje cEnsamblador y lenguaje c
Ensamblador y lenguaje c
 

Similar a 08 estructuras dedecision

Estructuras de Control C++
Estructuras de Control C++Estructuras de Control C++
Estructuras de Control C++Jorge Leonardo
 
Estructuras de Control - Ivan Walkes Mc.
Estructuras de Control - Ivan Walkes Mc.Estructuras de Control - Ivan Walkes Mc.
Estructuras de Control - Ivan Walkes Mc.Ivan A. Walkes Mc.
 
Scjp Jug Section 2 Flow Control
Scjp Jug Section 2 Flow ControlScjp Jug Section 2 Flow Control
Scjp Jug Section 2 Flow ControlJose Selman
 
Iv unidad estructuras de control
Iv unidad estructuras de controlIv unidad estructuras de control
Iv unidad estructuras de controlmariaisabelg
 
Iv unidad estructuras de control
Iv unidad estructuras de controlIv unidad estructuras de control
Iv unidad estructuras de controlmariaisabelg
 
Fpr0407 control
Fpr0407 controlFpr0407 control
Fpr0407 controllabebelo
 
Tema 3 sentencias de control de java por gio
Tema 3   sentencias de control de java por gioTema 3   sentencias de control de java por gio
Tema 3 sentencias de control de java por gioRobert Wolf
 
Programación en C#.pptx
Programación en C#.pptxProgramación en C#.pptx
Programación en C#.pptxRosmaryDS
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Javaquesada_diego
 
Ejemplo C++
Ejemplo C++Ejemplo C++
Ejemplo C++David
 
Sentencia if else
Sentencia if elseSentencia if else
Sentencia if elseUVM
 
Estructuras de decisión o selectivas
Estructuras de decisión o selectivasEstructuras de decisión o selectivas
Estructuras de decisión o selectivasDenisse C
 

Similar a 08 estructuras dedecision (20)

Estructuras de Control C++
Estructuras de Control C++Estructuras de Control C++
Estructuras de Control C++
 
Práctica 10
Práctica 10Práctica 10
Práctica 10
 
Estructuras de Control - Ivan Walkes Mc.
Estructuras de Control - Ivan Walkes Mc.Estructuras de Control - Ivan Walkes Mc.
Estructuras de Control - Ivan Walkes Mc.
 
Estructuras de Control
Estructuras de ControlEstructuras de Control
Estructuras de Control
 
Scjp Jug Section 2 Flow Control
Scjp Jug Section 2 Flow ControlScjp Jug Section 2 Flow Control
Scjp Jug Section 2 Flow Control
 
Iv unidad estructuras de control
Iv unidad estructuras de controlIv unidad estructuras de control
Iv unidad estructuras de control
 
Iv unidad estructuras de control
Iv unidad estructuras de controlIv unidad estructuras de control
Iv unidad estructuras de control
 
r90043.PPTX
r90043.PPTXr90043.PPTX
r90043.PPTX
 
Fpr0407 control
Fpr0407 controlFpr0407 control
Fpr0407 control
 
Tema 3 sentencias de control de java por gio
Tema 3   sentencias de control de java por gioTema 3   sentencias de control de java por gio
Tema 3 sentencias de control de java por gio
 
Programación en C#.pptx
Programación en C#.pptxProgramación en C#.pptx
Programación en C#.pptx
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
4.instrucciones de control en c++
4.instrucciones de control en c++4.instrucciones de control en c++
4.instrucciones de control en c++
 
Estructuras de control en Java
Estructuras de control en JavaEstructuras de control en Java
Estructuras de control en Java
 
Ejemplo C++
Ejemplo C++Ejemplo C++
Ejemplo C++
 
Sentencia if else
Sentencia if elseSentencia if else
Sentencia if else
 
Clase 3
Clase 3Clase 3
Clase 3
 
06 Desarrollo Programas Estructurados
06 Desarrollo Programas Estructurados06 Desarrollo Programas Estructurados
06 Desarrollo Programas Estructurados
 
la instrucción if , Leer cadenas, caracteres
 la instrucción if , Leer cadenas, caracteres la instrucción if , Leer cadenas, caracteres
la instrucción if , Leer cadenas, caracteres
 
Estructuras de decisión o selectivas
Estructuras de decisión o selectivasEstructuras de decisión o selectivas
Estructuras de decisión o selectivas
 

08 estructuras dedecision

  • 1. Estructuras de Decisión Simples y Dobles Programación digital I Escuela de Sistemas Facultad de Ingeniería Gilberto Diaz
  • 2. Control de Flujo ➲ Las sentencias estudiadas hasta ahora son ejecutadas una tras otra. ➲ El control de flujo de un lenguaje especifica el orden en el que se ejecuta cada sentencia.
  • 3. Control de Flujo ➲ Las sentencias para controlar el flujo que podemos encontrar son: ● Estructuras de decisión o selección ● Estructuras de repetición
  • 4. Control de Flujo ➲ En C el caracter (;) representa el fin de una instrucción ➲ En C se puede agrupar un grupo de sentencias utilizando las llaves ({}) y formar lo que se conoce como una instrucción compuesta.
  • 5. Estructuras de Desición ➲ Las estructuras de control de flujo que estudiaremos en esta parte son las estructuras de decisión ➲ Estas permiten seleccionar la próxima sentencia a ejecutarse sobre la base de una desición (expresión lógica o variable lógica)
  • 6. Estructuras de Desición ➲ Los tipos de estructuras de desición que podemos encontrar son: ● Simples ● Dobles ● Anidadas
  • 7. Estructura de Decisión Simple ➲ La sentencia if es utilizada para tomar decisiones y su formato es: ● Pseudo lenguaje Si (condición) entonces sentencias... fin si ● En lenguaje C if ( expresión lógica){ sentencias.... }
  • 8. Estructura de Decisión Simple ➲ La condición se evalua y si el resultado es “cierto” entonces el conjunto de instrucciones encerrado entre las llaves se ejecuta. ➲ Si el resultado de la evaluación de la condición es “falso”, entonces no se ejecutan el bloque de instrucciones.
  • 9. Estructura de Decisión Simple Ejemplos ➲ Pseudo código Si ( hora < 12 ) escribir “Buenos Días” fin si ➲ En lenguaje C if ( hora < 12 ){ printf(“Buenos Díasn”); }
  • 10. Estructura de Decisión Simple Ejemplos ➲ Las llaves son opcionales si el bloque de instrucciones esta formado por una sola sentecia. if ( hora < 12 ) printf(“Buenos Díasn”);
  • 11. Estructura de Decisión Simple Ejemplos ➲ Pseudo código Si ( Nota > 15 ) entonces Escribir “Estudiante eximido” Eximidos = Eximidos + 1 fin si ➲ Lenguaje C if ( Nota > 15 ){ printf(“Estudiante eximidon”); Eximidos++; }
  • 12. Estructura de Decisión Simple Ejemplos #include <stdio.h> main(){ int hora; printf(“Introduzca horan”); scanf(“%i”, &hora); if ( hora < 12 ){ printf(“Buenos Díasn”); } if ( (hora > 12) && ( hora < 18 ) ){ printf(“Buenas tardesn”); } if ( hora > 18 ){ printf(“Buenas nochesn”); } }
  • 13. Estructura de Decisión Simple Ejemplos ➲ Compilación: gcc ejem.c -o ejem ➲ Ejecución ./ejem Introduzca hora 8 Buenos Días
  • 14. Estructura de Decisión Simple Ejemplos ➲ Ejemplo: Haga el EPS, algoritmo y codificación para determinar si dado tres números, la suma de dos resulta igual al tercero.
  • 15. Estructuras de Decisión Simple Anidadas ➲ Nosotros podemos colocar una estructura de desición dentro de otra. A esto se le denomina anidación.
  • 16. Estructuras de Decisión Simple Anidadas ➲ Notación en pseudo código Si (condición1) entonces Si (condición2) entonces sentencias fin si Sentencias fin si
  • 17. Estructuras de Decisión Simple Anidadas ➲ Notación en código C if ( decisión1 ){ if ( desición2 ){ sentencias } sentencias }
  • 18. Estructuras de Decisión Simple Anidadas Ejemplos ➲ Pseudo código Si ( x > 0 ) entonces Si ( y < 0.5) entonces y=a*x fin si a=x+y fin si
  • 19. Estructuras de Decisión Simple Anidadas Ejemplos ➲ Código en C if ( x > 0 ){ if ( y < 0.5){ y = a * x; } a = x + y; }
  • 20. Estructura de Decisión Doble ➲ Las estructuras de decisión doble permiten ejecutar dos conjuntos de sentencias alternativos en función del resultado de la evaluación de una condición lógica. ➲ Si el resultado es “cierto” se ejecuta un grupo de sentencias. ➲ Si el resultado es “falso”se ejecuta otro grupo de sentencias.
  • 21. Estructura de Decisión Doble ➲ Formato en pseudo código Si ( decisión ) entonces sentencias.... Si no sentencias.... fin si
  • 22. Estructura de Decisión Doble ➲ La sentencia if - else es utilizada para tomar decisiones y su formato es: if ( expresión lógica){ sentencias.... } else{ sentencias.... }
  • 23. Estructura de Decisión Doble Ejemplos if ( Edad < 18 ){ printf(“Necesita autorizacionn”); } else{ if ( Edad > 30 ){ printf(“No aplican”); } else{ printf(“Puede continuarn”); } }
  • 24. Estructura de Decisión Doble Ejercicio ➲ Calcule el salario mensual de un empleado sabiendo que el máximo de horas que puede trabajar es de 160. Las horas extras se calculan a 1.5 veces la hora normal de trabajo. El cálculo de la hora es el valor de la hora por el número de horas trabajadas.