CAP-IV_Estructuras de Control

download CAP-IV_Estructuras de Control

of 15

Transcript of CAP-IV_Estructuras de Control

  • 7/24/2019 CAP-IV_Estructuras de Control

    1/15

    6/10/20

    Template

    Add your company slogan

    Facultad de Ingeniera Estadstica e Informtica

    Campus Universitario - Puno Ing. Alcides RAMOS CALCINA

    PUNO 2015

    PROGRAMACIN Y SIMULACIN DE

    PROCESOS METALURGICOS

    Las estructuras de control permiten modificar el flujo de ejecucin delas instrucciones de un programa. Quiere decir, que permite que unascondiciones se lleven a cabo cuando el programador lo desee, ya seaun nmero determinado de veces o hasta un cierto error, etc. Lasestructuras de control tienen un nico punto de entrada y un nicopunto de salida, por lo que estn estructuradas. Se pueden clasificaren:

    1. Secuenciales

    2. Selectivas

    3. Repetitivas

    El estudio de las estructuras de control se realiza basado en lasherramientas de programacin ya estudiadas: pseudocdigos yarchivos .m.

  • 7/24/2019 CAP-IV_Estructuras de Control

    2/15

    6/10/20

    Una estructura secuencial es aquella en la que una accin(instruccin) sigue a otra en secuencia.

    Las tareas se suceden de tal manera que la salida de una es la entradade la siguiente y as sucesivamente hasta al final del proceso.

    Inicio

    .

    .

    .

    fin

    Diagrama de flujo Pseudocdigo

    Ejemplo:Calcule la suma y diferencia de dos nmeros.

    Implemente en un script de Matlab

    Inicioleer (num1)leer (num2)

    sum num1 + num2dif num1 - num2escribir (sum, dif)

    fin

  • 7/24/2019 CAP-IV_Estructuras de Control

    3/15

    6/10/20

    Script:

    Las estructuras selectivas se utilizan para tomar decisiones lgicas; deah que se suelen denominar tambin estructuras de decisin oalternativas.

    En ests estructuras se evala una condicin y en funcin delresultado de la misma se realiza una opcin u otra.

    Las condiciones se especifican usando expresiones lgicas.

    La presentacin de una estructura selectiva se hace con palabras enpseudocdigosi, entonces, si_no.

    Las estructuras selectivas pueden ser: Simples

    Dobles

    mltiples

  • 7/24/2019 CAP-IV_Estructuras de Control

    4/15

    6/10/20

    Simple Doble Triple

    La estructura selectiva simplesi entonces (if then)ejecuta una determinada accin cuando de cumple una determinadacondicin.

    Si la condicin es verdadera, entonces ejecuta la accin SI. Si la condicin esfalsa, entonces no hace nada. Representacin de la estructura:

    2.1. ALTERNATIVA SIMPLE (si entonces / if then)

    Si entonces

    Fin_si

  • 7/24/2019 CAP-IV_Estructuras de Control

    5/15

    6/10/20

    En Matlab, la estructura selectivaif se escribe de la siguiente forma:

    % El conjunto de instrucciones muestra sintaxis de la

    % estructura if en Matlab

    if ();

    end

    Ejemplo: Implemente un seudocdigo y el correspondiente programa enMatlab que, al recibir como dato el promedio de un alumno en un curso

    universitario, escriba aprobado en caso de que el promedio seasatisfactorio, es decir mayor o igual a 10.5.

    Script:

  • 7/24/2019 CAP-IV_Estructuras de Control

    6/15

    6/10/20

    La estructura anterior es muy limitada y normalmente se necesita unaestructura que permita elegir entre dos opciones.

    Si la condicin es verdadera, se ejecuta la accin S1 y, si es falsa, seejecuta la accin S2.

    Representacin de la estructura:

    2.2. ALTERNATIVA DOBLE (si entonces si_no / if then - else)

    Si entonces

    Si_no

    Fin_si

    En Matlab, la estructura selectivaif - else se escribe de lasiguiente forma:

    % El conjunto de instrucciones muestra sintaxis de la

    % estructura if - else en Matlab

    if ();

    else;

    end

    Ejemplo: Implemente un seudocdigo y el correspondiente programaMatlab que, al recibir como dato el promedio de un alumno en un cursouniversitario, escriba aprobado si su promedio es mayor o igual a 10.5 yreprobado en caso contrario.

  • 7/24/2019 CAP-IV_Estructuras de Control

    7/15

    6/10/20

    Script:

    Si la condicin es verdadera, se ejecuta la accin S1 y, si es falsa, serevisa otra condicin, si es verdadera, se ejecuta la accin S2, casocontrario se ejecuta ala accin S3.

    Representacin de la estructura:

    2.3. ALTERNATIVA TRIPLE (si entonces _si_entonces / if elseif - else)

    Si entonces

    Si_no

    Si

    entoncesSi_no

    Fin_siFin_si

  • 7/24/2019 CAP-IV_Estructuras de Control

    8/15

    6/10/20

    En Matlab, la estructura selectivaif - elseif se escribe de lasiguiente forma:

    % El conjunto de instrucciones muestra sintaxis de la

    % estructura if - elseif en Matlab

    if ();

    elseif;

    else;

    end

    Ejemplo: Implemente un seudocdigo y el correspondiente programaMatlab que, al recibir como dato la edad de una persona si su edad esmenor a 16 tendr que esperar, si es menor a 60 aos puede obtener supermiso de conducir y si es mayor o igual a 60 obtendr una licenciaespecial.

    Script:

  • 7/24/2019 CAP-IV_Estructuras de Control

    9/15

    6/10/20

    La estructura de decisin mltiple evaluar una expresin que podrtomarnvalores distintos, 1, 2, 3, ,n.

    Segn que elija uno de estos valores en la condicin, se realizar unade lasnacciones.

    Representacin de la estructura:

    2.4. ALTERNATIVA MLTIPLE (segn_sea / case)

    Segn_sea hacercaso e1:

    caso e2:

    caso en:

    si_no:

    Fin_segun

    En Matlab, la estructura selectiva case esswitch se escribe de lasiguiente forma:

    % El conjunto de instrucciones muestra sintaxis de la

    % estructura switch en Matlab

    switch ()case

    ;

    case ;

    case ;

    otherwise;

    end

  • 7/24/2019 CAP-IV_Estructuras de Control

    10/15

    6/10/20

    Ejemplo: Implemente un seudocdigo y el correspondiente programa enMatlab que, al recibir como datos dos variables de tipo entero, obtenga elresultado de la siguiente funcin:

    Datos: OP y T

    Donde:OPes una variable de tipo entero que representa el clculo a realizar.Tes una variable de tipo entero que se utiliza para el clculo de la funcin.

    T / 5 Si: OP = 1

    T **T Si: OP = 2f(T)

    6* T / 2 Si: OP = 3, 4

    1 Otros caso

    Script:

  • 7/24/2019 CAP-IV_Estructuras de Control

    11/15

    6/10/20

    En la practica, durante la solucin de un problema, es muy comnencontrar, operaciones que deben ser ejecutadas un nmerodeterminado de veces.

    El conjunto de instrucciones que se ejecutan repetidamente recibeel nombre de ciclo.

    La estructura repetitivafor se utiliza para resolver problemas en losque conocemos el nmero de veces que se debe repetir el ciclo(definida).

    Por otra parte, en algunos algoritmos no podemos establecer deantemano el nmero de veces que se debe repetir el ciclo. Laestructura whilese utiliza para resolver problemas de este tipo (nodefinida).

    La estructura repetitiva do while, a diferencia de las dosanteriores en las que la condicin se evala al principio, en sta seevala al final.

    sta es la estructura utilizada para repetir un conjunto deinstrucciones un nmero definido de veces.

    Este tipo de estructura se encuentra prcticamente en todos loslenguajes de programacin.

    ...

    Para v vi hasta vf [inc] hacer

    .

    .

    .Fin_parav: variable ndice

    Vi, vf: variable inicial y final

    inc: incremento

    Diagrama de flujo Pseudocdigo

  • 7/24/2019 CAP-IV_Estructuras de Control

    12/15

    6/10/20

    En Matlab, la estructura repetitivafor se escribe de la siguiente forma:

    % El conjunto de instrucciones muestra sintaxis de la

    % estructura for en el lenguaje Matlab

    for (V=Vi : Vari : Vf);

    ;

    end

    Observa que la estructura for la variable de control del ciclo V va desde elvalor inicial Vi hasta el valor final Vf. En cada iteracin del ciclo el valorde V se incrementa o decrementa de acuerdo con Vari.

    Ejemplo: Construya un pseudocdigo y programa en Matlab que, alrecibir como datos los salarios de 5 profesores de una universidad,obtenga el total de la nomina.

    Pseudocdigo

    Implementado el programa en Matlab.

    Inicionom 0para i=1 hasta i=5 hacer

    ingrese salarionom nom + salario

    fin_paraimprimir nom

    fin

  • 7/24/2019 CAP-IV_Estructuras de Control

    13/15

    6/10/20

    Script:

    sta estructura permite repetir un conjunto de instrucciones. Sin embargo, elnmero de veces que se debe repetir depende de la condicin que contengael ciclo.

    Cada vez que corresponde iniciar el ciclo se evala una condicin, si sta esverdadera se contina la ejecucin de otra forma se detiene.

    ...

    Mientras hacer

    .

    .

    .

    Fin_mientras

    Diagrama de flujo Pseudocdigo

  • 7/24/2019 CAP-IV_Estructuras de Control

    14/15

    6/10/20

    En Matlab, la estructura repetitivawhile se escribe de la siguienteforma:

    % El conjunto de instrucciones muestra sintaxis de la

    % estructura while en el matlab

    while (COND) % COND debe tener un valor verdadero;

    ;

    COND = modificacin de COND;

    end

    Ejemplo: Construya un pseudocdigo y programa en Matlab que, alrecibir como datos los pagos efectuados en el ltimo mes, permitaobtener la suma de los mismos. Si se ingresa 0 como ltimo dato indicaque no hay ms pagos que completar.

    Pseudocdigo

    Implementado el programa en c++.

    Iniciosump 0ingrese pagmientras (pag0) hacer

    sump sump + pagingrese pag

    fin_mientrasimprimir sump

    fin

  • 7/24/2019 CAP-IV_Estructuras de Control

    15/15

    6/10/20

    Script: