SlideShare a Scribd company logo
1 of 21
Estructuras de Decisión

Departamento de Programación y
Tecnología Educativa                                       mrodriguez@unimet.edu.ve
Decisión



                     Generalmente cuando se nos plantea un problema nos
                     vemos ante la necesidad de tomar una o más
                     decisiones.


                     A veces hay que escoger entre una o mas alternativas
                     posibles



                     Los problemas que resolvemos con el computador no
                     se escapan de esta situación

Departamento de Programación y
Tecnología Educativa                                              mrodriguez@unimet.edu.ve
Que son Estructuras de Decisión



                      Son estructuras de selección que permiten tomar
                      distintos cursos de acción de acuerdo a una condición.


                      Esta condición viene dada por una expresión lógica


                                  Si (condición) entonces

                                         acción 1

                                  sino

                                         acción 2
Departamento de Programación y
Tecnología Educativa                                                mrodriguez@unimet.edu.ve
Tipos de Estructuras de Decisión


                      If-Then-Else (3 formas)

                                 If-Then

                                 If-Then Else

                                 If Anidados

                      Case




Departamento de Programación y
Tecnología Educativa                                                   mrodriguez@unimet.edu.ve
Decisión simple



             Se ejecuta un grupo de instrucciones en caso de cumplirse
             una sola condición (valor booleano verdadero)


             Sintaxis:
                                 If condición Then
                                          Instrucciones
                                 End if
                                                      Son palabras claves
        Cierra el bloque a ejecutar si la condición es Verdadera
Departamento de Programación y
Tecnología Educativa                                                    mrodriguez@unimet.edu.ve
Decisión simple




                                                       se ejecutan si la condición es
                    If condición Then
                                                          Verdadera


                                 Instrucciones

                                                 En caso contrario (si la condición es
                    End if                         Falsa) continúa el flujo del
                    Instrucciones                  programa con la instrucción
                                                   inmediatamente después del End If



Departamento de Programación y
Tecnología Educativa                                                              mrodriguez@unimet.edu.ve
Ejemplo de decisión simple



                       Por ejemplo: Leer los datos de una persona e decir el
                       nombre si y solo si es del sexo masculino.

                       Option Explicit

                       Dim Nombre As String, Sexo As String

                       Sub Principal( )
                          Nombre = InputBox ("Cuál es tú nombre?", "Nombre")
                          Sexo = InputBox ("Escriba M (Masculino) o F (femenino)", "Sexo")
                          If Sexo = "M" Then
                             Sheets(“Salida”).Cells(2, 1) = Nombre
                          End If
                       End Sub



Departamento de Programación y
Tecnología Educativa                                                                  mrodriguez@unimet.edu.ve
Decisión compuesta


        Se ejecuta un grupo de instrucciones en caso de cumplirse
        una condición y otro en caso contrario.
        Sintaxis:
                                 If condición Then
                                          Instrucciones1
                                 Else
                                          Instrucciones2
                                 End if
                                                     Son palabras reservadas

Departamento de Programación y
Tecnología Educativa                                                      mrodriguez@unimet.edu.ve
Decisión compuesta



                    If condición Then               Se ejecutan si la condición es
                                 Instrucciones1        Verdadera




                    Else
                                 Instrucciones2
                                                  Se ejecutan en caso contrario, es
                                                    decir, si la condición es Falsa
                    End if




