SlideShare ist ein Scribd-Unternehmen logo
1 von 50
Downloaden Sie, um offline zu lesen
Evaluación
1 Se desea calcular independientemente la suma de los
  números pares e impares comprendidos entre 1 y 200,
  ambos inclusive
2 C l l y visualizar l suma y el producto d l números
  Calcular     i li    la         l    d t de los ú
  pares comprendidos entre 20 y 400, ambos inclusive
3 Calcular la suma de los cuadrados de los 100 primeros
  números naturales
4 Calcular la media de 500 números e imprimir su resultado
PROGRAMACIÓN
ESTRUCTURADA:
ESTRUCTURADA ALGORITMOS
Y ESTRUCTURAS DE DATOS
Flujo de control I; Estructuras selectivas
Contenido
 El flujo de control de un programa
       j                   p g
 Estructura secuencial
 Estructuras selectivas
 Estructuras de decisión anidadas
 Resumen
 Deber
El flujo de control de un programa
 Cualquier algoritmo puede ser construido utilizando
 combinaciones d
      bi i         de tres estructuras d       de control dl de fl j flujo
 estandarizadas (secuencial, selección, repetitiva o iterativa) y una
 cuarta denominada, invocación o salto (jump)
 Las sentencias de selección son: si (if) y según sea (switch)
 Las sentencias de repetición o iterativas son: desde (for), mientras
 (
 (while), hacer-mientras (do-while) o repetir hasta que (repetir-
        ),                  (         )      p             q ( p
 until)
 Las sentencias de salto o bifurcacion incluyen romper (break)
 continuar (continue), ir-a (goto), volver (return) y lanzar (throw)
           (        ),      (g ),          (      )          (     )
Estructura secuencial
 Una estructura secuencial es aquella en la que una acción
                                   q        q
 (instrucción) sigue a otra en secuencia
Ejemplo
 La suma S de los números   Proceso sin_titulo
                                  Escribir "suma y producto
 es S=A+B y el producto P   de dos numeros";
 es P=A*B                         Leer num1;
                                  Leer num2;
                                  s<-num1+num2;
                                  p<-num1 num2;
                                  p<-num1*num2;
                                  Escribir s;
                                  Escribir p;
                            FinProceso
Estructuras selectivas
 Las estructuras selectivas se utilizan para tomar decisiones lógicas;
 de hí
 d ahí que se suelen d
                    l denominar también estructuras d d i ió o
                               i         bié            de decisión
 alternativas
 La representación de una estructura selectiva se hace con
 palabras de pseudocódigo (if, then, else o bien es español si,
 entonces, sino), con una figura geométrica en forma de rombo
 Las estructuras selectivas o alternativas pueden ser;
                                            p        ;
   Simples
   Dobles
   multiples
Alternativa simple (si-entonces/if-then)
 La estructura alternativa simple si-entonces (if-then) ejecuta una
                               p              (       ) j
 determinada acción cuando se cumple una determinada
 condición. La selección si-entonces evalúa la condición y
   Si la condición es verdadera, entonces ejecuta la acción SI ( o
   acciones en caso de ser SI una acción puede ser compuesta y constar
   de varias acciones)
   Si la condición es falsa, entonces no hacer nada
Estructura doble (si entonces/if-then-else)
 La estructura anterior es muy limitada y normalmente se necesita una
 estructura que permita elegir entre dos opciones o alternativas posibles,
 en función del cumplimiento o no de una determinada condición
 Si la condición es verdadera se ejecuta la acción S1 y si es falsa se
                    verdadera,                        y,      falsa,
 ejecuta la acción S2
Ejemplos
 Resolución de una ecuación de primer grado
                               p      g
 Si la ecuación es ax+b=0, a y b son los datos, y las posibles
 soluciones son:
   a<>0 x=-b/a
   a=0 b<>o entonces “solución imposible”
   a=0 b=0  entonces “solución indeterminada”
Ejemplos
 Estructura selectiva para averiguar si un año leído del
                       p            g
 teclado es no bisiesto
 Algoritmo que nos calcule el área de un triangulo conociendo
 sus lados. La estructura selectiva se utiliza para el control de
 la entrada de datos en el programa
Alternativa múltiple (según sea, caso de/case)
                            sea
 La estructura de decisión múltiple evaluara una expresión que podrá
 tomar n valores distintos, 1,2,3,4,…n. según se elija uno de estos
 valores en la condición, se realizara una de las n acciones o lo que es
 igual,
 igual el flujo del algoritmo seguirá un determinado camino entre los
 n posibles
Ejemplo
 Se desea diseñar un algoritmo que escriba los nombres de
                         g      q
 los días de la semana en función del valor de una variable
 DIA introducida por el teclado
 Preguntar que día de la semana fue el día 1 del mes actual
 y calcular que día de la semana es hoy
Estructuras de decisión anidadas
 Las estructuras de selección si-entonces y si entonces-si_no_
 implican la selección de dos alternativas. Es posible también
 utilizar la instrucción si para diseñar estructuras de selección
 que contengan mas de dos alternativas. Por ejemplo, una
 estructura si-entonces puede contener otra estructura si-
 entonces,
 entonces y una estructura si entonces puede contener otra y
                              si-entonces                 otra,
 así sucesivamente cualquier numero de veces
Ejemplo
 Diseñe un algoritmo que lea tres numero A,B,C y visualice en
 la pantalla el valor del mas grande. Se supone que los 3
 valores son diferentes
 El siguiente algoritmo l 3 números dif
     i i t      l it    lee     ú       diferentes A B C e
                                               t A, B,
 imprime los valores máximo y mínimo. El procedimiento
 consistirá en comparaciones sucesivas de parejas de números
                  p                       p j
 Pseudocódigo que nos permita calcular las soluciones de una
 ecuación de segundo grado, incluyendo los valores
 imaginarios
 i     i i
La sentencia ir-a (goto)
 La sentencia ir-a (goto) o sentencia de invocación directa
                      (g )
 transfiere el control del programa a una posición especificada
 por el programa
 Las sentencias ir-a pertenece a un grupo de sentencias conocidas
 como sentencias de salto (jump). Las sentencias de salto hacen que
 e ujo
 el flujo de control salte a otra parte del programa. Otras
                co o sa e         o a pa e de p og a a. O as
 sentencias de salto o bifurcación que se encuentra en los lenguajes
 de programación, tanto tradicionales como nuevos son interrumpir
 (break),
 (b k) continuar (
              i     (continue), volver (
                         i ) l         (return) y l
                                              ) lanzar ( h )
                                                       (throw)
Resumen
 Las estructuras de selección si y según_sea son sentencias de
                                     g _
 bifurcación que se ejecutaran en función de sus elementos
 relacionados     en    las    expresiones    o    condiciones
 correspondientes que se forman con operadores lógicos y de
 comparación. Estas sentencias permiten escribir algoritmos
 que realizan tomas de decisiones y relacionan de modos
 diferentes a datos diferentes
Ejemplos
 Leer dos números y deducir si están en orden creciente
 Algoritmo que nos indique si un numero, entero leído del
 teclado, tiene 1,2,3, o mas dígitos, considerar los negativos
Deber
 4.3 Dados tres números deducir cual es el central
 4.10 Un ángulo se considera agudo si es menor de 90
 grados, obtuso si es mayor de 90 grados y recto si es igual
 a 90 grados Utilizando esta información escribir un
          grados.                   información,
 algoritmo que acepte un ángulo en grados y visualice el
 tipo de ángulo correspondiente a los grados introducidos
 Escribir un programa que seleccione la operación aritmética
 a ejecutar entre dos números dependiendo del valor de una
 variable denominada selección
FLUJO DE CONTROL II
Estructuras repetitivas
Contenido
Estructuras repetitivas
 Las estructuras que repiten una secuencia de
 instrucciones un numero determinado de veces se
 denominan bucles y se denomina interacción al hecho
 de repetir la ejecución de una secuencia de acciones
                                             acciones.
 La acción (o acciones) que se repite en un bucle se
 denomina interacción
 Las principales preguntas a realizarse en el diseño de
 un bucle son; Que contiene el bucle? Y cuantas veces se
 debe
 d b repetir?ti ?
Cont..
Cont
 Lo normal es que la condición se indique al final o al principio
                q                     q                 p     p
 del bucle, y así se consideran tres tipos de instrucciones o
 estructuras repetitivas o interactivas generales y una en
 particular que denominaremos iterar, que contiene la salida en
 el interior del bucle
Cont…
Cont
 Los tres casos generales de estructuras repetitivas dependen de la
 situación y modo de la condición. La condición se evalúa tan pronto
 se encuentra en el algoritmo y su resultado producirá los tres tipos
 de estructuras citadas
   La condición de salida del bucle se realiza al principio del bucle (estructura
   mientras)
   La condición de salida se origina al final del bucle; el bucle se ejecuta
   hasta que se verifica una cierta condición
   La condición de salida se realiza con un contador que cuenta el numero de
   iteraciones
Ejemplos
Estructura mientras (while)
Estructura mientras (while)
 La estructura repetitiva mientras (while o dowhile) es aquella en que
 el cuerpo d l b l se repite mientras se cumple una d
   l        del bucle        i     i               l      determinada
                                                                 i d
 condición.
 Cuando se ejecuta la instrucción mientras, la primera cosa que
 sucede es que se evalúa la condición. Si se evalúa falsa, no se toma
 ninguna acción y el programa prosigue en la siguiente instrucción
 del bucle. Si la expresión booleana es verdadera, entonces se
 ejecuta el cuerpo d l b l d
   j t l            del bucle después d l cual se evalúa d nuevo
                                     é de lo     l       lú de
 la expresión booleana. Este proceso se repite una y otra vez
 mientras la condición booleana sea verdadera
Ejemplos
 Leer por teclado un numero que represente una
       p                           q       p
 cantidad de números que a su vez se leerán también
 por el teclado. Calcular la suma de estos números
 Contar los numero enteros positivos introducidos por el
 teclado. Se consideran dos variables enteras NUMERO
 Y CONTADOR (    (contara el numero d eneros positivos).
                            l       de             ii )
 Se supone que se leen números positivos y se detiene el
 bucle cuando se lee un numero negativo o cero
Ejecución de un bucle cero veces e infinito
 En una estructura mientras la primera cosa que sucede
                               p              q
 es la evaluación de la expresión booleana; si se evalúa
 falsa en ese punto, entonces el cuerpo del bucle nunca
 se ejecuta
 Un bucle que nunca se termina se denomina bucle
 infinito
 i fi i o sin fi L b l sin fi no i
            i fin. Los bucles i fin    intencionados son
                                             i d
 perjudiciales para la programación y se deben evitar
 siempre
Regla práctica
 Las pruebas o test en las expresiones booleanas es
 conveniente que sean mayor o menor que en lugar de
 pruebas de igualdad o desigualdad.
 En el caso de la codificación en un lenguaje de
 programación, esta regla debe seguirse rígidamente en el
 caso de numero reales, ya que como estos valores se
 almacena en cantidades aproximadas las comparaciones
 de igualdad de valores reales normalmente plantean
 problemas. Siempre que realice comparaciones de números
 reales use l relaciones < < > o >
    l       las l i      <,<=,> >=
Terminación de bucles con datos de entrada
 Si un algoritmo o programa esta leyendo una lista de
         g          p g              y
 valores con un bucle mientras, se debe incluir algún tipo
 de mecanismo para terminar el bucle. Existen cuatro
 métodos típicos para terminar un bucle de entrada
   Preguntar antes de la iteración
   Encabezar l li d d
   E b         la lista de datos con su tamaño
                                            ñ
   Finalizar la lista con un valor de entrada
   Agotar los datos de t d
   A t l d t d entrada
Ejemplos
 Calcular la media de un conjunto de notas de
 alumnos. Pondremos un valor centinela de -99 que
 detecte el fin del bucle
Estructura hacer- mientras (do-while)
 El bucle hacer mientras es análogo al bucle mientras y el
 cuerpo del bucle se ejecuta una y otra vez mientras la
 condición (expresión booleana) es verdadera. Existe, sin
 embargo una gran diferencia y es que el cuerpo del bucle
        g      g                     q          p
 esta encerrado entre las palabras hacer y mientras, de
 modo que las sentencias de dicho cuerpo se ejecutan, al
 menos una vez, antes de que se evalúe la expresión
 booleana. En otras palabras, el cuerpo del bucle siempre se
 ejecuta, al menos una vez, incluso aunque la expresión
 booleana sea falsa
Estructura hacer- mientras (do-while)
 Al igual que en el caso del bucle mientras la sentencia en el
     g    q
 interior del bucle puede ser simple o compuesta. Todas las
 sentencias en el interior del bucle se ejecutan al menos una vez
 antes de que la expresión o condición se evalué. Entonces si la
 expresión es verdadera las sentencias del cuerpo del bucle se
 ejecutan una vez mas
Estructura repetir (repeat)
 Existen muchas situaciones en las que se desea que un bucle se
                                       q               q
 ejecute al menos una vez antes de comprobar la condición de
 repetición. En la estructura mientras si el valor de la expresión
 booleana es inicialmente falso el cuerpo del bucle no se ejecutara
                            falso,                             ejecutara;
 por ello, se necesitan otros tipos de estructuras repetitivas
    La estructura repetir (repeat) se ejecuta hasta que se cumpla una condición
    determinada que se comprueba l final del bucle
    El bucle repetir-hasta_que se repite mientras el valor de la expresión
    booleana de la condición sea falsa justo la opuesta a la sentencia mientras
                                 falsa,
Estructura repetir (repeat)
 Ejemplo
 Desarrollar     el    algoritmo
 necesario para calcular el
 factorial de
 f t i l d un numero N que
 responda a la formula
 N! N (N ) (N )…3
 N!=N*(N-1)*(N-2)…3*2*1
Diferencias de las estructuras mientras y repetir
  La estructura mientras termina cuando la condición es falas,   ,
  mientras que repetir termina cuñado la condición es verdadera
  En la estructura repetir el cuerpo del bucle se ejecuta siempre
  al menos una vez; por el contrario, mientras es mas general y
  permite la posibilidad de que el bucle pueda no ser
  ejecutado. P
   j     d Para usar l estructura repetir d b estar seguro
                         la                 i debe
  de que el cuerpo del bucle -bajo cualquier circunstancia- se
  repetirá al menos una vez
Estructura desde/para (for)
 En muchas ocasiones se conoce de antemano el numero de
 veces que se desean ejecutar las acciones del bucle. En estos
 casos, en el que el numero de iteraciones es fijo, se debe usar
 la estructura desde o para. La estructura desde ejecuta las
 acciones del cuerpo del bucle un numero especificado de veces
 y de modo automático controla el numero de iteraciones o
 paso a través del cuerpo del bucle
Estructura desde/para (for)
 Ejemplo
 Calcular la suma de los N primeros
 numero enteros
Realización de una estructura desde con una
estructura mientras
 Es posible, sustituir una estructura desde por una mientras;
Salidas internas de los bucles
 Aunque no se incluye dentro de las estructuras básicas de la
 programación estructurada, en ocasiones es necesario
 disponer de una estructura repetitiva que permita la salida en
 un punto intermedio del bucle cuando se cumpla una condición
                                                       condición.
 Esta nueva estructura solo esta disponible en algunos lenguajes
 de programación específicos; la denominaremos iterar para
 diferenciarlo de repetir_hasta ya conocida. Las salidas de
   f
 bucles suelen ser validas en estructuras mientras, repetir y
 desde
Sentencias de salto interrumpir (break) y
continuar (continue)
 Sentencia interrumpir (break)
   La sentencia interrumpir se puede utilizar para terminar una
   sentencia de iteración y cuando se ejecuta produce que el flujo
   de control salte fuera a la siguiente sentencia inmediatamente a
   continuación d l sentencia d iteración. La sentencia interrumpir
                 de la           de
   se puede colocar en el interior del cuerpo del bucle para
   implementar este efecto
 Regla
   La sentencia interrumpir (break) se utiliza frecuentemente junto
   con una sentencia si (if) actuando como una condición interna del
                         ( )
   bucle
Ejemplo
Sentencia continuar
 La sentencia continuar (continue) hace que el flujo de ejecución
 salte el resto de un cuerpo del bucle para continuar con el
 siguiente bucle o iteración. Esta característica suele ser útil en
 algunas circunstancias
 La secuencia continuar solo se puede utilizar dentro de una
 iteración de un bucle. La sentencia continuar no interfiere con
 el numero de veces que se repite el cuerpo del bucle como
 sucede con interrumpir, sino que simplemente influye en el flujo
 de control en cualquier interacción especifica
Ejemplo
 Al ejecutar el bucle anterior se producen
 estos resultados;
 1,2,3,5,6,7,9,10,11,13,14,15,17,18,19
Estructuras repetitivas anidadas
 De igual forma que se pueden anidar o encajar estructuras de
 selección, es posible insertar un bucle dentro de otro. Las reglas para
 construir estructuras repetitivas anidadas son iguales en ambos casos: la
 estructura interna debe estar incluida totalmente dentro de la externa
 y no puede existir solapamiento
Ejemplo

Calcular el factorial de n
números leídos del terminal
Ejemplos
 Imprimir las 30 primeras potencias de 4, es decir 4^1, 4^2,
 etc
 Diseñar el algoritmo para imprimir la suma de los números
 impares menores o iguales que n
 Buscar y escribir la primera vocal leída del teclado. (se
 supone que se leen uno a uno caracteres desde el teclado)
 Escribir un algoritmo que permita escribir en una pantalla la
 frase ?desea continuar? S/N hasta que la respuesta sea S o
 N
Deber
 Imprimir todos los números primos entre dos y 1000
 inclusive
 Imprima una tabla de multiplicar
 Calcular
Patrón de prueba de pantalla panorámica (16:9)




                               Prueba de la
                                relación de
                                  aspecto
                            (Debe parecer circular)




       4x3

16x9

Weitere ähnliche Inhalte

Was ist angesagt?

Simulación - Unidad 4 Lenguajes de Simulación (Promodel)
Simulación - Unidad 4 Lenguajes de Simulación (Promodel)Simulación - Unidad 4 Lenguajes de Simulación (Promodel)
Simulación - Unidad 4 Lenguajes de Simulación (Promodel)José Antonio Sandoval Acosta
 
Estructuras (CAPAS) de un sistema operativo
Estructuras (CAPAS) de un sistema operativoEstructuras (CAPAS) de un sistema operativo
Estructuras (CAPAS) de un sistema operativoMarvin Romero
 
Jerarquia de la memoria
Jerarquia de la memoria Jerarquia de la memoria
Jerarquia de la memoria Fabian Rojas
 
Estructura de almacenamiento
Estructura de almacenamientoEstructura de almacenamiento
Estructura de almacenamientoAndrea Mendez
 
Líneas de espera (1) ejercicio
Líneas de espera (1) ejercicioLíneas de espera (1) ejercicio
Líneas de espera (1) ejercicioMachado Mauricio
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativosadriel91
 
Computacion grafica
Computacion graficaComputacion grafica
Computacion graficaangel martin
 
Ejercicios resueltos en el Laboratorio de estructuras struct registros
Ejercicios resueltos en el Laboratorio de estructuras struct registrosEjercicios resueltos en el Laboratorio de estructuras struct registros
Ejercicios resueltos en el Laboratorio de estructuras struct registrosrasave
 
Estructuras de seleccion
Estructuras de seleccionEstructuras de seleccion
Estructuras de seleccionClariza
 
Optimizacion de la busqueda de discos
Optimizacion de la busqueda de discosOptimizacion de la busqueda de discos
Optimizacion de la busqueda de discosJazmín Limón
 
Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)José Antonio Sandoval Acosta
 
