30
ESTRUCTURAS DE CONTROL SELECTIVAS Y REPETITIVAS UNIVERSIDAD PERUANA LOS ANDES ALGORITMO Y ESTRUCTURA DE DATOS I Profesor: Ing. Ricardo Caro Navarro Lima 2015

Algoritmo Estructura Selectiva Repetitivas

Embed Size (px)

DESCRIPTION

problemas

Citation preview

  • ESTRUCTURAS DE CONTROL

    SELECTIVAS Y REPETITIVAS

    UNIVERSIDAD PERUANA LOS

    ANDES

    ALGORITMO Y ESTRUCTURA

    DE DATOS I

    Profesor: Ing. Ricardo Caro Navarro

    Lima 2015

  • REPASANDO:

    DIAGRAMA DE FLUJO

    Punto de inicio del

    programa

    Entrada de datos 2,3

    Proceso

    Imprime

    Fin

    inicio

    2,3

    Suma=2+3

    Suma

    fin

  • DIAGRAMA DE FLUJO

    Conector

    Decisin

    A

    Condicin

  • ESTRUCTURAS DE CONTROL

    Permiten elegir diferentes

    caminos en funcin de los datos

    que se evalan.

    Estructuras Selectivas

    Estructuras Repetitivas

  • ESTRUCTURAS SELECTIVAS Permite definir que se desarrollen un conjunto de

    instrucciones dentro de un algoritmo de acuerdo al

    resultado de la evaluacin de una condicin y siempre

    estarn enmarcadas dentro de un inicio y un fin

    Eleccin simple-doble

    1. Seleccin simple

    If (SI)

    2. Seleccin doble

    If-else (SI-SINO)

    Elseif (SINOSI)

    Eleccin mltiple

    1. Switch- Case(segn_sea - Caso)

  • IF (SI)

    IF condicin

    THEN

    instruccion1

    instruccion2

    instruccin3

    END IF

    condicin NO

    SI

    Instruccion1

    Instruccion2

    Instruccion3

    B

    A

  • IF (SI): EJEMPLO

    Dada una variable cuyo valor es

    ledo desde teclado, imprima por

    pantalla si el numero es mayor que

    0.

  • IF (SI): EJEMPLO Dada una variable cuyo valor es leido desde teclado,

    imprima por pantalla si el numero es mayor que 0.

    Algoritmo MayorQue0

    Variable

    Entero: n

    Inicio

    Mostrar Escribe un numero

    Leer n

    Si (n>0) entonces

    Escribe El numero es mayor que 0

    Fin Si

    Fin

  • IF-ELSE (SI-SINO) IF condicin THEN

    instruccion1

    instruccion2

    instruccin3

    ELSE

    instruccion1

    instruccion2

    instruccin3

    END IF

    condicin

    NO

    SI

    instruccion1

    instruccion2

    instruccion3

    B

    A

    instruccion4

    instruccion5

    instruccion6

  • IF-ELSE (SI-SINO): EJEMPLO

    Dada una variable cuyo valor es

    ledo desde teclado, imprima por

    pantalla si el numero es mayor que

    cero o si es menor o igual que cero

  • IF-ELSE (SI-SINO): EJEMPLO Dada una variable cuyo valor es ledo desde teclado,

    imprima por pantalla si el numero es mayor que cero o

    si es menor o igual que cero.

    Algoritmo MayorQue0

    Variable

    Entero: n

    Inicio

    Mostrar Escribe un numero

    Leer n

    Si (n>0) entonces

    Escribe El numero es mayor que 0

    Sino

    Escribe El numero es menor o igual que 0

    Fin Si

    Fin

  • ELSEIF (SINOSI)

    IF condicin1 THEN

    instruccion1

    ELSEIF condicion2 THEN

    instruccion2

    ELSEIF condicion3 THEN

    instruccion3

    END IF

    A

    condicin1

    condicin2

    condicin3

    instruccion1

    instruccion2

    instruccion3

    B

    si

    si

    si

    NO

    NO

    NO

  • ELSEIF (SINOSI): EJEMPLO

    Comparar dos nmeros que

    se ingresan por teclado, si

    uno es mayor o menor o

    igual que el otro.

  • ELSEIF (SINOSI): EJEMPLO Comparar dos nmeros que se ingresan por teclado, si uno es

    mayor o menor o igual que el otro.

    Algoritmo ComparaDosNumeros

    Variable

    Entero: a,b

    Inicio

    Mostrar Ingresa dos numeros

    Leer (a,b)

    Si (ab)

    Escribe a + es mayor que + b

    sino

    Escribe a + es igual que + b

    Fin Si

    Fin

  • SWITCH-CASE (SEGN_SEA-

    CASO)

    SWITCH expresin

    CASE 1 : instruccion1

    break

    CASE 2 : instruccion2

    break

    CASE 3 : instruccion3

    break

    DEFAULT :

    instruccion4

    END SWITCH

  • SWITCH-CASE (SEGN_SEA-

    CASO): EJEMPLO

    Hallar la Suma o Resta de dos nmeros

    ingresados por teclado, el operador se

    ingresara por teclado (1 para suma y 2 para

    resta), si se ingresa un operador invalido

    indicar operador invalido

  • SWITCH-CASE (SEGN_SEA-

    CASO): EJEMPLO Hallar la Suma o Resta de dos nmeros enteros ingresados por teclado, el operador

    se ingresara por teclado (1 para suma y 2 para resta), si se ingresa un operador

    invalido indicar operador invalido

    Algoritmo CaculaSumaResta

    Variable

    Entero: a,b, operador, resultado

    Inicio

    Mostrar Ingresa dos numeros

    Leer (a,b)

    Mostrar Ingresa operador; 1 para sumar 2 para restar

    Leer (operador)

    Segn_sea(operador) hacer

    Caso 1: resultado a+b

    Escribir La suma de los valores ingresados es : , resultado

    Salir

    Caso 2: resultado a-b

    Escribir La resta de los valores ingresados es : , resultado

    Salir

    Defecto: Escribir Operador no Valido

    Fin Segn

    Fin

  • ESTRUCTURAS REPETITIVAS

    Son estructuras que solucionan problemas cclicos utilizando un mismo conjunto de acciones que se pueden ejecutar una cantidad especifica de veces. Esta cantidad puede ser fija(definida previamente) o variable (en funcin a algn dato dentro del programa)

    While(Mientras)

    Do-While(Hacer-Mientras)

    For(Para)

    Repeat-Until(Repetir-hasta)

  • WHILE (MIENTRAS)

    WHILE condicin

    instruccion1

    instruccion2

    instruccion3

    END WHILE

    A

    condicin

    instruccion1

    Instruccion2

    instruccion3

    B

    si

    NO

  • WHILE(MIENTRAS): EJEMPLO

    Hallar el producto de varios nmeros

    positivos introducidos por teclado, de

    manera que el proceso termina cuando

    se ingresa el numero cero por teclado ,

    tener en cuenta que si se ingresa cero

    como primer valor el producto ser cero

  • WHILE(MIENTRAS): EJEMPLO Hallar el producto de varios nmeros positivos introducidos por teclado, de manera

    que el proceso termina cuando se ingresa el numero cero por teclado , tener en

    cuenta que si se ingresa cero como primer valor el producto ser cero. En el

    caso se ingrese un solo numero el producto es el mismo numero

    Algoritmo producto_sucesivo

    Variable

    Entero: numero, producto

    Inicio

    producto1

    Mostrar Ingresa nmero para la multiplicacin sucesiva

    Leer (numero)

    si (numero =0)

    Escribir El producto es: , 0

    sino

    Mientras (numero != 0 ) hacer

    producto producto*numero

    Mostrar Ingresa nmero para la multiplicacin sucesiva

    Leer (numero)

    Fin Mientras

    Escribir El producto es: , producto

    fin si

    Fin

  • DO-WHILE (HACER MIENTRAS)

    DO

    instruccion1

    instruccion2

    instruccion3

    WHILE condicin

    A

    condicin

    instruccion1

    Instruccion2

    instruccion3

    B

    si

    NO

  • DO-WHILE (HACER MIENTRAS):

    EJEMPLO

    Mostrar el incremento de dos en dos

    del numero cero hasta la cantidad

    de veces del valor que ingrese por

    teclado

  • DO-WHILE (HACER MIENTRAS): Mostrar el incremento de dos en dos del numero cero hasta la cantidad

    de veces del valor que ingrese por teclado

    Algoritmo sumatoriauno

    Variable

    Entero: numero, sumatoria, inc, cont

    Inicio

    sumatoria0

    inc 0

    cont 1

    Mostrar Ingrese el valor hasta donde sumar

    Leer (numero)

    si (numero = 0) entonces

    mostrar la sumatoria es:0

    sino

    hacer

    cont cont+1

    inc inc + 2

    sumatoria sumatoria+inc

    Mientras(cont

  • FOR (PARA)

    FOR inicializar; condicin; incremento

    instruccin1

    instruccin2

    instruccinN

    END FOR

    A

    condicin

    instrucciones

    B

    si

    NO

    inicializar

    incremento

  • FOR (PARA) : EJEMPLO

    Determinar cuales son los mltiplos

    de 5 comprendidos entre 1 y N (N:

    numero ingresado por teclado)

  • FOR (PARA) : EJEMPLO

    Determinar cuales son los mltiplos de 5 comprendidos entre 1 y

    N (N: numero ingresado por teclado)

    Algoritmo Multiplos5

    Variable

    Entero: i, N

    Inicio

    Mostrar Ingrese el numero final del rango de 1 hasta N

    Leer (N)

    Para i 1 hasta N hacer

    Si (resto de (i/5) = 0 ) entonces

    Escribe i

    Fin Si

    Fin Para

    Fin

  • REPEAT-UNTIL(REPETIR -HASTA)

    REPEAT

    instruccion1

    instruccion2

    instruccion3

    UNTIL condicin

    A

    condicin

    instruccion1

    Instruccion2

    instruccion3

    B

    No

    SI

  • REPEAT-UNTIL(REPETIR -

    HASTA): EJEMPLO Dado un capital C, a un inters i, durante m aos, escriba un

    algoritmo que valide las variables correctas y calcule en cuanto se

    habr convertido ese capital en m aos sabiendo que es acumulativo

    Algoritmo Interes

    Variable

    Entero: i, j,m

    Real: C

    Inicio

    Repetir

    Mostrar Ingrese el capital, el inters y el tiempo correctamente

    Leer (C,i,m)

    Hasta (C>0) y (i>0) y (m>0)

    Para j 1 hasta m hacer

    CC*(1+i/100)

    Fin Para

    Escribe Tienes , C, de capital

    Fin

  • GRACIAS

    PROFESOR:

    ING. RICARDO CARO NAVARRO

    LIMA 2015