Departamento de Programación y
Tecnología Educativa                                                           mrodriguez@unimet.edu.ve
Ejemplo de decisión compuesta




                          Option Explicit
                          Dim Nombre As String

                          Sub principal ( )
                            Nombre = InputBox(“Cuál es tú nombre?”, “Nombre")
                            If Nombre = “Pepe” Then
                                MsgBox (“El nombre real es José”)
                            Else
                                MsgBox (“Tiene otro nombre”)
                            End If
                          End Sub




Departamento de Programación y
Tecnología Educativa                                                            mrodriguez@unimet.edu.ve
Decisión anidada



        Muchas veces tenemos situaciones donde hay más de
        una condición a tomar en cuenta.
        Una forma de expresarlo es con una Decisión Anidada.
        Sintaxis:
                                 If condición1 Then
                                   If condición2 Then
                                                        Recuerda usar el tabulador
                                     Instrucciones1
                                                          (sangría) para darle
                                   Else                   mayor visualización a
                                     Instrucciones2       este estructura
                                   End If
                                 Else
                                    Instrucciones3
                                 End If

Departamento de Programación y
Tecnología Educativa                                                  mrodriguez@unimet.edu.ve
Decisión anidada



                                                  Si la condición es Verdadera, pregunta
                                                     por la siguiente condición
                      If condición1 Then
                                                                      Se ejecutan si la
                                 If condición2 Then                     condición1 y la
                                                                        condición2 son
                                          Instrucciones1                Verdaderas
                                 Else
                                          Instrucciones2
                                                           Se ejecutan si la condición1 es
                                 End If                      Verdadera y la condición2 es
                      Else                                   Falsa

                                 Instrucciones3
                                                           Se ejecutan si la condición1 es
                      End If                                  Falsa
Departamento de Programación y
Tecnología Educativa                                                                 mrodriguez@unimet.edu.ve
Ejemplo de decisión anidada



                                                 Option Explicit
                                                 Dim Edad As String
                                                 Sub principal( )
                                                   Edad = InputBox("Cuál es tu edad?", “Edad")
    Importante! Estos If anidados son              Call VerificarEdad
    equivalentes a los siguientes If anidados:
                                                   If Edad < 18 Then
    If Edad < 18 and Edad > 12 Then                   If Edad > 12 Then
       MsgBox (“Eres un adolescente”)
                                                         MsgBox (“Eres un adolescente”)
    Else
       If Edad <= 12 Then                             Else
          MsgBox (“Eres un niño”)                        MsgBox (“Eres un niño”)
       Else                                           End If
          MsgBox (“Eres mayor de edad”)            Else
       End If
                                                      MsgBox (“Eres mayor de edad”)
    End If
                                                   End If
                                                 End Sub


Departamento de Programación y
Tecnología Educativa                                                                  mrodriguez@unimet.edu.ve
Decisión anidada


                    Otra forma de decisión anidada es la siguiente:
                                 If condición1 Then
                                   If condición2 Then
      La estructura de
                                        Instrucciones1   Estos If anidados son equivalentes a los siguientes:
      la decisión
      anidada                      Else
                                                         If condición1 And condición2 Then
      dependerá del
                                        Instrucciones2               Instrucciones1
      buen análisis                                      End If
      que se realice               End If
      del problema.                                      If condición1 And Not(condición2) Then
                                 Else
                                                                     Instrucciones2
                                   If condición3 Then    End If

                                        Instrucciones3   If Not(condición1) and condición3 Then
                                                                     Instrucciones3
                                  Else                   End If
                                        Instrucciones4
                                                         If Not(condición1) and Not(condición3) Then
                                  End If                             Instrucciones4
                                                         End If
Departamento de Programación y   End If
Tecnología Educativa                                                                         mrodriguez@unimet.edu.ve
Decisión Case


                        En esta estructura de decisión, se consideran una serie de
                        valores alternativos para una misma expresión. La condición
                        se evalúa en diferentes valores hasta encontrar el que coincide.
                        Para cada valor se realizan instrucciones diferentes.

                                                                  Importante! Este Case es
                                 Select Case expresión            equivalente a los siguientes If
                                                                  anidados:
                                         Case valor1
                                                 Instrucciones1   If expresión = valor1 Then
                                         Case valor2                  Instrucciones1
                                                                  Else
 son palabras                                    Instrucciones2       If Expresión = valor2 Then
   reservadas                            Case valor3                     Instrucciones2
                                                                      Else
                                                 Instrucciones3
                                                                         If expresión = valor3 Then
                                 End Select                                 Instrucciones3
                                                                         End If
                                                                      End If
                                                                  End If

Departamento de Programación y
Tecnología Educativa                                                                   mrodriguez@unimet.edu.ve
Ejemplo de decisión Case
                                                                   (Variable tipo String)

                       „ En este ejemplo se evalúa el estado civil de la persona
                                              Option Explicit
                                              Dim EdoCiv As String
                                              Dim Solteros as Integer
 Importante! Este Case es equivalente a los
 siguientes If anidados:                      Dim Casados as Integer
                                              Dim Otros as Integer
 If EdoCiv = “s” or EdoCiv = “S” Then
    Solteros = Solteros + 1                   Sub principal( )
 Else
                                                 EdoCiv = InputBox(“Cuál es tu estado civil?”, “Estado Civil”)
    If EdoCiv = “c” or EdoCiv = “C” Then
       Casados = Casados + 1                     Call VerficaEdoCivil
    Else                                         Select Case EdoCiv
       If EdoCiv = “d” or EdoCiv = “D” or           Case “s” , “S”
         EdoCiv = “o” or EdoCiv = “O” Then             Solteros = Solteros + 1
          Otros = Otros + 1                         Case “c”, “C”
       Else                                            Casados = Casados + 1
          MsgBox (“Error”)                          Case “d” , “o” , “D”, “O”         Entra por esta opción
       End If                                          Otros = Otros + 1                 solamente si no
    End If                                          Case Else                            se cumplen
 End If                                                MsgBox (“Error”)                  ninguna de las
                                                    End Select                           anteriores
                                              End Sub
Departamento de Programación y
Tecnología Educativa                                                                          mrodriguez@unimet.edu.ve
Ejemplo de decisión Case
                                                                 (Variable tipo Integer)

                    „En este ejemplo se envía un mensaje indicando a que grupo de
                    „edad pertenece la persona.
                                                                 Importante: Cuando el valor viene dado por
               Option Explicit                                   una condición (<,>,=, etc.) automáticamente
               Dim Edad As Integer                               se coloca la palabra clave “Is”
               Sub principal( )
                  Edad = InputBox(“Cuál es tu edad?”, “Edad”)
                  Call VerificarEdad
                  Select Case Edad
                                                                           Es importante considerar que
                      Case Is >=65
                                                                           siempre entra por la primera
                         MsgBox(“Usted es de la Tercera edad”)             opción verdadera:
                      Case Is >=18
                         MsgBox(“Usted es mayor de edad”)
                                                                         Si Edad es 70 entrará por la primera
                      Case Is >12                                        opción y termina
                        MsgBox(“Usted es adolescente”)
                      Case Else                                           Si Edad es 40 entrará por la
                        MsgBox (“Usted es un niño”)                       segunda opción y termina
                   End Select
               End Sub                                                   Si Edad es 15 entrará por la tercera
                                                                         opción y termina
Departamento de Programación y
Tecnología Educativa                                                                         mrodriguez@unimet.edu.ve
Uso de decisión Case


                 Ventajas:
                 Utiliza menos instrucciones que las instrucciones
                 equivalentes en un If anidado
                 Se evitan errores al no tener que hacer coincidir los If con
                 los Else y End If.
                 Más fácil de visualizar

                 Desventajas:
                 Solamente se puede utilizar cuando la expresión del
                 condicional se refiere a la misma variable.
                 Solamente entra por una opción

Departamento de Programación y
Tecnología Educativa                                                mrodriguez@unimet.edu.ve
Comentarios sobre los valores
                                                                en el decisión Case


                   1. Se pueden utilizar expresiones múltiples o intervalos en cada
                      cláusula Case. Por ejemplo, cualquiera de las siguientes líneas
                      son válidas:
                                 Case 1 To 4, 7 To 9
                                 Case 1 To 4, 11, 13
                                 Case 1 To 4, 7 To 9, 11, 13, Is > MaxNumber


                   2. También puede especificar intervalos y expresiones múltiples
                      para cadenas de caracteres. En el siguiente ejemplo, Case
                      coincide con las cadenas que son exactamente “iguales a todo”,
                      cadenas que están entre “nueces” y “sopa” en orden alfabético y
                      el valor actual de ElemPrueba:
                                 Case "iguales a todo", "nueces" To "sopa", ElemPrueba


Departamento de Programación y
Tecnología Educativa                                                                mrodriguez@unimet.edu.ve
Otros ejemplos de decisión
                                                                    Case (Comentario 1)
               Nuevamente el ejemplo que envía un mensaje indicando a que grupo
               de „edad pertenece la persona, pero con otros intervalos de valores:
               Option Explicit
               Const Anciano = 65
               Dim Edad As Integer
               Sub principal( )
                   Edad = InputBox(“Cuál es tu edad?”, “Edad”)
                   Call VerificarEdad
                        Select Case Edad
                            Case Is >=Anciano
                               MsgBox(“Usted es de la Tercera edad”)
                                                                            Observe los
                            Case Is >=18                                      diferentes
                               MsgBox(“Usted es mayor de edad”)               intervalos
                            Case 13, 14, 15, 16, 17
                               MsgBox(“Usted es adolescente”)                 de valores
                            Case 0 to 4
                               MsgBox (“Usted es un niño”)
                         End Select
               End Sub


Departamento de Programación y
Tecnología Educativa                                                           mrodriguez@unimet.edu.ve
Otros ejemplos de decisión
                                                                        Case (Comentario 2)
               Nuevamente el ejemplo que evalúa el estado civil de la persona, pero
               considerando posibles errores de trascripción:
                                 Option Explicit
                                 Const Divo =“Divorciado”                                       Observe los
                                 Dim EdoCiv As String                                              diferentes
                                 Dim Solteros as Integer
                                                                                                   intervalos
                                 Dim Casados as Integer
                                 Dim Otros as Integer
                                                                                                   de valores
                                 Sub principal( )
                                     EdoCiv = InputBox(“Cuál es tu estado civil?”, “Estado Civil”)
                                     Select Case EdoCiv
                                        Case “s” to “so” , “S” to “SO”
                                           Solteros = Solteros + 1
                                        Case “c”, “Casada” to “Casado”, “csaada” to “csaado”, “C”
                                                      Casados = Casados + 1
                                           Case “d” to “di” , “D” to “DI”, “o” , “O”, “Divo”
                                                      Otros = Otros + 1
                                           Case Else
                                                      MsgBox (“Error”)
                                       End Select
                                 End Sub
Departamento de Programación y
Tecnología Educativa                                                                              mrodriguez@unimet.edu.ve

More Related Content

Recently uploaded

Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxdkmeza
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptxdeimerhdz21
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...JAVIER SOLIS NOYOLA
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxMaritzaRetamozoVera
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfenelcielosiempre
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaDecaunlz
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioELIASAURELIOCHAVEZCA1
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Alejandrino Halire Ccahuana
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfFrancisco158360
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxYadi Campos
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñotapirjackluis
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVGiustinoAdesso1
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdfDemetrio Ccesa Rayme
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMarjorie Burga
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICAÁngel Encinas
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...JAVIER SOLIS NOYOLA
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxnandoapperscabanilla
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfPaolaRopero2
 

Recently uploaded (20)

Estrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptxEstrategias de enseñanza-aprendizaje virtual.pptx
Estrategias de enseñanza-aprendizaje virtual.pptx
 
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLAACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
ACERTIJO DE POSICIÓN DE CORREDORES EN LA OLIMPIADA. Por JAVIER SOLIS NOYOLA
 
INSTRUCCION PREPARATORIA DE TIRO .pptx
INSTRUCCION PREPARATORIA DE TIRO   .pptxINSTRUCCION PREPARATORIA DE TIRO   .pptx
INSTRUCCION PREPARATORIA DE TIRO .pptx
 
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
LABERINTOS DE DISCIPLINAS DEL PENTATLÓN OLÍMPICO MODERNO. Por JAVIER SOLIS NO...
 
Sesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docxSesión de aprendizaje Planifica Textos argumentativo.docx
Sesión de aprendizaje Planifica Textos argumentativo.docx
 
plande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdfplande accion dl aula de innovación pedagogica 2024.pdf
plande accion dl aula de innovación pedagogica 2024.pdf
 
Sesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronósticoSesión de clase: Fe contra todo pronóstico
Sesión de clase: Fe contra todo pronóstico
 
Qué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativaQué es la Inteligencia artificial generativa
Qué es la Inteligencia artificial generativa
 
origen y desarrollo del ensayo literario
origen y desarrollo del ensayo literarioorigen y desarrollo del ensayo literario
origen y desarrollo del ensayo literario
 
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
Lecciones 05 Esc. Sabática. Fe contra todo pronóstico.
 
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdfCurso = Metodos Tecnicas y Modelos de Enseñanza.pdf
Curso = Metodos Tecnicas y Modelos de Enseñanza.pdf
 
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptxSEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
SEXTO SEGUNDO PERIODO EMPRENDIMIENTO.pptx
 
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niñoproyecto de mayo inicial 5 añitos aprender es bueno para tu niño
proyecto de mayo inicial 5 añitos aprender es bueno para tu niño
 
Valoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCVValoración Crítica de EEEM Feco2023 FFUCV
Valoración Crítica de EEEM Feco2023 FFUCV
 
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
Programacion Anual Matemática4    MPG 2024  Ccesa007.pdfProgramacion Anual Matemática4    MPG 2024  Ccesa007.pdf
Programacion Anual Matemática4 MPG 2024 Ccesa007.pdf
 
MAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grandeMAYO 1 PROYECTO día de la madre el amor más grande
MAYO 1 PROYECTO día de la madre el amor más grande
 
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICABIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
BIOMETANO SÍ, PERO NO ASÍ. LA NUEVA BURBUJA ENERGÉTICA
 
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
ACERTIJO DE LA BANDERA OLÍMPICA CON ECUACIONES DE LA CIRCUNFERENCIA. Por JAVI...
 
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptxORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
ORGANIZACIÓN SOCIAL INCA EN EL TAHUANTINSUYO.pptx
 
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdfGUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
GUIA DE CIRCUNFERENCIA Y ELIPSE UNDÉCIMO 2024.pdf
 

Featured

PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024Neil Kimberley
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)contently
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024Albert Qian
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsKurio // The Social Media Age(ncy)
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Search Engine Journal
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summarySpeakerHub
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next Tessa Mero
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentLily Ray
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best PracticesVit Horky
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project managementMindGenius
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...RachelPearson36
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Applitools
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at WorkGetSmarter
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...DevGAMM Conference
 

Featured (20)

Skeleton Culture Code
Skeleton Culture CodeSkeleton Culture Code
Skeleton Culture Code
 
PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024PEPSICO Presentation to CAGNY Conference Feb 2024
PEPSICO Presentation to CAGNY Conference Feb 2024
 
Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)Content Methodology: A Best Practices Report (Webinar)
Content Methodology: A Best Practices Report (Webinar)
 