CARACTERISTICAS DE LA ALU Y LA UC
CARACTERISTICAS DE LA ALU Y LA UCCARACTERISTICAS DE LA ALU Y LA UC
CARACTERISTICAS DE LA ALU Y LA UCltguevara
 
Ejercicios de programacion if - switch-case
Ejercicios de programacion   if  -   switch-caseEjercicios de programacion   if  -   switch-case
Ejercicios de programacion if - switch-caseGuillermo Viaje
 
Diagrama estructurado-pseudocódigo
Diagrama estructurado-pseudocódigoDiagrama estructurado-pseudocódigo
Diagrama estructurado-pseudocódigoValeria Ramón Vega
 

Was ist angesagt? (20)

Simulación - Unidad 4 Lenguajes de Simulación (Promodel)
Simulación - Unidad 4 Lenguajes de Simulación (Promodel)Simulación - Unidad 4 Lenguajes de Simulación (Promodel)
Simulación - Unidad 4 Lenguajes de Simulación (Promodel)
 
Estructuras (CAPAS) de un sistema operativo
Estructuras (CAPAS) de un sistema operativoEstructuras (CAPAS) de un sistema operativo
Estructuras (CAPAS) de un sistema operativo
 
Jerarquia de la memoria
Jerarquia de la memoria Jerarquia de la memoria
Jerarquia de la memoria
 
