IN220-02 Instrucciones Selectivas

download IN220-02 Instrucciones Selectivas

of 25

description

pasos para programar

Transcript of IN220-02 Instrucciones Selectivas

  • Ingeniera IndustrialAlgoritmos IN220

    Estructuras bsicas de programacinInstrucciones selectivas

    2015-2 Bethy De la Cerna / George Power

  • Frase del da

    Algoritmos Estructuras bsicas de programacin 222/08/2015

    Los ordenadores son buenos siguiendo instrucciones, no leyendo tu mente

    Donald Knuth (1938) Experto en Ciencias de la

    Computacin Profesor Emrito de la Universidad

    de Stanford Conocido como el padre del anlisis

    de algoritmos Autor de obras enciclopdicas sobre

    programacin Creador del programa de textos

    cientficos TeX

  • Instrucciones selectivas

    Son llamadas tambin estructuras de control de decisin o condicionales porque afectan el flujo de ejecucin del programa

    Permiten ejecutar en forma selectiva una de varias posibilidades de instrucciones

    Algoritmos Estructuras bsicas de programacin 322/08/2015

  • Clasificacin

    Las instrucciones de control selectivas pueden ser:

    SimplesIf Then

    DoblesIf Then Else

    MltiplesIf Then Elseif Elseif ElseSelect Case

    Algoritmos IN220 422/08/2015

  • Instruccin selectiva simple

    Algoritmos Estructuras bsicas de programacin 522/08/2015

    Condicinlgica

    S

    No

    Instruccin(es) si la condicin es verdadera

    Instruccinsiguiente

    Instruccinanterior

    Diagramade flujo:

  • Instruccin selectiva simple

    Opcin 1:

    PseudocdigoSi Condicin Entonces Instruccin

    Visual BasicIf Condicin Then Instruccin

    22/08/2015 Algoritmos Estructuras bsicas de programacin 6

    En este caso la seleccin a realizar ser nica, tansolo se considera la ejecucin de la Instruccincuando la condicin es verdadera.

    Deber escribir toda la Instruccin en una sola lnea.

  • Instruccin selectiva simple

    Opcin 2:

    PseudocdigoSi Condicin Entonces

    InstruccionesFin de Si

    Visual BasicIf Condicin Then

    InstruccionesEnd If

    22/08/2015 Algoritmos Estructuras bsicas de programacin 7

    Se emplea cuando debe ejecutarse un bloque de instrucciones.

    Las instrucciones se escriben en lneas separadas.

    Es necesario cerrar el bloque condicional (Fin de Si = End If)

    Nota: La sangra de texto no es obligatoria pero se recomienda usarla para entender mejor la estructura del programa.

  • Instruccin selectiva doble

    Algoritmos Estructuras bsicas de programacin 822/08/2015

    CondicinSNo

    Instruccin si la condicin es

    Verdadera

    SiguienteInstruccin

    Instruccinanterior

    Instruccin si la condicin es

    Falsa

    Diagramade flujo:

  • Instruccin selectiva doble

    Opcin 1:

    PseudocdigoSi Condicin Entonces Instruccin1 De otro modo Instruccin2

    Visual BasicIf Condicin Then Instruccin1 Else Instruccin2

    22/08/2015 Algoritmos Estructuras bsicas de programacin 9

    En este caso se ejecuta la Instruccin1 si la Condicin es verdadera, y la Instruccin2 si la condicin es falsa.

    Se escribe toda la instruccin en una sola lnea.

  • Instruccin selectiva doble

    Opcin 2:

    PseudocdigoSi Condicin Entonces

    InstruccionesDe otro modo

    InstruccionesFin de Si

    Visual BasicIf Condicin Then

    InstruccionesElse

    InstruccionesEnd If

    22/08/2015 Algoritmos Estructuras bsicas de programacin 10

    Se emplea cuando debe ejecutarse un bloque de instrucciones en caso verdadero y otro bloque en caso falso.

    Las instrucciones se escriben en lneas separadas. El primer bloque se ejecuta si la condicin es verdadera y el otro bloque si la condicin es falsa.

    En todo caso es necesario cerrar el bloque condicional (Fin de Si = End If)

    Nota: La sangra de texto no es obligatoria pero se recomienda usarla para entender mejor la estructura del programa.

  • Ejemplo: Selectiva doble

    Ingrese la nota de un alumno e indique si aprob o desaprob

    Algoritmos Estructuras bsicas de programacin 1122/08/2015

    Nota

    0 5 10 15 20

    Desaprobado Aprobado

  • Solucin: Diagrama de flujo

    Algoritmos Estructuras bsicas de programacin 1222/08/2015

    Inicio

    Nota

    Nota >=13

    Aprob

    Inicio

    Desaprob

    No S

  • Solucin: Pseudocdigo

    Programa CalificacinInicio

    Ingresar NotaSi Nota >= 13 Entonces

    Mostrar AprobDe otro modo

    Mostrar Desaprob

    Fin de Si

    Fin

    Algoritmos Estructuras bsicas de programacin 1322/08/2015

  • Solucin: Visual Basic

    22/08/2015 Algoritmos Estructuras bsicas de programacin 14

    Los comentarios van precedidos de un apstrofe

    y se muestran en verde

  • Instruccin selectiva mltiple

    Esta estructura nos permite ejecutar un bloque de instrucciones distinto luego de evaluar la condicin correspondiente.

    Se conoce tambin como Si anidado (Nested If)

    Tipos: If Then ElseIf (Else) End If

    Select Case

    1522/08/2015 Algoritmos Estructuras bsicas de programacin

  • Instruccin selectiva mltiple

    PseudocdigoSi Condicin 1 Entonces

    Instruccin 1De otro modo Si Condicin 2 Entonces

    Instruccin 2De otro modo Si Condicin 3 EntoncesDe otro modo Si Condicin N Entonces

    Instruccin NDe otro modo

    InstruccinFin de Si

    22/08/2015 Algoritmos Estructuras bsicas de programacin 16

    Bloque opcional en caso no se cumpla ninguna de las condiciones anteriores

    Opcin 1:

    Visual BasicIf Condicin 1 Then

    Instruccin 1ElseIf Condicin 2 Then

    Instruccin 2ElseIf Condicin 3 ThenElseIf Condicin N Then

    Instruccin NElse

    InstruccinEnd If

  • Instruccin selectiva mltiple

    22/08/2015 Algoritmos Estructuras bsicas de programacin 17

    Cond1SNo

    Instruccin 1

    Instruccinanterior

    Cond2No

    Instruccin 2

    Cond NNo

    Instruccin N

    Instruccin

    Instruccinsiguiente

    Bloque opcional (si no se cumple ninguna de las

    condiciones anteriores)

    S

    S

    Diagramade flujo:

  • Instruccin selectiva mltiple

    PseudocdigoSeleccionar Caso Expresin Caso Valor 1

    Instruccin 1Caso Valor 2

    Instruccin 2Caso Valor 2

    Instruccin 2De otro modo

    InstruccinFin de Seleccionar

    22/08/2015 Algoritmos Estructuras bsicas de programacin 18

    Bloque opcional en caso no se cumpla ninguna de las condiciones anteriores

    Opcin 2:

    Visual BasicSelect Case ExpresinCase Valor 1

    Instruccin 1Case Valor 2

    Instruccin 2Case Valor N

    Instruccin NCase Else

    InstruccinEnd Select

    La Expresinpuede ser un

    nmero o un texto

  • Instruccin selectiva mltiple

    22/08/2015 Algoritmos Estructuras bsicas de programacin 19

    Diagramade flujo:

    Instruccin 1

    Instruccinanterior

    Caso 1

    Instruccin

    Instruccinsiguiente

    Bloque opcional (si no se cumple ninguno de los

    casos)

    Caso 2

    Expresin

    Instruccin 2

    Caso N

    Instruccin N

    De otromodo

  • Instruccin selectiva mltiple

    Los valores pueden ser datos numricos o cadenas.Ejemplos: Case 3 Case A

    Una lista de valores se separa con comasEjemplos: Case 3, 4, 5 Case A, B, C

    Se pueden expresar rangos de valoresEjemplos:Case 1 To 10Case

  • Ejercicios

  • Ejercicio 1

    Desarrolle un proyecto que permita ingresar:

    El nombre y

    La edad de una persona

    Muestre un mensaje indicando si la persona es mayor de edad y que puede votar

    Algoritmos Estructuras bsicas de programacin 2222/08/2015

  • Ejercicio 2

    Escriba un programa que:

    Ingrese el nombre y la edad de 2 personas

    Valide que el nombre no est en blanco y la edad est entre 1 y 100

    Muestre el nombre del mayor de ellos

    Algoritmos Estructuras bsicas de programacin 2322/08/2015

  • Ejercicio 3

    Escriba un programa que califique el rendimiento de un alumno segn su nota:

    De 0 a 6 es Deficiente

    De 7 a 12 es Malo

    De 13 a 15 es Regular

    De 16 a 18 es Bueno

    De 19 a 20 es Excelente

    Algoritmos Estructuras bsicas de programacin 2422/08/2015

  • Ejercicio 4

    Escriba un programa que evale las races reales de una ecuacin cuadrtica:

    2 + + = 0; = 24

    2

    Identifique los datos de entrada, datos de salida y datos intermedios

    Debe validar que sea una ecuacin cuadrtica y que las races sean reales, en caso contrario mostrar el mensaje la ecuacin no tiene races reales

    Modifique el programa anterior para que calcule y muestre tambin las races complejas, si las tuviera (ejemplo 3 + 2i).

    2522/08/2015 Algoritmos Estructuras bsicas de programacin