How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024How to Prepare For a Successful Job Search for 2024
How to Prepare For a Successful Job Search for 2024
 
Social Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie InsightsSocial Media Marketing Trends 2024 // The Global Indie Insights
Social Media Marketing Trends 2024 // The Global Indie Insights
 
Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024Trends In Paid Search: Navigating The Digital Landscape In 2024
Trends In Paid Search: Navigating The Digital Landscape In 2024
 
5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary5 Public speaking tips from TED - Visualized summary
5 Public speaking tips from TED - Visualized summary
 
ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd ChatGPT and the Future of Work - Clark Boyd
ChatGPT and the Future of Work - Clark Boyd
 
Getting into the tech field. what next
Getting into the tech field. what next Getting into the tech field. what next
Getting into the tech field. what next
 
Google's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search IntentGoogle's Just Not That Into You: Understanding Core Updates & Search Intent
Google's Just Not That Into You: Understanding Core Updates & Search Intent
 
How to have difficult conversations
How to have difficult conversations How to have difficult conversations
How to have difficult conversations
 
Introduction to Data Science
Introduction to Data ScienceIntroduction to Data Science
Introduction to Data Science
 
Time Management & Productivity - Best Practices
Time Management & Productivity -  Best PracticesTime Management & Productivity -  Best Practices
Time Management & Productivity - Best Practices
 