Estructura de almacenamiento
Estructura de almacenamientoEstructura de almacenamiento
Estructura de almacenamiento
 
Líneas de espera (1) ejercicio
Líneas de espera (1) ejercicioLíneas de espera (1) ejercicio
Líneas de espera (1) ejercicio
 
lineas de espera
lineas de esperalineas de espera
lineas de espera
 
GESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas OperativosGESTION DE PROCESOS Sistemas Operativos
GESTION DE PROCESOS Sistemas Operativos
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 
Computacion grafica
Computacion graficaComputacion grafica
Computacion grafica
 
Ensayo ciclo De Instrucción
Ensayo ciclo De InstrucciónEnsayo ciclo De Instrucción
Ensayo ciclo De Instrucción
 
Estructura secuencial
Estructura secuencialEstructura secuencial
Estructura secuencial
 
Ejercicios resueltos en el Laboratorio de estructuras struct registros
Ejercicios resueltos en el Laboratorio de estructuras struct registrosEjercicios resueltos en el Laboratorio de estructuras struct registros
Ejercicios resueltos en el Laboratorio de estructuras struct registros
 
Estructuras de seleccion
Estructuras de seleccionEstructuras de seleccion
Estructuras de seleccion
 
Optimizacion de la busqueda de discos
Optimizacion de la busqueda de discosOptimizacion de la busqueda de discos
Optimizacion de la busqueda de discos
 
Diagramas de flujo
Diagramas de flujoDiagramas de flujo
Diagramas de flujo
 
Modelo esquemático
Modelo esquemáticoModelo esquemático
Modelo esquemático
 
Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)Fundamentos de Programacion - Unidad 5 arreglos (vectores)
Fundamentos de Programacion - Unidad 5 arreglos (vectores)
 
CARACTERISTICAS DE LA ALU Y LA UC
CARACTERISTICAS DE LA ALU Y LA UCCARACTERISTICAS DE LA ALU Y LA UC
CARACTERISTICAS DE LA ALU Y LA UC
 
Ejercicios de programacion if - switch-case
Ejercicios de programacion   if  -   switch-caseEjercicios de programacion   if  -   switch-case
Ejercicios de programacion if - switch-case
 
Diagrama estructurado-pseudocódigo
Diagrama estructurado-pseudocódigoDiagrama estructurado-pseudocódigo
Diagrama estructurado-pseudocódigo
 

Ähnlich wie Clase 3

Estructuras de control algoritmos dq
Estructuras de control algoritmos   dqEstructuras de control algoritmos   dq
Estructuras de control algoritmos dqDorys Quiroz Quiroz
 
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++die_dex
 
6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos ProgramasPaulo Guerra Terán
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivasmartell024
 