The six step guide to practical project management
The six step guide to practical project managementThe six step guide to practical project management
The six step guide to practical project management
 
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
Beginners Guide to TikTok for Search - Rachel Pearson - We are Tilt __ Bright...
 
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
Unlocking the Power of ChatGPT and AI in Testing - A Real-World Look, present...
 
12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work12 Ways to Increase Your Influence at Work
12 Ways to Increase Your Influence at Work
 
ChatGPT webinar slides
ChatGPT webinar slidesChatGPT webinar slides
ChatGPT webinar slides
 
More than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike RoutesMore than Just Lines on a Map: Best Practices for U.S Bike Routes
More than Just Lines on a Map: Best Practices for U.S Bike Routes
 
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
Ride the Storm: Navigating Through Unstable Periods / Katerina Rudko (Belka G...
 

Estructuras de decisión en

  • 1. Estructuras de Decisión Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 2. Decisión Generalmente cuando se nos plantea un problema nos vemos ante la necesidad de tomar una o más decisiones. A veces hay que escoger entre una o mas alternativas posibles Los problemas que resolvemos con el computador no se escapan de esta situación Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 3. Que son Estructuras de Decisión Son estructuras de selección que permiten tomar distintos cursos de acción de acuerdo a una condición. Esta condición viene dada por una expresión lógica Si (condición) entonces acción 1 sino acción 2 Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 4. Tipos de Estructuras de Decisión If-Then-Else (3 formas) If-Then If-Then Else If Anidados Case Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 5. Decisión simple Se ejecuta un grupo de instrucciones en caso de cumplirse una sola condición (valor booleano verdadero) Sintaxis: If condición Then Instrucciones End if Son palabras claves Cierra el bloque a ejecutar si la condición es Verdadera Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 6. Decisión simple se ejecutan si la condición es If condición Then Verdadera Instrucciones En caso contrario (si la condición es End if Falsa) continúa el flujo del Instrucciones programa con la instrucción inmediatamente después del End If Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 7. Ejemplo de decisión simple Por ejemplo: Leer los datos de una persona e decir el nombre si y solo si es del sexo masculino. Option Explicit Dim Nombre As String, Sexo As String Sub Principal( ) Nombre = InputBox ("Cuál es tú nombre?", "Nombre") Sexo = InputBox ("Escriba M (Masculino) o F (femenino)", "Sexo") If Sexo = "M" Then Sheets(“Salida”).Cells(2, 1) = Nombre End If End Sub Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 8. Decisión compuesta Se ejecuta un grupo de instrucciones en caso de cumplirse una condición y otro en caso contrario. Sintaxis: If condición Then Instrucciones1 Else Instrucciones2 End if Son palabras reservadas Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 9. Decisión compuesta If condición Then Se ejecutan si la condición es Instrucciones1 Verdadera Else Instrucciones2 Se ejecutan en caso contrario, es decir, si la condición es Falsa End if Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 10. Ejemplo de decisión compuesta Option Explicit Dim Nombre As String Sub principal ( ) Nombre = InputBox(“Cuál es tú nombre?”, “Nombre") If Nombre = “Pepe” Then MsgBox (“El nombre real es José”) Else MsgBox (“Tiene otro nombre”) End If End Sub Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 11. Decisión anidada Muchas veces tenemos situaciones donde hay más de una condición a tomar en cuenta. Una forma de expresarlo es con una Decisión Anidada. Sintaxis: If condición1 Then If condición2 Then Recuerda usar el tabulador Instrucciones1 (sangría) para darle Else mayor visualización a Instrucciones2 este estructura End If Else Instrucciones3 End If Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 12. Decisión anidada Si la condición es Verdadera, pregunta por la siguiente condición If condición1 Then Se ejecutan si la If condición2 Then condición1 y la condición2 son Instrucciones1 Verdaderas Else Instrucciones2 Se ejecutan si la condición1 es End If Verdadera y la condición2 es Else Falsa Instrucciones3 Se ejecutan si la condición1 es End If Falsa Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 13. Ejemplo de decisión anidada Option Explicit Dim Edad As String Sub principal( ) Edad = InputBox("Cuál es tu edad?", “Edad") Importante! Estos If anidados son Call VerificarEdad equivalentes a los siguientes If anidados: If Edad < 18 Then If Edad < 18 and Edad > 12 Then If Edad > 12 Then MsgBox (“Eres un adolescente”) MsgBox (“Eres un adolescente”) Else If Edad <= 12 Then Else MsgBox (“Eres un niño”) MsgBox (“Eres un niño”) Else End If MsgBox (“Eres mayor de edad”) Else End If MsgBox (“Eres mayor de edad”) End If End If End Sub Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 14. Decisión anidada Otra forma de decisión anidada es la siguiente: If condición1 Then If condición2 Then La estructura de Instrucciones1 Estos If anidados son equivalentes a los siguientes: la decisión anidada Else If condición1 And condición2 Then dependerá del Instrucciones2 Instrucciones1 buen análisis End If que se realice End If del problema. If condición1 And Not(condición2) Then Else Instrucciones2 If condición3 Then End If Instrucciones3 If Not(condición1) and condición3 Then Instrucciones3 Else End If Instrucciones4 If Not(condición1) and Not(condición3) Then End If Instrucciones4 End If Departamento de Programación y End If Tecnología Educativa mrodriguez@unimet.edu.ve
  • 15. Decisión Case En esta estructura de decisión, se consideran una serie de valores alternativos para una misma expresión. La condición se evalúa en diferentes valores hasta encontrar el que coincide. Para cada valor se realizan instrucciones diferentes. Importante! Este Case es Select Case expresión equivalente a los siguientes If anidados: Case valor1 Instrucciones1 If expresión = valor1 Then Case valor2 Instrucciones1 Else son palabras Instrucciones2 If Expresión = valor2 Then reservadas Case valor3 Instrucciones2 Else Instrucciones3 If expresión = valor3 Then End Select Instrucciones3 End If End If End If Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 16. Ejemplo de decisión Case (Variable tipo String) „ En este ejemplo se evalúa el estado civil de la persona Option Explicit Dim EdoCiv As String Dim Solteros as Integer Importante! Este Case es equivalente a los siguientes If anidados: Dim Casados as Integer Dim Otros as Integer If EdoCiv = “s” or EdoCiv = “S” Then Solteros = Solteros + 1 Sub principal( ) Else EdoCiv = InputBox(“Cuál es tu estado civil?”, “Estado Civil”) If EdoCiv = “c” or EdoCiv = “C” Then Casados = Casados + 1 Call VerficaEdoCivil Else Select Case EdoCiv If EdoCiv = “d” or EdoCiv = “D” or Case “s” , “S” EdoCiv = “o” or EdoCiv = “O” Then Solteros = Solteros + 1 Otros = Otros + 1 Case “c”, “C” Else Casados = Casados + 1 MsgBox (“Error”) Case “d” , “o” , “D”, “O” Entra por esta opción End If Otros = Otros + 1 solamente si no End If Case Else se cumplen End If MsgBox (“Error”) ninguna de las End Select anteriores End Sub Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 17. Ejemplo de decisión Case (Variable tipo Integer) „En este ejemplo se envía un mensaje indicando a que grupo de „edad pertenece la persona. Importante: Cuando el valor viene dado por Option Explicit una condición (<,>,=, etc.) automáticamente Dim Edad As Integer se coloca la palabra clave “Is” Sub principal( ) Edad = InputBox(“Cuál es tu edad?”, “Edad”) Call VerificarEdad Select Case Edad Es importante considerar que Case Is >=65 siempre entra por la primera MsgBox(“Usted es de la Tercera edad”) opción verdadera: Case Is >=18 MsgBox(“Usted es mayor de edad”) Si Edad es 70 entrará por la primera Case Is >12 opción y termina MsgBox(“Usted es adolescente”) Case Else Si Edad es 40 entrará por la MsgBox (“Usted es un niño”) segunda opción y termina End Select End Sub Si Edad es 15 entrará por la tercera opción y termina Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 18. Uso de decisión Case Ventajas: Utiliza menos instrucciones que las instrucciones equivalentes en un If anidado Se evitan errores al no tener que hacer coincidir los If con los Else y End If. Más fácil de visualizar Desventajas: Solamente se puede utilizar cuando la expresión del condicional se refiere a la misma variable. Solamente entra por una opción Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 19. Comentarios sobre los valores en el decisión Case 1. Se pueden utilizar expresiones múltiples o intervalos en cada cláusula Case. Por ejemplo, cualquiera de las siguientes líneas son válidas: Case 1 To 4, 7 To 9 Case 1 To 4, 11, 13 Case 1 To 4, 7 To 9, 11, 13, Is > MaxNumber 2. También puede especificar intervalos y expresiones múltiples para cadenas de caracteres. En el siguiente ejemplo, Case coincide con las cadenas que son exactamente “iguales a todo”, cadenas que están entre “nueces” y “sopa” en orden alfabético y el valor actual de ElemPrueba: Case "iguales a todo", "nueces" To "sopa", ElemPrueba Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 20. Otros ejemplos de decisión Case (Comentario 1) Nuevamente el ejemplo que envía un mensaje indicando a que grupo de „edad pertenece la persona, pero con otros intervalos de valores: Option Explicit Const Anciano = 65 Dim Edad As Integer Sub principal( ) Edad = InputBox(“Cuál es tu edad?”, “Edad”) Call VerificarEdad Select Case Edad Case Is >=Anciano MsgBox(“Usted es de la Tercera edad”) Observe los Case Is >=18 diferentes MsgBox(“Usted es mayor de edad”) intervalos Case 13, 14, 15, 16, 17 MsgBox(“Usted es adolescente”) de valores Case 0 to 4 MsgBox (“Usted es un niño”) End Select End Sub Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve
  • 21. Otros ejemplos de decisión Case (Comentario 2) Nuevamente el ejemplo que evalúa el estado civil de la persona, pero considerando posibles errores de trascripción: Option Explicit Const Divo =“Divorciado” Observe los Dim EdoCiv As String diferentes Dim Solteros as Integer intervalos Dim Casados as Integer Dim Otros as Integer de valores Sub principal( ) EdoCiv = InputBox(“Cuál es tu estado civil?”, “Estado Civil”) Select Case EdoCiv Case “s” to “so” , “S” to “SO” Solteros = Solteros + 1 Case “c”, “Casada” to “Casado”, “csaada” to “csaado”, “C” Casados = Casados + 1 Case “d” to “di” , “D” to “DI”, “o” , “O”, “Divo” Otros = Otros + 1 Case Else MsgBox (“Error”) End Select End Sub Departamento de Programación y Tecnología Educativa mrodriguez@unimet.edu.ve