Estructuras de control de flujo
Estructuras de control de flujoEstructuras de control de flujo
Estructuras de control de flujoAliandroMejias
 
Guia de estructuras Condicionales
Guia de estructuras CondicionalesGuia de estructuras Condicionales
Guia de estructuras Condicionaleslaryenso
 
Que es un algoritmo de jorge magaña
Que es un algoritmo de jorge magañaQue es un algoritmo de jorge magaña
Que es un algoritmo de jorge magañaJorge Ricardo
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivasmarigelcontreras
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivasmarigelcontreras
 
Guia 2nd o & 3er
Guia 2nd o & 3erGuia 2nd o & 3er
Guia 2nd o & 3ermartell024
 
Lenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de ControlLenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de ControlKarina Arguedas Ruelas
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de controlFernando Solis
 

Ähnlich wie Clase 3 (20)

Estructuras de control algoritmos dq
Estructuras de control algoritmos   dqEstructuras de control algoritmos   dq
Estructuras de control algoritmos dq
 
Power point
Power pointPower point
Power point
 
Clase 6
Clase 6Clase 6
Clase 6
 
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
ESTRUCTURAS DE SELECCIÓN SENTENCIAS IF Y SWITCH EN C++
 
6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas6 Escritura De Algoritmos Programas
6 Escritura De Algoritmos Programas
 
4. estructuras selectivas
4. estructuras selectivas4. estructuras selectivas
4. estructuras selectivas
 
Estructuras de control de flujo
Estructuras de control de flujoEstructuras de control de flujo
Estructuras de control de flujo
 
Guia de estructuras Condicionales
Guia de estructuras CondicionalesGuia de estructuras Condicionales
Guia de estructuras Condicionales
 
fTópicos 2.0
fTópicos 2.0fTópicos 2.0
fTópicos 2.0
 
Taller algoritmos2
Taller algoritmos2Taller algoritmos2
Taller algoritmos2
 
Que es un algoritmo de jorge magaña
Que es un algoritmo de jorge magañaQue es un algoritmo de jorge magaña
Que es un algoritmo de jorge magaña
 
Repaso c
Repaso cRepaso c
Repaso c
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Estructuras de control selectivas
Estructuras de control selectivasEstructuras de control selectivas
Estructuras de control selectivas
 
Guia 2nd o & 3er
Guia 2nd o & 3erGuia 2nd o & 3er
Guia 2nd o & 3er
 
Fijo de control I
Fijo de control IFijo de control I
Fijo de control I
 
Fijo de control i
Fijo de control iFijo de control i
Fijo de control i
 
Fijo de control i
Fijo de control iFijo de control i
Fijo de control i
 
Lenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de ControlLenguaje Borland C - Estructuras de Control
Lenguaje Borland C - Estructuras de Control
 
Estructuras de control
Estructuras de controlEstructuras de control
Estructuras de control
 

Mehr von diego MC

Que es_mision
 Que es_mision Que es_mision
Que es_misiondiego MC
 
Contenido cient fico(didactica especial)
Contenido cient fico(didactica especial)Contenido cient fico(didactica especial)
Contenido cient fico(didactica especial)diego MC
 
Sicolog a evolutiva_contenido
Sicolog a evolutiva_contenidoSicolog a evolutiva_contenido
Sicolog a evolutiva_contenidodiego MC
 
Neurociencias 4
Neurociencias 4Neurociencias 4
Neurociencias 4diego MC
 
Clase 10_ programacion
Clase 10_ programacionClase 10_ programacion
Clase 10_ programaciondiego MC
 
Clase 9- programacion
Clase 9- programacionClase 9- programacion
Clase 9- programaciondiego MC
 
Clase 11- fundamentos de la programacion
Clase 11- fundamentos de la programacionClase 11- fundamentos de la programacion
Clase 11- fundamentos de la programaciondiego MC
 
Neurociencias 4
Neurociencias 4Neurociencias 4
Neurociencias 4diego MC
 
Presentacion unidad 4_neurociencias
Presentacion unidad 4_neurocienciasPresentacion unidad 4_neurociencias
Presentacion unidad 4_neurocienciasdiego MC
 

Mehr von diego MC (13)

Que es_mision
 Que es_mision Que es_mision
Que es_mision
 
Contenido cient fico(didactica especial)
Contenido cient fico(didactica especial)Contenido cient fico(didactica especial)
Contenido cient fico(didactica especial)
 
Sicolog a evolutiva_contenido
Sicolog a evolutiva_contenidoSicolog a evolutiva_contenido
Sicolog a evolutiva_contenido
 
Neurociencias 4
Neurociencias 4Neurociencias 4
Neurociencias 4
 
Clase 10_ programacion
Clase 10_ programacionClase 10_ programacion
Clase 10_ programacion
 
Clase 9- programacion
Clase 9- programacionClase 9- programacion
Clase 9- programacion
 
Clase 5
Clase 5Clase 5
Clase 5
 
Clase 4
Clase 4Clase 4
Clase 4
 
Clase 2
Clase 2Clase 2
Clase 2
 
Clase 1
Clase 1Clase 1
Clase 1
 
Clase 11- fundamentos de la programacion
Clase 11- fundamentos de la programacionClase 11- fundamentos de la programacion
Clase 11- fundamentos de la programacion
 
Neurociencias 4
Neurociencias 4Neurociencias 4
Neurociencias 4
 
Presentacion unidad 4_neurociencias
Presentacion unidad 4_neurocienciasPresentacion unidad 4_neurociencias
Presentacion unidad 4_neurociencias
 

Clase 3

  • 1. Evaluación 1 Se desea calcular independientemente la suma de los números pares e impares comprendidos entre 1 y 200, ambos inclusive 2 C l l y visualizar l suma y el producto d l números Calcular i li la l d t de los ú pares comprendidos entre 20 y 400, ambos inclusive 3 Calcular la suma de los cuadrados de los 100 primeros números naturales 4 Calcular la media de 500 números e imprimir su resultado
  • 2. PROGRAMACIÓN ESTRUCTURADA: ESTRUCTURADA ALGORITMOS Y ESTRUCTURAS DE DATOS Flujo de control I; Estructuras selectivas
  • 3. Contenido El flujo de control de un programa j p g Estructura secuencial Estructuras selectivas Estructuras de decisión anidadas Resumen Deber
  • 4. El flujo de control de un programa Cualquier algoritmo puede ser construido utilizando combinaciones d bi i de tres estructuras d de control dl de fl j flujo estandarizadas (secuencial, selección, repetitiva o iterativa) y una cuarta denominada, invocación o salto (jump) Las sentencias de selección son: si (if) y según sea (switch) Las sentencias de repetición o iterativas son: desde (for), mientras ( (while), hacer-mientras (do-while) o repetir hasta que (repetir- ), ( ) p q ( p until) Las sentencias de salto o bifurcacion incluyen romper (break) continuar (continue), ir-a (goto), volver (return) y lanzar (throw) ( ), (g ), ( ) ( )
  • 5. Estructura secuencial Una estructura secuencial es aquella en la que una acción q q (instrucción) sigue a otra en secuencia
  • 6. Ejemplo La suma S de los números Proceso sin_titulo Escribir "suma y producto es S=A+B y el producto P de dos numeros"; es P=A*B Leer num1; Leer num2; s<-num1+num2; p<-num1 num2; p<-num1*num2; Escribir s; Escribir p; FinProceso
  • 7. Estructuras selectivas Las estructuras selectivas se utilizan para tomar decisiones lógicas; de hí d ahí que se suelen d l denominar también estructuras d d i ió o i bié de decisión alternativas La representación de una estructura selectiva se hace con palabras de pseudocódigo (if, then, else o bien es español si, entonces, sino), con una figura geométrica en forma de rombo Las estructuras selectivas o alternativas pueden ser; p ; Simples Dobles multiples
  • 8. Alternativa simple (si-entonces/if-then) La estructura alternativa simple si-entonces (if-then) ejecuta una p ( ) j determinada acción cuando se cumple una determinada condición. La selección si-entonces evalúa la condición y Si la condición es verdadera, entonces ejecuta la acción SI ( o acciones en caso de ser SI una acción puede ser compuesta y constar de varias acciones) Si la condición es falsa, entonces no hacer nada
  • 9. Estructura doble (si entonces/if-then-else) La estructura anterior es muy limitada y normalmente se necesita una estructura que permita elegir entre dos opciones o alternativas posibles, en función del cumplimiento o no de una determinada condición Si la condición es verdadera se ejecuta la acción S1 y si es falsa se verdadera, y, falsa, ejecuta la acción S2
  • 10. Ejemplos Resolución de una ecuación de primer grado p g Si la ecuación es ax+b=0, a y b son los datos, y las posibles soluciones son: a<>0 x=-b/a a=0 b<>o entonces “solución imposible” a=0 b=0 entonces “solución indeterminada”
  • 11. Ejemplos Estructura selectiva para averiguar si un año leído del p g teclado es no bisiesto Algoritmo que nos calcule el área de un triangulo conociendo sus lados. La estructura selectiva se utiliza para el control de la entrada de datos en el programa
  • 12. Alternativa múltiple (según sea, caso de/case) sea La estructura de decisión múltiple evaluara una expresión que podrá tomar n valores distintos, 1,2,3,4,…n. según se elija uno de estos valores en la condición, se realizara una de las n acciones o lo que es igual, igual el flujo del algoritmo seguirá un determinado camino entre los n posibles
  • 13. Ejemplo Se desea diseñar un algoritmo que escriba los nombres de g q los días de la semana en función del valor de una variable DIA introducida por el teclado Preguntar que día de la semana fue el día 1 del mes actual y calcular que día de la semana es hoy
  • 14. Estructuras de decisión anidadas Las estructuras de selección si-entonces y si entonces-si_no_ implican la selección de dos alternativas. Es posible también utilizar la instrucción si para diseñar estructuras de selección que contengan mas de dos alternativas. Por ejemplo, una estructura si-entonces puede contener otra estructura si- entonces, entonces y una estructura si entonces puede contener otra y si-entonces otra, así sucesivamente cualquier numero de veces
  • 15. Ejemplo Diseñe un algoritmo que lea tres numero A,B,C y visualice en la pantalla el valor del mas grande. Se supone que los 3 valores son diferentes El siguiente algoritmo l 3 números dif i i t l it lee ú diferentes A B C e t A, B, imprime los valores máximo y mínimo. El procedimiento consistirá en comparaciones sucesivas de parejas de números p p j Pseudocódigo que nos permita calcular las soluciones de una ecuación de segundo grado, incluyendo los valores imaginarios i i i
  • 16. La sentencia ir-a (goto) La sentencia ir-a (goto) o sentencia de invocación directa (g ) transfiere el control del programa a una posición especificada por el programa Las sentencias ir-a pertenece a un grupo de sentencias conocidas como sentencias de salto (jump). Las sentencias de salto hacen que e ujo el flujo de control salte a otra parte del programa. Otras co o sa e o a pa e de p og a a. O as sentencias de salto o bifurcación que se encuentra en los lenguajes de programación, tanto tradicionales como nuevos son interrumpir (break), (b k) continuar ( i (continue), volver ( i ) l (return) y l ) lanzar ( h ) (throw)
  • 17. Resumen Las estructuras de selección si y según_sea son sentencias de g _ bifurcación que se ejecutaran en función de sus elementos relacionados en las expresiones o condiciones correspondientes que se forman con operadores lógicos y de comparación. Estas sentencias permiten escribir algoritmos que realizan tomas de decisiones y relacionan de modos diferentes a datos diferentes
  • 18. Ejemplos Leer dos números y deducir si están en orden creciente Algoritmo que nos indique si un numero, entero leído del teclado, tiene 1,2,3, o mas dígitos, considerar los negativos
  • 19. Deber 4.3 Dados tres números deducir cual es el central 4.10 Un ángulo se considera agudo si es menor de 90 grados, obtuso si es mayor de 90 grados y recto si es igual a 90 grados Utilizando esta información escribir un grados. información, algoritmo que acepte un ángulo en grados y visualice el tipo de ángulo correspondiente a los grados introducidos Escribir un programa que seleccione la operación aritmética a ejecutar entre dos números dependiendo del valor de una variable denominada selección
  • 20. FLUJO DE CONTROL II Estructuras repetitivas
  • 22. Estructuras repetitivas Las estructuras que repiten una secuencia de instrucciones un numero determinado de veces se denominan bucles y se denomina interacción al hecho de repetir la ejecución de una secuencia de acciones acciones. La acción (o acciones) que se repite en un bucle se denomina interacción Las principales preguntas a realizarse en el diseño de un bucle son; Que contiene el bucle? Y cuantas veces se debe d b repetir?ti ?
  • 23. Cont.. Cont Lo normal es que la condición se indique al final o al principio q q p p del bucle, y así se consideran tres tipos de instrucciones o estructuras repetitivas o interactivas generales y una en particular que denominaremos iterar, que contiene la salida en el interior del bucle
  • 24. Cont… Cont Los tres casos generales de estructuras repetitivas dependen de la situación y modo de la condición. La condición se evalúa tan pronto se encuentra en el algoritmo y su resultado producirá los tres tipos de estructuras citadas La condición de salida del bucle se realiza al principio del bucle (estructura mientras) La condición de salida se origina al final del bucle; el bucle se ejecuta hasta que se verifica una cierta condición La condición de salida se realiza con un contador que cuenta el numero de iteraciones
  • 27. Estructura mientras (while) La estructura repetitiva mientras (while o dowhile) es aquella en que el cuerpo d l b l se repite mientras se cumple una d l del bucle i i l determinada i d condición. Cuando se ejecuta la instrucción mientras, la primera cosa que sucede es que se evalúa la condición. Si se evalúa falsa, no se toma ninguna acción y el programa prosigue en la siguiente instrucción del bucle. Si la expresión booleana es verdadera, entonces se ejecuta el cuerpo d l b l d j t l del bucle después d l cual se evalúa d nuevo é de lo l lú de la expresión booleana. Este proceso se repite una y otra vez mientras la condición booleana sea verdadera
  • 28. Ejemplos Leer por teclado un numero que represente una p q p cantidad de números que a su vez se leerán también por el teclado. Calcular la suma de estos números Contar los numero enteros positivos introducidos por el teclado. Se consideran dos variables enteras NUMERO Y CONTADOR ( (contara el numero d eneros positivos). l de ii ) Se supone que se leen números positivos y se detiene el bucle cuando se lee un numero negativo o cero
  • 29. Ejecución de un bucle cero veces e infinito En una estructura mientras la primera cosa que sucede p q es la evaluación de la expresión booleana; si se evalúa falsa en ese punto, entonces el cuerpo del bucle nunca se ejecuta Un bucle que nunca se termina se denomina bucle infinito i fi i o sin fi L b l sin fi no i i fin. Los bucles i fin intencionados son i d perjudiciales para la programación y se deben evitar siempre
  • 30. Regla práctica Las pruebas o test en las expresiones booleanas es conveniente que sean mayor o menor que en lugar de pruebas de igualdad o desigualdad. En el caso de la codificación en un lenguaje de programación, esta regla debe seguirse rígidamente en el caso de numero reales, ya que como estos valores se almacena en cantidades aproximadas las comparaciones de igualdad de valores reales normalmente plantean problemas. Siempre que realice comparaciones de números reales use l relaciones < < > o > l las l i <,<=,> >=
  • 31. Terminación de bucles con datos de entrada Si un algoritmo o programa esta leyendo una lista de g p g y valores con un bucle mientras, se debe incluir algún tipo de mecanismo para terminar el bucle. Existen cuatro métodos típicos para terminar un bucle de entrada Preguntar antes de la iteración Encabezar l li d d E b la lista de datos con su tamaño ñ Finalizar la lista con un valor de entrada Agotar los datos de t d A t l d t d entrada
  • 32. Ejemplos Calcular la media de un conjunto de notas de alumnos. Pondremos un valor centinela de -99 que detecte el fin del bucle
  • 33. Estructura hacer- mientras (do-while) El bucle hacer mientras es análogo al bucle mientras y el cuerpo del bucle se ejecuta una y otra vez mientras la condición (expresión booleana) es verdadera. Existe, sin embargo una gran diferencia y es que el cuerpo del bucle g g q p esta encerrado entre las palabras hacer y mientras, de modo que las sentencias de dicho cuerpo se ejecutan, al menos una vez, antes de que se evalúe la expresión booleana. En otras palabras, el cuerpo del bucle siempre se ejecuta, al menos una vez, incluso aunque la expresión booleana sea falsa
  • 34. Estructura hacer- mientras (do-while) Al igual que en el caso del bucle mientras la sentencia en el g q interior del bucle puede ser simple o compuesta. Todas las sentencias en el interior del bucle se ejecutan al menos una vez antes de que la expresión o condición se evalué. Entonces si la expresión es verdadera las sentencias del cuerpo del bucle se ejecutan una vez mas
  • 35. Estructura repetir (repeat) Existen muchas situaciones en las que se desea que un bucle se q q ejecute al menos una vez antes de comprobar la condición de repetición. En la estructura mientras si el valor de la expresión booleana es inicialmente falso el cuerpo del bucle no se ejecutara falso, ejecutara; por ello, se necesitan otros tipos de estructuras repetitivas La estructura repetir (repeat) se ejecuta hasta que se cumpla una condición determinada que se comprueba l final del bucle El bucle repetir-hasta_que se repite mientras el valor de la expresión booleana de la condición sea falsa justo la opuesta a la sentencia mientras falsa,
  • 36. Estructura repetir (repeat) Ejemplo Desarrollar el algoritmo necesario para calcular el factorial de f t i l d un numero N que responda a la formula N! N (N ) (N )…3 N!=N*(N-1)*(N-2)…3*2*1
  • 37. Diferencias de las estructuras mientras y repetir La estructura mientras termina cuando la condición es falas, , mientras que repetir termina cuñado la condición es verdadera En la estructura repetir el cuerpo del bucle se ejecuta siempre al menos una vez; por el contrario, mientras es mas general y permite la posibilidad de que el bucle pueda no ser ejecutado. P j d Para usar l estructura repetir d b estar seguro la i debe de que el cuerpo del bucle -bajo cualquier circunstancia- se repetirá al menos una vez
  • 38. Estructura desde/para (for) En muchas ocasiones se conoce de antemano el numero de veces que se desean ejecutar las acciones del bucle. En estos casos, en el que el numero de iteraciones es fijo, se debe usar la estructura desde o para. La estructura desde ejecuta las acciones del cuerpo del bucle un numero especificado de veces y de modo automático controla el numero de iteraciones o paso a través del cuerpo del bucle
  • 39. Estructura desde/para (for) Ejemplo Calcular la suma de los N primeros numero enteros
  • 40. Realización de una estructura desde con una estructura mientras Es posible, sustituir una estructura desde por una mientras;
  • 41. Salidas internas de los bucles Aunque no se incluye dentro de las estructuras básicas de la programación estructurada, en ocasiones es necesario disponer de una estructura repetitiva que permita la salida en un punto intermedio del bucle cuando se cumpla una condición condición. Esta nueva estructura solo esta disponible en algunos lenguajes de programación específicos; la denominaremos iterar para diferenciarlo de repetir_hasta ya conocida. Las salidas de f bucles suelen ser validas en estructuras mientras, repetir y desde
  • 42. Sentencias de salto interrumpir (break) y continuar (continue) Sentencia interrumpir (break) La sentencia interrumpir se puede utilizar para terminar una sentencia de iteración y cuando se ejecuta produce que el flujo de control salte fuera a la siguiente sentencia inmediatamente a continuación d l sentencia d iteración. La sentencia interrumpir de la de se puede colocar en el interior del cuerpo del bucle para implementar este efecto Regla La sentencia interrumpir (break) se utiliza frecuentemente junto con una sentencia si (if) actuando como una condición interna del ( ) bucle
  • 44. Sentencia continuar La sentencia continuar (continue) hace que el flujo de ejecución salte el resto de un cuerpo del bucle para continuar con el siguiente bucle o iteración. Esta característica suele ser útil en algunas circunstancias La secuencia continuar solo se puede utilizar dentro de una iteración de un bucle. La sentencia continuar no interfiere con el numero de veces que se repite el cuerpo del bucle como sucede con interrumpir, sino que simplemente influye en el flujo de control en cualquier interacción especifica
  • 45. Ejemplo Al ejecutar el bucle anterior se producen estos resultados; 1,2,3,5,6,7,9,10,11,13,14,15,17,18,19
  • 46. Estructuras repetitivas anidadas De igual forma que se pueden anidar o encajar estructuras de selección, es posible insertar un bucle dentro de otro. Las reglas para construir estructuras repetitivas anidadas son iguales en ambos casos: la estructura interna debe estar incluida totalmente dentro de la externa y no puede existir solapamiento
  • 47. Ejemplo Calcular el factorial de n números leídos del terminal
  • 48. Ejemplos Imprimir las 30 primeras potencias de 4, es decir 4^1, 4^2, etc Diseñar el algoritmo para imprimir la suma de los números impares menores o iguales que n Buscar y escribir la primera vocal leída del teclado. (se supone que se leen uno a uno caracteres desde el teclado) Escribir un algoritmo que permita escribir en una pantalla la frase ?desea continuar? S/N hasta que la respuesta sea S o N
  • 49. Deber Imprimir todos los números primos entre dos y 1000 inclusive Imprima una tabla de multiplicar Calcular
  • 50. Patrón de prueba de pantalla panorámica (16:9) Prueba de la relación de aspecto (Debe parecer circular) 4x3 16x9