SlideShare una empresa de Scribd logo
1 de 11
Descargar para leer sin conexión
Pontificia Universidad Católica de Valparaíso
                                                                                                                                             Escuela de Ingeniería Informática

                      Pontificia Universidad Católica de Valparaíso
                                                                                                       Tipos de Datos
                                  Facultad de Ingeniería
                                                                                                          El principal objetivo de todo computador es el manejo de información o datos.
                            Escuela de Ingeniería Informática
                                                                                                          Un dato es la expresión general que describe los elementos con los cuales
                                                                                                          opera un computador.
                                                                                                          Existen dos clases de tipos de datos: simples (sin estructura)
                                                                                                          y compuestos (estructurados)
                                                                                                           Los tipo de datos simples son los siguientes:
            “Algoritmos: Definiciones, Estructuras de
                                                                                                           Numéricos (entero, real)
                           Control”                                                                                                                                    Datos
                                                                                                           Lógicos (booleano)
                                                                                                           Carácter (char, string)
                                             Asignatura
                                                                                                                                     Numérico                     Carácter(es)                  Lógico
                                   INF 140 – Informática I
                                             Profesores
                              Pamela Hermosilla Monckton
                                                                                                                         Entero                            Real
                                Daniel Cabrera Paniagua




    Profesores                                                                                            Profesores
                                                                                                                                                                                       INF 140 – Informática I
    PHM/DCP                                                                                               PHM/DCP




                             Pontificia Universidad Católica de Valparaíso                                                             Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                         Escuela de Ingeniería Informática


      Elementos Básicos : Constantes, Variables,                                                           Variable
      Identificadores y Expresiones                                                                        Elemento o partida de datos cuyo valor puede cambiar durante el desarrollo
                                                                                                           del algoritmo (o ejecución del programa).

     Constante                                                                                             Posición de memoria, referenciada por un identificador, donde se almacena
                                                                                                           un dato que puede cambiar durante el algoritmo (o ejecución del programa).
     Elemento o partida de datos cuyo valor no cambia durante el desarrollo del
     algoritmo (o ejecución del programa).
                                                                                                           Pueden ser de tipo: entero, real, carácter o lógica.
    Posición de memoria, referenciada por un identificador, que almacena un
    dato que permanece sin cambios durante el algoritmo (o ejecución del                                 Una variable posee los siguientes atributos :
    programa).
                                                                                                                1. Identificador (asignado por el programador).
    Pueden ser de tipo: entera, real, caracter o lógica.                                                        2. Tipo (describe su uso).


                                                                                                         Una variable definida de un cierto tipo sólo puede tomar valores de ese tipo.




    Profesores                                                                                            Profesores
                                                                             INF 140 – Informática I                                                                                   INF 140 – Informática I
    PHM/DCP                                                                                               PHM/DCP




                             Pontificia Universidad Católica de Valparaíso                                                             Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                         Escuela de Ingeniería Informática


     Identificador                                                                                        Expresiones
    Nombre que posee una variable o constante (ALGORITMO).                                                Combinaciones de constantes, variables, símbolos de operación, paréntesis y
                                                                                                          funciones especiales.
•   Compuesto por un conjunto de caracteres alfanuméricos (El primero es
    usualmente una letra).                                                                                Una expresión consta de: operadores y operandos.

•   Deben ser significativos y tener relación con el objeto que representan.                              Cada expresión toma un valor que se determina, de acuerdo a :

•   No se deben utilizar como identificadores palabras reservadas del lenguaje                                     •   Los valores que posean las variables y constantes implicadas.
    de programación.                                                                                               •   La ejecución de las operaciones involucradas.

•   Ejemplo :                                                                                             Según el tipo de objetos que se manipulan las expresiones se clasifican en :

•   Nombre_Alumno, X, Edad, Sueldo_Bruto…….                                                                        •   Aritméticas
                                                                                                                   •   Lógicas




    Profesores                                                                                            Profesores
                                                                             INF 140 – Informática I                                                                                   INF 140 – Informática I
    PHM/DCP                                                                                               PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                              Pontificia Universidad Católica de Valparaíso
                                     Escuela de Ingeniería Informática                                                                          Escuela de Ingeniería Informática


                                                                                                         Tabla de operadores
Expresiones Aritméticas
                                                                                                                 Operador               Significado                Tipo Operando               Tipo Resultado
•       Análogas a las fórmulas matemáticas :

                                                                                                                         +                  Suma                      Entero/Real                Entero/Real
         – Las variables y constantes (operandos) que las componen son de
           tipo numérico (entero o real)
                                                                                                                         -             Resta/Cambio                   Entero/Real                Entero/Real
                                                                                                                                          Signo
         – Sus operadores son aritméticos : suma, resta, multiplicación,
                                                                                                                         *             Multiplicación                 Entero/Real                Entero/Real
           división, división entera y resto.

•       Ejemplo :                                                                                                        /              División Real                 Entero/Real                      Real
                              5+3=8                                  Resultado
                                                                                                                       DIV             División Entera                    Entero                     Entero
         Operando            Operador
                                                                                                                       MOD            Módulo o Resto                      Entero                     Entero



Profesores                                                                                               Profesores
                                                                               INF 140 – Informática I                                                                                         INF 140 – Informática I
PHM/DCP                                                                                                  PHM/DCP




                               Pontificia Universidad Católica de Valparaíso                                                              Pontificia Universidad Católica de Valparaíso
                                     Escuela de Ingeniería Informática                                                                          Escuela de Ingeniería Informática



                                                                                                             Orden de Prioridad en Operadores Aritméticos
    Reglas de Prioridad
                                                                                                         •            Las operaciones aritméticas dentro de una expresión suelen seguir el
    •    Permiten determinar el orden en que se deben ejecutar las
                                                                                                                      siguiente orden de prioridad :
         operaciones, cuando una expresión posee más de un operador.

                                                                                                                1.       Cambio de Signo ( - )
    Orden de Prioridad                                                                                          2.       Multiplicación , División, División Entera y Resto (*, /, DIV, MOD)
                                                                                                                3.       Suma y Resta (+,-)
    •    Las operaciones entre paréntesis se evalúan primero.
                                                                                                         •            OBS : Si coinciden varios operadores de igual prioridad en una
                                                                                                                      expresión o subexpresión encerrada entre paréntesis, el orden de
    •    Si existen paréntesis anidados, las expresiones más internas tienen
                                                                                                                      evaluación es de izquierda a derecha.
         prioridad.

                                                                                                         •            Ejemplo : ((8-7+3) + (4*6/2))
    •    Ejemplo : ((5+3)+(4+8)/2)+1




Profesores                                                                                               Profesores
                                                                               INF 140 – Informática I                                                                                         INF 140 – Informática I
PHM/DCP                                                                                                  PHM/DCP




                               Pontificia Universidad Católica de Valparaíso                                                              Pontificia Universidad Católica de Valparaíso
                                     Escuela de Ingeniería Informática                                                                          Escuela de Ingeniería Informática



    Expresiones Lógicas                                                                                      Operadores Booleanos

    •        Un segundo tipo de expresiones son las de tipo lógica, que al ser                                          Operador                  Expresión Lógica                           Significado
             evaluadas su resultado puede ser verdadero o falso.
                                                                                                                             ¬                               ¬p                             Negación de p
    •        Las expresiones lógicas se forman usando :

                                                                                                                             ∧                             P∧Q                            Conjunción de P y Q
                •   Operadores booleanos
                •   Operadores relacionales o de comparación
                                                                                                                                                           P∨Q
                                                                                                                             ∨                                                            Disyunción de P y Q




Profesores                                                                                               Profesores
                                                                               INF 140 – Informática I                                                                                         INF 140 – Informática I
PHM/DCP                                                                                                  PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                                  Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                              Escuela de Ingeniería Informática



 Tablas de Verdad                                                                                       Operadores Relacionales


                                                                                 P∧ Q
                                                     P                   Q                               •              Permiten comparar valores de tipo numérico, carácter o lógico, y se
                          ¬P
             P                                                                                                          usan para expresar condiciones dentro de los algoritmos.
                                                     V                   V        V
             V             F                         V                   F        F
                                                                                                         •              Los operadores relacionales son : >, <, =, >=, <=, <>
                                                     F                   V        F
             F            V
                                                     F                   F        F                      •              SINTAXIS : <expresión 1> operador relacional <expresión 2>

                                                            P∨ Q
                 P                  Q                                                                                                                           ⇓
                 V                  V                        V
                 V                  F                        V                                                                           RESULTADO : Verdadero o Falso.
                 F                  V                        V
                 F                  F                        F


Profesores                                                                                             Profesores
                                                                             INF 140 – Informática I                                                                                        INF 140 – Informática I
PHM/DCP                                                                                                PHM/DCP




                             Pontificia Universidad Católica de Valparaíso                                                                  Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                              Escuela de Ingeniería Informática



 Aplicación de los Operadores Relacionales                                                              Aplicación de los Operadores Relacionales


                                                                                                        2.              Aplicación en valores de tipo carácter.
     •       Se aplican sobre datos de tipo: entero, real, lógico y carácter.

                                                                                                        •               Requiere de una secuencia de ordenación de los caracteres:
     1.      Aplicación en valores numéricos. (CONOCIDA)

                                                                                                                    –        Alfabética (mayúsculas y minúsculas).
     EJEMPLO : Si A = 3 y B = 2

                                                                                                                    –        Creciente en caracteres numéricos.
                 •   A > B (VERDADERO)

                                                                                                                    –        Pero si se consideran caracteres especiales, se recurre a un código
                 •   A + B = 5 (VERDADERA)
                                                                                                                             normalizado, por ejemplo, el código ASCII.




Profesores                                                                                             Profesores
                                                                             INF 140 – Informática I                                                                                        INF 140 – Informática I
PHM/DCP                                                                                                PHM/DCP




                             Pontificia Universidad Católica de Valparaíso                                                                  Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                              Escuela de Ingeniería Informática

Tabla ASCII (Código estándar americano para el intercambio                                                    –           Aunque NO todos los computadores siguen el código normalizado
de información ).                                                                                                         en su juego completo de caracteres, sí son prácticamente estándar,
                                                                                                                          los códigos de los caracteres alfanuméricos más usuales:

                                                                                                                         •     Caracteres especiales : # , % , $ , ( , ) , + , - , / etc... , exigen
                                                                                                                               consultar el código de ordenación.

                                                                                                                         •     Caracteres Numéricos : se encuentran en su orden natural.
                                                                                                                               (0...9)

                                                                                                                         •     Caracteres Alfabéticos :

                                                                                                                               –   Mayúsculas A...Z (orden alfabético).

                                                                                                                               –   Minúsculas a..z siguen el criterio anterior.




Profesores                                                                                             Profesores
                                                                             INF 140 – Informática I                                                                                        INF 140 – Informática I
PHM/DCP                                                                                                PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                                  Pontificia Universidad Católica de Valparaíso
                                              Escuela de Ingeniería Informática                                                                              Escuela de Ingeniería Informática



 Aplicación de los Operadores Relacionales
                                                                                                                  •            OBS : En las expresiones lógicas se pueden mezclar operadores
                                                                                                                               relacionales y lógicos.
3.           Aplicación en valores de tipo lógico.
                                                                                                                                                   Ejemplo : ( 1 > 5 ) ∧ ( 8 <> 9 )
                 •       Constante FALSO es menor que la constante VERDADERA.




Profesores                                                                                                        Profesores
                                                                                        INF 140 – Informática I                                                                                        INF 140 – Informática I
PHM/DCP                                                                                                           PHM/DCP




                                        Pontificia Universidad Católica de Valparaíso                                                                  Pontificia Universidad Católica de Valparaíso
                                              Escuela de Ingeniería Informática                                                                              Escuela de Ingeniería Informática



 Prioridad de Operadores en Expresiones Lógicas                                                                       Ejemplos


                                                                                                                                    ¬ 4 > 6 ERROR!!!!!!
                       Prioridad 1 : ¬
             –                                                                                                         •
                       Prioridad 2 : ∧
             –
                                                                                                                                    ¬ ( 4 > 6 ) = VERDADERO
                       Prioridad 3 : ∨
             –                                                                                                         •

             –         MENOR PRIORIDAD QUE TODOS LOS OPERADORES :                                                      •            Si X = 7 , Z = 4
                       Relacionales ( <, >, <=……)
                                                                                                                                (1 < X) ∧ (X < Z + 7) CUAL ES EL VALOR DE ESTA EXPRESIÓN????
             –         TAMBIEN SE USAN PARÉNTESIS (MAYOR PRIORIDAD QUE
                       TODOS)




Profesores                                                                                                        Profesores
                                                                                        INF 140 – Informática I                                                                                        INF 140 – Informática I
PHM/DCP                                                                                                           PHM/DCP




                                        Pontificia Universidad Católica de Valparaíso                                                                  Pontificia Universidad Católica de Valparaíso
                                              Escuela de Ingeniería Informática                                                                              Escuela de Ingeniería Informática



 Resolución de Problemas                                                                                              Análisis del Problema


                                                                                                                       •            AYUDA a tener una compresión de la naturaleza del problema.
     •               3 fases básicas:

                                                                                                                                       PROBLEMA bien definido → solución satisfactoria.
                                                                                                                                –
                 –      Análisis del Problema

                                                                                                                                –      Especificaciones de entrada y salida descritas con detalle.
                 –      Diseño del Algoritmo

                                                                                                                                SON REQUISITOS fundamentales para una solución eficaz.
                 –      Codificación del Algoritmo en un LP




Profesores                                                                                                        Profesores
                                                                                        INF 140 – Informática I                                                                                        INF 140 – Informática I
PHM/DCP                                                                                                           PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                                    Pontificia Universidad Católica de Valparaíso
                                              Escuela de Ingeniería Informática                                                                                Escuela de Ingeniería Informática



         Análisis del Problema                                                                                             EJEMPLO : Análisis del Problema


                                                                                                                  •            Calcular promedio de 3 Notas
•             El análisis del problema requiere de una primera lectura, para tener una idea
              general.                                                                                                                 Entrada : 3 Notas
                                                                                                                                       Proceso: Suma aritmética de las Notas dividido por el Total de Notas
•             Una segunda lectura nos permitirá responder las siguientes preguntas :                                                   Salida : Promedio de Notas

          –          ¿ Qué datos se necesitan para resolver el problema ? ENTRADA

          –          ¿ Qué información debe proporcionar la resolución del problema ? SALIDA




        Profesores                                                                                                        Profesores
                                                                                        INF 140 – Informática I                                                                                          INF 140 – Informática I
        PHM/DCP                                                                                                           PHM/DCP




                                        Pontificia Universidad Católica de Valparaíso                                                                    Pontificia Universidad Católica de Valparaíso
                                              Escuela de Ingeniería Informática                                                                                Escuela de Ingeniería Informática

         Diseño del Algoritmo => Pseudocódigo                                                                              Pseudocódigo
    •             Computador sólo resuelve problemas cuando : se le indican los pasos
                                                                                                                      •             Lenguaje de especificación formal de algoritmos que permite representar
                  sucesivos que debe ejecutar (ALGORITMO).
                                                                                                                                    las estructuras de control de la programación estructurada.

    •             Técnicas de Diseño :
                                                                                                                      •             No puede ser ejecutado por un computador (debe ser traducido a un LP).

              –        Diseño Descendente (DIVIDE y VENCERAS)
                                                                                                                      •             Compuesto por palabras reservadas, similares a las de sus homónimos
              –        Refinamiento Sucesivo (Primeros pasos INCOMPLETOS-                                                           en los lenguajes de programación que permiten representar acciones.
                       GENERALES)

                                                                                                                      •             Su escritura exige el uso de indentación.
    •              ALGORITMO debe ser representado a través de alguna técnica que
                  permita independizarlo del lenguaje de programación que se seleccionará
                  para codificarlo.

    •             La técnica de representación puede ser :

              –        Descriptiva (PSEUDOLENGUAJE)
              –        Gráfica (Diagrama de Flujo, Diagrama de Nassi-Schneiderman)
        Profesores                                                                                                        Profesores
                                                                                        INF 140 – Informática I                                                                                          INF 140 – Informática I
        PHM/DCP                                                                                                           PHM/DCP




                                        Pontificia Universidad Católica de Valparaíso                                                                    Pontificia Universidad Católica de Valparaíso
                                              Escuela de Ingeniería Informática                                                                                Escuela de Ingeniería Informática

         VENTAJAS Pseudocódigo                                                                                             ¿Cómo escribir un ALGORITMO en pseudolenguaje?
                                                                                                                      •             La estructura de un algoritmo en pseudocódigo posee dos PARTES :
    •             Programador se CONCENTRA en la LÓGICA y en las ESTRUCTURAS DE
                  CONTROL, y no tanto en las REGLAS SINTÁCTICAS propias de los LP.
                                                                                                                                –        Cabecera
    •             Fácil de modificar.
                                                                                                                                –        Bloque (Cuerpo) del Algoritmo
    •             Fácil de traducir a LP.

    •             Originalmente en Inglés , EN LA ACTUALIDAD en ESPAÑOL




        Profesores                                                                                                        Profesores
                                                                                        INF 140 – Informática I                                                                                          INF 140 – Informática I
        PHM/DCP                                                                                                           PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                                    Pontificia Universidad Católica de Valparaíso
                                       Escuela de Ingeniería Informática                                                                                Escuela de Ingeniería Informática

 Cabecera                                                                                                       Cuerpo del Algoritmo
   •         TODO algoritmo debe comenzar con una cabecera.                                                     •               Es el resto del algoritmo y esta compuesto a su vez de 2 bloques :
   •         Acción simple que comienza con la palabra reservada ALGORITMO,
             seguida de un identificador.                                                                                   –      Bloque de Declaraciones : contiene la declaración de las constantes
                                                                                                                                   y variables que serán utilizadas en el algoritmo.
   SINTAXIS :
                                  ALGORITMO <identificador>
                                                                                                                                   Bloque de Pasos (Acciones o Instrucciones) : contiene las acciones
                                                                                                                            –
                                                                                                                                   que nos permitirán resolver el problema, para el cual fue diseñado
   EJEMPLO :
                                                                                                                                   el algoritmo, cada acción se escribirá en una línea independiente.
                              ALGORITMO Promedio_de_Notas




Profesores                                                                                                     Profesores
                                                                                     INF 140 – Informática I                                                                                      INF 140 – Informática I
PHM/DCP                                                                                                        PHM/DCP




                                 Pontificia Universidad Católica de Valparaíso                                                                    Pontificia Universidad Católica de Valparaíso
                                       Escuela de Ingeniería Informática                                                                                Escuela de Ingeniería Informática

 Bloque de Declaraciones : Declaración de Constantes                                                            Bloque de Declaraciones : Declaración de Variables
 •           Esta sección comienza con la palabra reservada CONST (abreviatura                                    •             Esta sección comienza con la palabra reservada VAR (abreviatura de
             de Constante) y su sintaxis es :                                                                                   Variable) y su sintaxis es :


                                                                                                                  Var           <tipo 1> : <lista de variables (separadas por ,) >
                   <identificador_constante_1> = <valor_1>
 CONST
                                                                                                                                    …
                   <identificador_constante_2> = <valor_2>
                                                                                 Valor determina Tipo
                                                                                                                                <tipo j> : <lista de variables (separadas por ,) >
                                     :
                                     :
                                                                                                                  Ejemplo :                 VAR        real : x,y,z
                   <identificador_constante_N> = <valor_N>
                                                                                                                                                       entero : a,b,c
                                                                                                                                                       caracter : letra
 Ejemplo :                 CONST PI=3.141516
                                     IVA=0.19




Profesores                                                                                                     Profesores
                                                                                     INF 140 – Informática I                                                                                      INF 140 – Informática I
PHM/DCP                                                                                                        PHM/DCP




                                 Pontificia Universidad Católica de Valparaíso                                                                    Pontificia Universidad Católica de Valparaíso
                                       Escuela de Ingeniería Informática                                                                                Escuela de Ingeniería Informática

 Bloque de Acciones : Tipos de Instrucciones                                                                    Tipo de Instrucciones : Instrucciones de Inicio-Fin
                                                                                                                      •           La primera instrucción del bloque de acciones del algoritmo será
     •           Repertorio de instrucciones disponibles en cada lenguaje de
                                                                                                                                  INICIO y la última instrucción será FIN.
                 programación es variable.


     •           PERO …… Existen instrucciones básicas, comunes y soportadas por                                      INICIO
                 todos los lenguajes y que pueden ser utilizadas de forma general en                                              <acción 1>
                 la escritura de un algoritmo :
                                                                                                                                  <acción 2>
                                                                                                                                  <acción 3>
             –      Instrucciones de Inicio-Fin.
                                                                                                                                      :
             –      Instrucción de Asignación.
                                                                                                                                  <acción n>
             –      Instrucción de Lectura.
                                                                                                                      FIN
             –      Instrucción de Escritura.
             –      Instrucciones de Bifurcación.




Profesores                                                                                                     Profesores
                                                                                     INF 140 – Informática I                                                                                      INF 140 – Informática I
PHM/DCP                                                                                                        PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                                           Pontificia Universidad Católica de Valparaíso
                                         Escuela de Ingeniería Informática                                                                                       Escuela de Ingeniería Informática

     Tipo de Instrucciones : Instrucción de Asignación                                                                   Tipo de Instrucciones : Instrucción de Asignación
                                                                                                                                     •        Ejemplos :
                                                                                   <Valor> puede ser : una
•            Permite almacenar un valor en una variable.
                                                                                   constante, una variable
                                                                                                                                     A←1
                                                                                   o el resultado de la
             Operador de asignación : ←
•                                                                                  evaluación de una                                 B←A+3
                                                                                   expresión.
                                                                                                                                     C ← B/2
                          < Identificador de Variable> ← <Valor>
Sintaxis :
                                                                                                                                     Vocal ← ‘A’

•            La instrucción de asignación se ejecuta en dos pasos :                                                                  •        INICIALIZACIÓN DE UNA VARIABLE : Variables al ser
                                                                                                                                              declaradas tienen un valor indeterminado
                                                                                                                                     •        INCOMPATIBILIDAD DE TIPOS
                 1.   Se calcula el valor al lado derecho del operador de asignación.
                                                                                                                                     Var entero : A
                 2.   El valor calculado se almacena en la variable cuyo nombre aparece
                                                                                                                                     Inicio
                      a la izquierda del operador de asignación, sustituyendo el valor
                      que esta tenía anteriormente (instrucción DESTRUCTIVA).                                                                 A←0
                                                                                                                                              A ← 5.56
                                                                                                                                     Fin

    Profesores                                                                                                          Profesores
                                                                                        INF 140 – Informática I                                                                                            INF 140 – Informática I
    PHM/DCP                                                                                                             PHM/DCP




                                   Pontificia Universidad Católica de Valparaíso                                                                           Pontificia Universidad Católica de Valparaíso
                                         Escuela de Ingeniería Informática                                                                                       Escuela de Ingeniería Informática

     Tipo de Instrucciones : Instrucción de Lectura                                                                      Tipo de Instrucciones : Instrucción de Escritura
•            Instrucción de Lectura o entrada de datos, permite extraer uno o más                                   •            Instrucción de salida o escritura de resultados permite enviar resultados
             valores desde un dispositivo de entrada (teclado, unidades de disco etc...) y                                       hacia dispositivos de salida (pantalla, impresora etc...).
             almacenarlos en memoria en la(s) variable(s) indicada(s) dentro de la propia
             instrucción.
                                                                                                                    •            Los datos enviados pueden ser constantes, variables, resultados de
                                                                                                                                 expresiones, mensajes o una mezcla de ellos separados en dicho caso por
•            Sintaxis : Leer ( < lista_de_variables > )
                                                                                                                                 comas.

                 ó
                                                                                                                    •            Sintaxis : Escribir ( < lista_de_expresiones > )
                        Leer ( < variable_1 > )
                        Leer ( < variable_2 > )
                                                                                                                    •            ¿ Cuál será el significado de la siguiente instrucción de escritura ?
                        Leer ( < variable_3 > )

•            ¿ Cuál será el significado de la siguiente instrucción de lectura ?                                    Escribir(“HOLA”)
              Leer(edad, peso)                                                                                      Escribir(“promedio = ”, promedio)
                                                                                                                    Escribir (“ A + B “, A+B)
•            Si se ingresan los valores 25 – 59.3
•            NO SE PUEDEN LEER DATOS DE TIPO Lógico

    Profesores                                                                                                          Profesores
                                                                                        INF 140 – Informática I                                                                                            INF 140 – Informática I
    PHM/DCP                                                                                                             PHM/DCP




                                   Pontificia Universidad Católica de Valparaíso                                                                           Pontificia Universidad Católica de Valparaíso
                                         Escuela de Ingeniería Informática                                                                                       Escuela de Ingeniería Informática


Calcular el promedio de 3 notas.
                                                                                                                                                           Estructuras de control
    1. Inicio
    2. Leer nota 1                                                                                                       Las estructuras de control son las que permiten conducir el flujo del
    3. Leer nota 2                                                                                                       programa, existen dos tipos de estructuras de control las estructuras
    3. Leer nota 3                                                                                                       selectivas y las estructuras repetitivas.
    4. Asignar a suma_de_notas el resultado de nota1 + nota2 + nota3
    5. Asignar a promedio el resultado de suma_de_notas / 3                                                       Estructuras selectivas
    6. Escribir resultado
                                                                                                                         Las estructuras selectivas se utilizan para tomar decisiones lógicas, también
    7. Fin
                                                                                                                         son llamadas estructuras de decisión o alternativas.
    Algoritmo Calcular_Promedio
                                                                                                                  Alternativa simple
    Var real: nota1,nota2,nota3, suma_de_notas, prom
    Inicio
     leer (nota1)                                                                                                       si <condicion> entonces                        si (numero MOD 2 = 0) entonces
     leer (nota2)                                                                                                         <accion 1>                                     escribir(“número es par”)
     leer (nota3)                                                                                                         <accion 2>                                   fin_si
     suma_de_notas       nota1 + nota2 + nota3
     prom      suma_de_notas / 3                                                                                          <accion n>
     escribir(“promedio es: “,prom)                                                                                     fin_si
    Fin


    Profesores                                                                                                          Profesores
                                                                                        INF 140 – Informática I                                                                                            INF 140 – Informática I
    PHM/DCP                                                                                                             PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                                 Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                             Escuela de Ingeniería Informática

 Alternativa doble
                                                                                                             Estructuras selectivas anidadas                                       si <condicion 1>
                                                                                                                                                                                    entonces
   si <condicion>                            si (numero MOD 2 = 0)
                                                                                                                                                                                       si <condicion 2>
    entonces                                    entonces
                                                                                                                 Las estructuras selectivas si y si-sino                                 entonces
       <accion 1>                                   escribir(“número es par”)
                                                                                                                 implican la selección de una de dos                                        <accion 1>
                                               si_no
                                                                                                                 alternativas. Es posible utilizar la instrucción                             .. ..
       <accion n>                                   escribir(“número es impar”)
                                                                                                                                                                                            <accion n>
     si_no                                   fin_si                                                              si para diseñar estructuras de selección
                                                                                                                                                                                         sino
       <accion p>
                                                                                                                 que contengan más de dos alternativas.                                     <accion p>
                                                                                                                                                                                              .. ..
       <accion z>
                                                                                                                                                                                            <accion s>
   fin_si
                                                                                                                                                                                        fin_si
                                                                                                                  si <condicion 1> entonces
                                                                                                                                                                                    sino
                                                                                                                    si <condicion 2> entonces
 Alternativa multiple                                                                                                                                                                  si <condicion 3>
                                                                                                                      <accion 1>
                                                                                                                                                                                         entonces
                                                                                                                      <accion 2>
   segun_sea <expresion_E> hacer              segun_sea dia MOD              7 hacer
                                                                                                                                                                                           <accion f>
     e1: <accion 1>                             1: escribir(“el              día es Lunes”)
                                                                                                                                                                                             .. ..
     e2: <accion 2>                             2: escribir(“el              día es Martes”)                          <accion n>                                                           <accion k>
     e3: <accion 3>                             3: escribir(“el              día es Miércoles”)
                                                                                                                    fin_si                                                              sino
                                                4: escribir(“el              día es Jueves”)
                                                                                                                                                                                           <accion i>
                                                                                                                  fin_si
     en: <accion n>                             5: escribir(“el              día es Viernes”)
                                                                                                                                                                                            .. ..
   fin_si                                       6: escribir(“el              día es Sábado”)
                                                                                                                                                                                           <accion z>
                                                0: escribir(“el              día es Domingo”)
                                                                                                                                                                                      fin_si
                                              fin_si
                                                                                                                                                                                   fin_si



    Profesores                                                                                                  Profesores
                                                                                   INF 140 – Informática I                                                                                   INF 140 – Informática I
    PHM/DCP                                                                                                     PHM/DCP




                             Pontificia Universidad Católica de Valparaíso                                                                 Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                             Escuela de Ingeniería Informática




                                    Ejercicio                                                                   Algoritmo determinar_Aprobacion_Reprobacion
                                                                                                                Var real: nota1,nota2,nota3, suma_de_notas, prom
                                                                                                                Inicio
    • Desarrollar un algoritmo que calcule el                                                                      leer (nota1)
                                                                                                                   leer (nota2)
      promedio simple de 3 notas, y que en                                                                         leer (nota3)
                                                                                                                   suma_de_notas       nota1 + nota2 + nota3
      base al resultado obtenido, muestre la                                                                       prom      suma_de_notas / 3
                                                                                                                   escribir (“promedio es: “,prom)
      situación final (aprobado-reprobado).                                                                        si (prom >= 40 ) entonces
                                                                                                                      escribir (“Aprobado !!! … Felicitaciones !!!”)
                                                                                                                   sino
                                                                                                                      escribir (“Ánimo, hay otra oportunidad !!! ”)
                                                                                                                   fin_si
                                                                                                                Fin




    Profesores                                                                                                  Profesores
                                                                                   INF 140 – Informática I                                                                                   INF 140 – Informática I
    PHM/DCP                                                                                                     PHM/DCP




                             Pontificia Universidad Católica de Valparaíso                                                                 Pontificia Universidad Católica de Valparaíso
                                   Escuela de Ingeniería Informática                                                                             Escuela de Ingeniería Informática


Estructuras repetitivas
                                                                                                             Desde
     Las estructuras repetitivas se utilizan para repetir una o varias acciones un
     número determinado de veces.
Mientras
                                                                                                                   desde v    vi hasta vf
                                           mientras (i< 10) hacer
     mientras <condicion>                                                                                               [ incremento/decremento inc ]
                                             escribir(“el número es: ”, i)
      hacer                                                                                                          hacer
       <accion 1>                            i    i+1                                                                   <accion 1>
       <accion 2>                          fin_mientras                                                                 <accion 2>

       <accion n>                                                                                                       <accion n>
     fin_mientras                                                                                                  fin_desde
Repetir
                                                                                                                                       Desde i         1 hasta 10 hacer
     repetir                               repetir
       <accion 1>                            escribir(“el número es:”, i)
                                                                                                                                               escribir(“el número es:”, i)
       <accion 2>                            i    i+1
                                           hasta_que (i = 10)                                                                          fin_desde
       <accion n>
     hasta_que <condicion>


    Profesores                                                                                                  Profesores
                                                                                   INF 140 – Informática I                                                                                   INF 140 – Informática I
    PHM/DCP                                                                                                     PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                        Pontificia Universidad Católica de Valparaíso
                                 Escuela de Ingeniería Informática                                                                    Escuela de Ingeniería Informática



                                                                                                              Utilizando la estructura repetitiva
                                 Ejercicio
                                                                                                                          “Mientras”
 • Desarrollar un algoritmo que sume n                                                               Algoritmo sumar_numeros
                                                                                                     Var real: nuevo_numero, suma
   números ingresados por un usuario, y                                                                   caracter: continuar
                                                                                                     Inicio
   luego muestre la suma de ellos.                                                                      continuar      ‘s’
                                                                                                        suma      0
                                                                                                        mientras (continuar = ‘s’) hacer
                                                                                                           escribir (“Ingrese un número”)
                                                                                                           leer (nuevo_numero)
                                                                                                           suma      suma + nuevo_numero
                                                                                                           escribir (“¿Desea continuar ingresando otro número? s = si ; n = no”)
                                                                                                           leer (continuar)
                                                                                                        fin_mientras
                                                                                                        escribir(“La suma total es: “,suma)
                                                                                                     fin


 Profesores                                                                                           Profesores
                                                                           INF 140 – Informática I                                                                              INF 140 – Informática I
 PHM/DCP                                                                                              PHM/DCP




                           Pontificia Universidad Católica de Valparaíso                                                        Pontificia Universidad Católica de Valparaíso
                                 Escuela de Ingeniería Informática                                                                    Escuela de Ingeniería Informática



              ¿Y si utilizamos la estructura
                                                                                                                                     Ejercicio
                          Repetir?
                                                                                                      • Desarrolle un algoritmo que calcule el
Algoritmo sumar_numeros
Var real: nuevo_numero, suma
                                                                                                        factorial de un número X.
    caracter: continuar
Inicio
   continuar     ‘s’
   suma      0
   repetir
     escribir (“Ingrese un número”)
     leer (nuevo_numero)
     suma      suma + nuevo_numero
     escribir (“¿Desea continuar ingresando otro número? s = si ; n = no”)
     leer (continuar)
   hasta_que (continuar = ‘n’)
   escribir(“La suma total es: “,suma)
Fin


 Profesores                                                                                           Profesores
                                                                           INF 140 – Informática I                                                                              INF 140 – Informática I
 PHM/DCP                                                                                              PHM/DCP




                           Pontificia Universidad Católica de Valparaíso                                                        Pontificia Universidad Católica de Valparaíso
                                 Escuela de Ingeniería Informática                                                                    Escuela de Ingeniería Informática



                            Análisis (1)                                                                                         Análisis (2)
              ¿Qué es el factorial de un número?                                                                         ¿Cuáles son las entradas?

     Resp: Producto que resulta de multiplicar un número                                                                 Resp: un número entero positivo.
     entero positivo por todos los números inferiores a él,
                  llegando hasta el número 1.
                                                                                                                          ¿Cuáles son las salidas?
Ejemplos:                  3! = 1 * 2 * 3 = 6
                                                                                                                   Resp: un número entero positivo, producto de
                         4! = 1 * 2 * 3 * 4 = 24
                                                                                                                             multiplicaciones sucesivas.
                      5! = 1 * 2 * 3 * 4 * 5 = 120


 Profesores                                                                                           Profesores
                                                                           INF 140 – Informática I                                                                              INF 140 – Informática I
 PHM/DCP                                                                                              PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                          Pontificia Universidad Católica de Valparaíso
                                    Escuela de Ingeniería Informática                                                                      Escuela de Ingeniería Informática



                               Análisis (3)
                                                                                                        Algoritmo calcular_factorial

                       ¿Cuál es el proceso?                                                             Var entero: numero, contador, factorial
                                                                                                        Inicio
                                                                                                         factorial    1
                                                                                                         escribir (“Ingrese número para calcular factorial”)
                       4! = 1 * 2 * 3 * 4 = 24                                                           leer (numero)
                                                                                                         desde contador       factorial + 1 hasta numero
                                                                                                            factorial   factorial * contador
                                                                                                         fin_desde
                                                                                                         escribir (“ Factorial es: ”,factorial)
                                       2*                                                               Fin




                                              6*

                                                    24
Profesores                                                                                              Profesores
                                                                              INF 140 – Informática I                                                                                INF 140 – Informática I
PHM/DCP                                                                                                 PHM/DCP




                              Pontificia Universidad Católica de Valparaíso                                                          Pontificia Universidad Católica de Valparaíso
                                    Escuela de Ingeniería Informática                                                                      Escuela de Ingeniería Informática



 Estructuras repetitivas anidadas                                                                        Estructuras repetitivas anidadas (continuación)
 Así como las instrucciones selectivas (de condición) se pueden anidar, de
                                                                                                                                                                mientras <condicion1> hacer
 igual forma se pueden anidar estructuras de selección, es posible insertar un
                                                                                                                                                                   repetir
 bucle dentro de otro
                                                                                                                                                                       <accion 1>
                                                                                                                                                                       <accion 2>
 mientras <condicion1> hacer
   mientras <condicion2> hacer
                                                        desde v    vi hasta vf hacer                                                                                   <accion n>
     <accion 1>
                                                          desde w    wj hasta wg hacer                                                                               hasta_que <condicion2>
     <accion 2>
                                                            <accion 1>                                                                                          fin_mientras
                                                                                                        repetir
                                                            <accion 2>
     <accion n>                                                                                           mientras <condicion-i> hacer
   fin_mientras                                                                                                 <accion 1>
                                                            <accion n>
 fin_mientras                                                                                                   <accion 2>
                                                          fin_desde
             repetir                                    fin_desde                                              <accion n>
               repetir                                                                                    fin_mientras
                 <accion 1>                                                                             hasta_que <condicion-j>
                 <accion 2>

                 <accion n>
               hasta_que <condicion2>
             hasta_que <condicion1>
Profesores                                                                                              Profesores
                                                                              INF 140 – Informática I                                                                                INF 140 – Informática I
PHM/DCP                                                                                                 PHM/DCP




                              Pontificia Universidad Católica de Valparaíso                                                          Pontificia Universidad Católica de Valparaíso
                                    Escuela de Ingeniería Informática                                                                      Escuela de Ingeniería Informática

                                                                                                        Algoritmo calcular_promedios
                                                                                                        Var entero: nota, suma_de_notas, contador_notas, prom

                                     Ejercicio                                                                carácter: nombre_asignatura, continuar, nueva_nota
                                                                                                        Inicio
                                                                                                          continuar      ‘s’
                                                                                                          mientras (continuar = ‘s’) hacer
                                                                                                             escribir (“Ingrese nombre de la asignatura”)
• Desarrolle un algoritmo que permita                                                                        leer (nombre_asignatura)
                                                                                                             suma_de_notas       0
  calcular el promedio de n cantidad de                                                                      contador_notas      0
                                                                                                             repetir
  notas, para m cantidad de asignaturas.                                                                       escribir (“Ingrese nota:”)
                                                                                                               leer (nota)
                                                                                                               suma_de_notas       suma_de_notas + nota
                                                                                                               contador_notas      contador_notas + 1
                                                                                                               escribir (“¿Desea ingresar una nueva nota? s = si ; n = no”)
                                                                                                               leer (nueva_nota)
                                                                                                             hasta_que (nueva_nota = ‘n’)
                                                                                                             prom      suma_de_notas / contador_notas
                                                                                                             escribir (“Asignatura: ”, nombre_asignatura)
                                                                                                             escribir (“Promedio: “,prom)
                                                                                                             escribir (“¿Desea ingresar una nueva asignatura? s = si ; n = no”?”)
                                                                                                             leer (continuar)
                                                                                                          fin_mientras
                                                                                                        fin

Profesores                                                                                              Profesores
                                                                              INF 140 – Informática I                                                                                INF 140 – Informática I
PHM/DCP                                                                                                 PHM/DCP
Pontificia Universidad Católica de Valparaíso                                                            Pontificia Universidad Católica de Valparaíso
                                      Escuela de Ingeniería Informática                                                                        Escuela de Ingeniería Informática

                                                                                                                                  Estructuras de Control: Diagrama de Flujo

                        Diagramas de Flujo                                                                                                                                               Iteración
                                                                                                                      Secuencia               Selección




                                                           Decisión
             Terminal
                                                      Implica elección
       Inicio o final de
                                                      entre secuencias
         un algoritmo
                                                        alternativas.
                           Entrada/Salida                                               Proceso
                        Lectura de valores y                                      Proceso diferente
                            escritura de                                         de los procesos E/S
                             mensajes                                                y Decisiones



Profesores                                                                                                      Profesores
                                                                                      INF 140 – Informática I                                                                            INF 140 – Informática I
PHM/DCP                                                                                                         PHM/DCP




                                Pontificia Universidad Católica de Valparaíso                                                            Pontificia Universidad Católica de Valparaíso
                                      Escuela de Ingeniería Informática                                                                        Escuela de Ingeniería Informática

                                    Estructuras de Control:

                                                                                                                                                Ejercicio
                           Diagramas de Nassi - Schneiderman


                                                                                                                • Desarrollar un diagrama de flujo que
                                                                                                                  permita calcular el promedio simple de 3
                                                                                                                  notas, y que en base al resultado
                                                                                                                  obtenido, muestre la situación final
                                                                                                                  (aprobado-reprobado).




Profesores                                                                                                      Profesores
                                                                                      INF 140 – Informática I                                                                            INF 140 – Informática I
PHM/DCP                                                                                                         PHM/DCP




                                Pontificia Universidad Católica de Valparaíso
                                      Escuela de Ingeniería Informática

                                                 Inicio


                                            Leer NOTA1,
                                           NOTA2, NOTA3



                                        SUMA_NOTAS
                                      NOTA1 + NOTA2 + NOTA3


                                            PROM
                                          SUMA_NOTAS / 3



                                            escribir PROM




                                              PROM >= 40

                             escribir                         escribir “ ánimo, hay
                           “Aprobado !”                       otra oportunidad ! ”




                                                   Fin

Profesores
                                                                                      INF 140 – Informática I
PHM/DCP

Más contenido relacionado

Similar a [Inf 140] Estructuras Repetitivas Y Selectivas (6 X Hoja)

Dii1 Introduccion A La Informatica
Dii1 Introduccion A La InformaticaDii1 Introduccion A La Informatica
Dii1 Introduccion A La InformaticaEspol
 
[Inf 140] Introduccion A Los Algoritmos (3 Diap X Hoja)
[Inf 140]   Introduccion A Los Algoritmos (3 Diap X Hoja)[Inf 140]   Introduccion A Los Algoritmos (3 Diap X Hoja)
[Inf 140] Introduccion A Los Algoritmos (3 Diap X Hoja)Daniel Barraza
 
[Inf 140] Algoritmos Y Arreglos (6 X Hoja)
[Inf 140]  Algoritmos Y Arreglos (6 X Hoja)[Inf 140]  Algoritmos Y Arreglos (6 X Hoja)
[Inf 140] Algoritmos Y Arreglos (6 X Hoja)Daniel Barraza
 
Presentacion de algoritmos
Presentacion de algoritmosPresentacion de algoritmos
Presentacion de algoritmossistemas2011
 
informatica practica 5 jbpl
informatica practica 5 jbplinformatica practica 5 jbpl
informatica practica 5 jbpljesspena89
 
informaticajessicapl
informaticajessicaplinformaticajessicapl
informaticajessicapljesspena89
 
IC semana-02-2011-II-B
IC semana-02-2011-II-BIC semana-02-2011-II-B
IC semana-02-2011-II-Bcbertolotti
 
Informatica
InformaticaInformatica
Informaticajjpotes
 
Introducción a la Informatica - DSpace en ESPOL
Introducción a la Informatica - DSpace en ESPOLIntroducción a la Informatica - DSpace en ESPOL
Introducción a la Informatica - DSpace en ESPOLMige41
 
02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores pic02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores picJonathan Ruiz de Garibay
 

Similar a [Inf 140] Estructuras Repetitivas Y Selectivas (6 X Hoja) (14)

Dii1 Introduccion A La Informatica
Dii1 Introduccion A La InformaticaDii1 Introduccion A La Informatica
Dii1 Introduccion A La Informatica
 
[Inf 140] Introduccion A Los Algoritmos (3 Diap X Hoja)
[Inf 140]   Introduccion A Los Algoritmos (3 Diap X Hoja)[Inf 140]   Introduccion A Los Algoritmos (3 Diap X Hoja)
[Inf 140] Introduccion A Los Algoritmos (3 Diap X Hoja)
 
Lto tema1
Lto tema1Lto tema1
Lto tema1
 
[Inf 140] Algoritmos Y Arreglos (6 X Hoja)
[Inf 140]  Algoritmos Y Arreglos (6 X Hoja)[Inf 140]  Algoritmos Y Arreglos (6 X Hoja)
[Inf 140] Algoritmos Y Arreglos (6 X Hoja)
 
Tarea 6
Tarea 6Tarea 6
Tarea 6
 
Presentacion de algoritmos
Presentacion de algoritmosPresentacion de algoritmos
Presentacion de algoritmos
 
informatica practica 5 jbpl
informatica practica 5 jbplinformatica practica 5 jbpl
informatica practica 5 jbpl
 
informaticajessicapl
informaticajessicaplinformaticajessicapl
informaticajessicapl
 
IC semana-02-2011-II-B
IC semana-02-2011-II-BIC semana-02-2011-II-B
IC semana-02-2011-II-B
 
Tarea 6.
Tarea 6.Tarea 6.
Tarea 6.
 
Tarea 6.
Tarea 6.Tarea 6.
Tarea 6.
 
Informatica
InformaticaInformatica
Informatica
 
Introducción a la Informatica - DSpace en ESPOL
Introducción a la Informatica - DSpace en ESPOLIntroducción a la Informatica - DSpace en ESPOL
Introducción a la Informatica - DSpace en ESPOL
 
02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores pic02.Arquitectura de los microcontroladores pic
02.Arquitectura de los microcontroladores pic
 

Más de Daniel Barraza

Más de Daniel Barraza (20)

Lista
ListaLista
Lista
 
[Pauta] [Inf 140] Control Ii
[Pauta] [Inf 140]   Control Ii[Pauta] [Inf 140]   Control Ii
[Pauta] [Inf 140] Control Ii
 
Lista
ListaLista
Lista
 
[Pauta] [Inf 140] Control I
[Pauta] [Inf 140]   Control I[Pauta] [Inf 140]   Control I
[Pauta] [Inf 140] Control I
 
[Pauta] [Inf 140] Certamen Ii
[Pauta] [Inf 140]   Certamen Ii[Pauta] [Inf 140]   Certamen Ii
[Pauta] [Inf 140] Certamen Ii
 
[Pauta] [Inf 140] Certamen I
[Pauta] [Inf 140]   Certamen I[Pauta] [Inf 140]   Certamen I
[Pauta] [Inf 140] Certamen I
 
Pauta Control1
Pauta Control1Pauta Control1
Pauta Control1
 
Ayudantia 1
Ayudantia 1Ayudantia 1
Ayudantia 1
 
Pauta Guia 1(1) Bloc De Notas
Pauta Guia 1(1)   Bloc De NotasPauta Guia 1(1)   Bloc De Notas
Pauta Guia 1(1) Bloc De Notas
 
Suma Numeros
Suma NumerosSuma Numeros
Suma Numeros
 
Pauta Guia 3
Pauta Guia 3Pauta Guia 3
Pauta Guia 3
 
Inf 140 Programa
Inf 140   ProgramaInf 140   Programa
Inf 140 Programa
 
Inf 140 Guia3 2008 01
Inf 140   Guia3 2008 01Inf 140   Guia3 2008 01
Inf 140 Guia3 2008 01
 
Inf 140 Guia2 2008 01
Inf 140   Guia2 2008 01Inf 140   Guia2 2008 01
Inf 140 Guia2 2008 01
 
Ejercicio Extra 1
Ejercicio Extra 1Ejercicio Extra 1
Ejercicio Extra 1
 
[Pauta] Trabajo Grupal
[Pauta] Trabajo Grupal[Pauta] Trabajo Grupal
[Pauta] Trabajo Grupal
 
[Inf 140] Representacion Interna De Datos (1 X Hoja)
[Inf 140] Representacion Interna De Datos (1 X Hoja)[Inf 140] Representacion Interna De Datos (1 X Hoja)
[Inf 140] Representacion Interna De Datos (1 X Hoja)
 
[Inf 140] Programacion De Presentaciones
[Inf 140] Programacion De Presentaciones[Inf 140] Programacion De Presentaciones
[Inf 140] Programacion De Presentaciones
 
[Inf 140] Guia4 2008 01
[Inf 140]   Guia4 2008 01[Inf 140]   Guia4 2008 01
[Inf 140] Guia4 2008 01
 
[Inf 140] Guia1 2008 01
[Inf 140]   Guia1 2008 01[Inf 140]   Guia1 2008 01
[Inf 140] Guia1 2008 01
 

Último

La Cadena de suministro CocaCola Co.pptx
La Cadena de suministro CocaCola Co.pptxLa Cadena de suministro CocaCola Co.pptx
La Cadena de suministro CocaCola Co.pptxrubengpa
 
modulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdfmodulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdfmisssusanalrescate01
 
ADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdfADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdfguillencuevaadrianal
 
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptxTEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptxterciariojaussaudr
 
Maria_diaz.pptx mapa conceptual gerencia industral
Maria_diaz.pptx mapa conceptual   gerencia industralMaria_diaz.pptx mapa conceptual   gerencia industral
Maria_diaz.pptx mapa conceptual gerencia industralmaria diaz
 
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAYPPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAYCarlosAlbertoVillafu3
 
informacion-finanTFHHETHAETHciera-2022.pdf
informacion-finanTFHHETHAETHciera-2022.pdfinformacion-finanTFHHETHAETHciera-2022.pdf
informacion-finanTFHHETHAETHciera-2022.pdfPriscilaBermello
 
ANÁLISIS CAME, DIAGNOSTICO PUERTO DEL CALLAO
ANÁLISIS CAME, DIAGNOSTICO  PUERTO DEL CALLAOANÁLISIS CAME, DIAGNOSTICO  PUERTO DEL CALLAO
ANÁLISIS CAME, DIAGNOSTICO PUERTO DEL CALLAOCarlosAlbertoVillafu3
 
Efectos del cambio climatico en huanuco.pptx
Efectos del cambio climatico en huanuco.pptxEfectos del cambio climatico en huanuco.pptx
Efectos del cambio climatico en huanuco.pptxCONSTRUCTORAEINVERSI3
 
EGLA CORP - Honduras Abril 27 , 2024.pptx
EGLA CORP - Honduras Abril 27 , 2024.pptxEGLA CORP - Honduras Abril 27 , 2024.pptx
EGLA CORP - Honduras Abril 27 , 2024.pptxDr. Edwin Hernandez
 
Buenas Practicas de Almacenamiento en droguerias
Buenas Practicas de Almacenamiento en drogueriasBuenas Practicas de Almacenamiento en droguerias
Buenas Practicas de Almacenamiento en drogueriasmaicholfc
 
Plan General de Contabilidad Y PYMES pdf
Plan General de Contabilidad Y PYMES pdfPlan General de Contabilidad Y PYMES pdf
Plan General de Contabilidad Y PYMES pdfdanilojaviersantiago
 
MARKETING SENSORIAL CONTENIDO, KARLA JANETH
MARKETING SENSORIAL CONTENIDO, KARLA JANETHMARKETING SENSORIAL CONTENIDO, KARLA JANETH
MARKETING SENSORIAL CONTENIDO, KARLA JANETHkarlinda198328
 
Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.Gonzalo Morales Esparza
 
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxINTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxRENANRODRIGORAMIREZR
 
Las 10 decisiones estrategicas en administracion de operaciones
Las 10 decisiones estrategicas en administracion de operacionesLas 10 decisiones estrategicas en administracion de operaciones
Las 10 decisiones estrategicas en administracion de operacionesYeilizerAguilera
 
Presentación Final Riesgo de Crédito.pptx
Presentación Final Riesgo de Crédito.pptxPresentación Final Riesgo de Crédito.pptx
Presentación Final Riesgo de Crédito.pptxIvnAndres5
 
MATERIALES Y EQUIPOS PARA UNA ESTACIÓN HIDROPÓNICA NFT soporte.pptx
MATERIALES  Y EQUIPOS PARA UNA ESTACIÓN  HIDROPÓNICA NFT soporte.pptxMATERIALES  Y EQUIPOS PARA UNA ESTACIÓN  HIDROPÓNICA NFT soporte.pptx
MATERIALES Y EQUIPOS PARA UNA ESTACIÓN HIDROPÓNICA NFT soporte.pptxdcmv9220
 
Contabilidad universitaria Septima edición de MCGrawsHill
Contabilidad universitaria Septima edición de MCGrawsHillContabilidad universitaria Septima edición de MCGrawsHill
Contabilidad universitaria Septima edición de MCGrawsHilldanilojaviersantiago
 
MARKETING SENSORIAL -GABRIELA ARDON .pptx
MARKETING SENSORIAL -GABRIELA ARDON .pptxMARKETING SENSORIAL -GABRIELA ARDON .pptx
MARKETING SENSORIAL -GABRIELA ARDON .pptxgabyardon485
 

Último (20)

La Cadena de suministro CocaCola Co.pptx
La Cadena de suministro CocaCola Co.pptxLa Cadena de suministro CocaCola Co.pptx
La Cadena de suministro CocaCola Co.pptx
 
modulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdfmodulo+penal+del+16+al+20+hhggde+enero.pdf
modulo+penal+del+16+al+20+hhggde+enero.pdf
 
ADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdfADMINISTRACION FINANCIERA CAPITULO 4.pdf
ADMINISTRACION FINANCIERA CAPITULO 4.pdf
 
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptxTEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
TEORÍAS DE LA MOTIVACIÓN Recursos Humanos.pptx
 
Maria_diaz.pptx mapa conceptual gerencia industral
Maria_diaz.pptx mapa conceptual   gerencia industralMaria_diaz.pptx mapa conceptual   gerencia industral
Maria_diaz.pptx mapa conceptual gerencia industral
 
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAYPPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
PPT DIAGNOSTICO DAFO Y CAME MEGAPUERTO CHANCAY
 
informacion-finanTFHHETHAETHciera-2022.pdf
informacion-finanTFHHETHAETHciera-2022.pdfinformacion-finanTFHHETHAETHciera-2022.pdf
informacion-finanTFHHETHAETHciera-2022.pdf
 
ANÁLISIS CAME, DIAGNOSTICO PUERTO DEL CALLAO
ANÁLISIS CAME, DIAGNOSTICO  PUERTO DEL CALLAOANÁLISIS CAME, DIAGNOSTICO  PUERTO DEL CALLAO
ANÁLISIS CAME, DIAGNOSTICO PUERTO DEL CALLAO
 
Efectos del cambio climatico en huanuco.pptx
Efectos del cambio climatico en huanuco.pptxEfectos del cambio climatico en huanuco.pptx
Efectos del cambio climatico en huanuco.pptx
 
EGLA CORP - Honduras Abril 27 , 2024.pptx
EGLA CORP - Honduras Abril 27 , 2024.pptxEGLA CORP - Honduras Abril 27 , 2024.pptx
EGLA CORP - Honduras Abril 27 , 2024.pptx
 
Buenas Practicas de Almacenamiento en droguerias
Buenas Practicas de Almacenamiento en drogueriasBuenas Practicas de Almacenamiento en droguerias
Buenas Practicas de Almacenamiento en droguerias
 
Plan General de Contabilidad Y PYMES pdf
Plan General de Contabilidad Y PYMES pdfPlan General de Contabilidad Y PYMES pdf
Plan General de Contabilidad Y PYMES pdf
 
MARKETING SENSORIAL CONTENIDO, KARLA JANETH
MARKETING SENSORIAL CONTENIDO, KARLA JANETHMARKETING SENSORIAL CONTENIDO, KARLA JANETH
MARKETING SENSORIAL CONTENIDO, KARLA JANETH
 
Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.Clase 2 Ecosistema Emprendedor en Chile.
Clase 2 Ecosistema Emprendedor en Chile.
 
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptxINTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
INTERESES Y MULTAS DEL IMPUESTO A LA RENTA POWER POINT.pptx
 
Las 10 decisiones estrategicas en administracion de operaciones
Las 10 decisiones estrategicas en administracion de operacionesLas 10 decisiones estrategicas en administracion de operaciones
Las 10 decisiones estrategicas en administracion de operaciones
 
Presentación Final Riesgo de Crédito.pptx
Presentación Final Riesgo de Crédito.pptxPresentación Final Riesgo de Crédito.pptx
Presentación Final Riesgo de Crédito.pptx
 
MATERIALES Y EQUIPOS PARA UNA ESTACIÓN HIDROPÓNICA NFT soporte.pptx
MATERIALES  Y EQUIPOS PARA UNA ESTACIÓN  HIDROPÓNICA NFT soporte.pptxMATERIALES  Y EQUIPOS PARA UNA ESTACIÓN  HIDROPÓNICA NFT soporte.pptx
MATERIALES Y EQUIPOS PARA UNA ESTACIÓN HIDROPÓNICA NFT soporte.pptx
 
Contabilidad universitaria Septima edición de MCGrawsHill
Contabilidad universitaria Septima edición de MCGrawsHillContabilidad universitaria Septima edición de MCGrawsHill
Contabilidad universitaria Septima edición de MCGrawsHill
 
MARKETING SENSORIAL -GABRIELA ARDON .pptx
MARKETING SENSORIAL -GABRIELA ARDON .pptxMARKETING SENSORIAL -GABRIELA ARDON .pptx
MARKETING SENSORIAL -GABRIELA ARDON .pptx
 

[Inf 140] Estructuras Repetitivas Y Selectivas (6 X Hoja)

  • 1. Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Pontificia Universidad Católica de Valparaíso Tipos de Datos Facultad de Ingeniería El principal objetivo de todo computador es el manejo de información o datos. Escuela de Ingeniería Informática Un dato es la expresión general que describe los elementos con los cuales opera un computador. Existen dos clases de tipos de datos: simples (sin estructura) y compuestos (estructurados) Los tipo de datos simples son los siguientes: “Algoritmos: Definiciones, Estructuras de Numéricos (entero, real) Control” Datos Lógicos (booleano) Carácter (char, string) Asignatura Numérico Carácter(es) Lógico INF 140 – Informática I Profesores Pamela Hermosilla Monckton Entero Real Daniel Cabrera Paniagua Profesores Profesores INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Elementos Básicos : Constantes, Variables, Variable Identificadores y Expresiones Elemento o partida de datos cuyo valor puede cambiar durante el desarrollo del algoritmo (o ejecución del programa). Constante Posición de memoria, referenciada por un identificador, donde se almacena un dato que puede cambiar durante el algoritmo (o ejecución del programa). Elemento o partida de datos cuyo valor no cambia durante el desarrollo del algoritmo (o ejecución del programa). Pueden ser de tipo: entero, real, carácter o lógica. Posición de memoria, referenciada por un identificador, que almacena un dato que permanece sin cambios durante el algoritmo (o ejecución del Una variable posee los siguientes atributos : programa). 1. Identificador (asignado por el programador). Pueden ser de tipo: entera, real, caracter o lógica. 2. Tipo (describe su uso). Una variable definida de un cierto tipo sólo puede tomar valores de ese tipo. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Identificador Expresiones Nombre que posee una variable o constante (ALGORITMO). Combinaciones de constantes, variables, símbolos de operación, paréntesis y funciones especiales. • Compuesto por un conjunto de caracteres alfanuméricos (El primero es usualmente una letra). Una expresión consta de: operadores y operandos. • Deben ser significativos y tener relación con el objeto que representan. Cada expresión toma un valor que se determina, de acuerdo a : • No se deben utilizar como identificadores palabras reservadas del lenguaje • Los valores que posean las variables y constantes implicadas. de programación. • La ejecución de las operaciones involucradas. • Ejemplo : Según el tipo de objetos que se manipulan las expresiones se clasifican en : • Nombre_Alumno, X, Edad, Sueldo_Bruto……. • Aritméticas • Lógicas Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 2. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Tabla de operadores Expresiones Aritméticas Operador Significado Tipo Operando Tipo Resultado • Análogas a las fórmulas matemáticas : + Suma Entero/Real Entero/Real – Las variables y constantes (operandos) que las componen son de tipo numérico (entero o real) - Resta/Cambio Entero/Real Entero/Real Signo – Sus operadores son aritméticos : suma, resta, multiplicación, * Multiplicación Entero/Real Entero/Real división, división entera y resto. • Ejemplo : / División Real Entero/Real Real 5+3=8 Resultado DIV División Entera Entero Entero Operando Operador MOD Módulo o Resto Entero Entero Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Orden de Prioridad en Operadores Aritméticos Reglas de Prioridad • Las operaciones aritméticas dentro de una expresión suelen seguir el • Permiten determinar el orden en que se deben ejecutar las siguiente orden de prioridad : operaciones, cuando una expresión posee más de un operador. 1. Cambio de Signo ( - ) Orden de Prioridad 2. Multiplicación , División, División Entera y Resto (*, /, DIV, MOD) 3. Suma y Resta (+,-) • Las operaciones entre paréntesis se evalúan primero. • OBS : Si coinciden varios operadores de igual prioridad en una expresión o subexpresión encerrada entre paréntesis, el orden de • Si existen paréntesis anidados, las expresiones más internas tienen evaluación es de izquierda a derecha. prioridad. • Ejemplo : ((8-7+3) + (4*6/2)) • Ejemplo : ((5+3)+(4+8)/2)+1 Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Expresiones Lógicas Operadores Booleanos • Un segundo tipo de expresiones son las de tipo lógica, que al ser Operador Expresión Lógica Significado evaluadas su resultado puede ser verdadero o falso. ¬ ¬p Negación de p • Las expresiones lógicas se forman usando : ∧ P∧Q Conjunción de P y Q • Operadores booleanos • Operadores relacionales o de comparación P∨Q ∨ Disyunción de P y Q Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 3. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Tablas de Verdad Operadores Relacionales P∧ Q P Q • Permiten comparar valores de tipo numérico, carácter o lógico, y se ¬P P usan para expresar condiciones dentro de los algoritmos. V V V V F V F F • Los operadores relacionales son : >, <, =, >=, <=, <> F V F F V F F F • SINTAXIS : <expresión 1> operador relacional <expresión 2> P∨ Q P Q ⇓ V V V V F V RESULTADO : Verdadero o Falso. F V V F F F Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Aplicación de los Operadores Relacionales Aplicación de los Operadores Relacionales 2. Aplicación en valores de tipo carácter. • Se aplican sobre datos de tipo: entero, real, lógico y carácter. • Requiere de una secuencia de ordenación de los caracteres: 1. Aplicación en valores numéricos. (CONOCIDA) – Alfabética (mayúsculas y minúsculas). EJEMPLO : Si A = 3 y B = 2 – Creciente en caracteres numéricos. • A > B (VERDADERO) – Pero si se consideran caracteres especiales, se recurre a un código • A + B = 5 (VERDADERA) normalizado, por ejemplo, el código ASCII. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Tabla ASCII (Código estándar americano para el intercambio – Aunque NO todos los computadores siguen el código normalizado de información ). en su juego completo de caracteres, sí son prácticamente estándar, los códigos de los caracteres alfanuméricos más usuales: • Caracteres especiales : # , % , $ , ( , ) , + , - , / etc... , exigen consultar el código de ordenación. • Caracteres Numéricos : se encuentran en su orden natural. (0...9) • Caracteres Alfabéticos : – Mayúsculas A...Z (orden alfabético). – Minúsculas a..z siguen el criterio anterior. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 4. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Aplicación de los Operadores Relacionales • OBS : En las expresiones lógicas se pueden mezclar operadores relacionales y lógicos. 3. Aplicación en valores de tipo lógico. Ejemplo : ( 1 > 5 ) ∧ ( 8 <> 9 ) • Constante FALSO es menor que la constante VERDADERA. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Prioridad de Operadores en Expresiones Lógicas Ejemplos ¬ 4 > 6 ERROR!!!!!! Prioridad 1 : ¬ – • Prioridad 2 : ∧ – ¬ ( 4 > 6 ) = VERDADERO Prioridad 3 : ∨ – • – MENOR PRIORIDAD QUE TODOS LOS OPERADORES : • Si X = 7 , Z = 4 Relacionales ( <, >, <=……) (1 < X) ∧ (X < Z + 7) CUAL ES EL VALOR DE ESTA EXPRESIÓN???? – TAMBIEN SE USAN PARÉNTESIS (MAYOR PRIORIDAD QUE TODOS) Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Resolución de Problemas Análisis del Problema • AYUDA a tener una compresión de la naturaleza del problema. • 3 fases básicas: PROBLEMA bien definido → solución satisfactoria. – – Análisis del Problema – Especificaciones de entrada y salida descritas con detalle. – Diseño del Algoritmo SON REQUISITOS fundamentales para una solución eficaz. – Codificación del Algoritmo en un LP Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 5. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Análisis del Problema EJEMPLO : Análisis del Problema • Calcular promedio de 3 Notas • El análisis del problema requiere de una primera lectura, para tener una idea general. Entrada : 3 Notas Proceso: Suma aritmética de las Notas dividido por el Total de Notas • Una segunda lectura nos permitirá responder las siguientes preguntas : Salida : Promedio de Notas – ¿ Qué datos se necesitan para resolver el problema ? ENTRADA – ¿ Qué información debe proporcionar la resolución del problema ? SALIDA Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Diseño del Algoritmo => Pseudocódigo Pseudocódigo • Computador sólo resuelve problemas cuando : se le indican los pasos • Lenguaje de especificación formal de algoritmos que permite representar sucesivos que debe ejecutar (ALGORITMO). las estructuras de control de la programación estructurada. • Técnicas de Diseño : • No puede ser ejecutado por un computador (debe ser traducido a un LP). – Diseño Descendente (DIVIDE y VENCERAS) • Compuesto por palabras reservadas, similares a las de sus homónimos – Refinamiento Sucesivo (Primeros pasos INCOMPLETOS- en los lenguajes de programación que permiten representar acciones. GENERALES) • Su escritura exige el uso de indentación. • ALGORITMO debe ser representado a través de alguna técnica que permita independizarlo del lenguaje de programación que se seleccionará para codificarlo. • La técnica de representación puede ser : – Descriptiva (PSEUDOLENGUAJE) – Gráfica (Diagrama de Flujo, Diagrama de Nassi-Schneiderman) Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática VENTAJAS Pseudocódigo ¿Cómo escribir un ALGORITMO en pseudolenguaje? • La estructura de un algoritmo en pseudocódigo posee dos PARTES : • Programador se CONCENTRA en la LÓGICA y en las ESTRUCTURAS DE CONTROL, y no tanto en las REGLAS SINTÁCTICAS propias de los LP. – Cabecera • Fácil de modificar. – Bloque (Cuerpo) del Algoritmo • Fácil de traducir a LP. • Originalmente en Inglés , EN LA ACTUALIDAD en ESPAÑOL Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 6. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Cabecera Cuerpo del Algoritmo • TODO algoritmo debe comenzar con una cabecera. • Es el resto del algoritmo y esta compuesto a su vez de 2 bloques : • Acción simple que comienza con la palabra reservada ALGORITMO, seguida de un identificador. – Bloque de Declaraciones : contiene la declaración de las constantes y variables que serán utilizadas en el algoritmo. SINTAXIS : ALGORITMO <identificador> Bloque de Pasos (Acciones o Instrucciones) : contiene las acciones – que nos permitirán resolver el problema, para el cual fue diseñado EJEMPLO : el algoritmo, cada acción se escribirá en una línea independiente. ALGORITMO Promedio_de_Notas Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Bloque de Declaraciones : Declaración de Constantes Bloque de Declaraciones : Declaración de Variables • Esta sección comienza con la palabra reservada CONST (abreviatura • Esta sección comienza con la palabra reservada VAR (abreviatura de de Constante) y su sintaxis es : Variable) y su sintaxis es : Var <tipo 1> : <lista de variables (separadas por ,) > <identificador_constante_1> = <valor_1> CONST … <identificador_constante_2> = <valor_2> Valor determina Tipo <tipo j> : <lista de variables (separadas por ,) > : : Ejemplo : VAR real : x,y,z <identificador_constante_N> = <valor_N> entero : a,b,c caracter : letra Ejemplo : CONST PI=3.141516 IVA=0.19 Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Bloque de Acciones : Tipos de Instrucciones Tipo de Instrucciones : Instrucciones de Inicio-Fin • La primera instrucción del bloque de acciones del algoritmo será • Repertorio de instrucciones disponibles en cada lenguaje de INICIO y la última instrucción será FIN. programación es variable. • PERO …… Existen instrucciones básicas, comunes y soportadas por INICIO todos los lenguajes y que pueden ser utilizadas de forma general en <acción 1> la escritura de un algoritmo : <acción 2> <acción 3> – Instrucciones de Inicio-Fin. : – Instrucción de Asignación. <acción n> – Instrucción de Lectura. FIN – Instrucción de Escritura. – Instrucciones de Bifurcación. Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 7. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Tipo de Instrucciones : Instrucción de Asignación Tipo de Instrucciones : Instrucción de Asignación • Ejemplos : <Valor> puede ser : una • Permite almacenar un valor en una variable. constante, una variable A←1 o el resultado de la Operador de asignación : ← • evaluación de una B←A+3 expresión. C ← B/2 < Identificador de Variable> ← <Valor> Sintaxis : Vocal ← ‘A’ • La instrucción de asignación se ejecuta en dos pasos : • INICIALIZACIÓN DE UNA VARIABLE : Variables al ser declaradas tienen un valor indeterminado • INCOMPATIBILIDAD DE TIPOS 1. Se calcula el valor al lado derecho del operador de asignación. Var entero : A 2. El valor calculado se almacena en la variable cuyo nombre aparece Inicio a la izquierda del operador de asignación, sustituyendo el valor que esta tenía anteriormente (instrucción DESTRUCTIVA). A←0 A ← 5.56 Fin Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Tipo de Instrucciones : Instrucción de Lectura Tipo de Instrucciones : Instrucción de Escritura • Instrucción de Lectura o entrada de datos, permite extraer uno o más • Instrucción de salida o escritura de resultados permite enviar resultados valores desde un dispositivo de entrada (teclado, unidades de disco etc...) y hacia dispositivos de salida (pantalla, impresora etc...). almacenarlos en memoria en la(s) variable(s) indicada(s) dentro de la propia instrucción. • Los datos enviados pueden ser constantes, variables, resultados de expresiones, mensajes o una mezcla de ellos separados en dicho caso por • Sintaxis : Leer ( < lista_de_variables > ) comas. ó • Sintaxis : Escribir ( < lista_de_expresiones > ) Leer ( < variable_1 > ) Leer ( < variable_2 > ) • ¿ Cuál será el significado de la siguiente instrucción de escritura ? Leer ( < variable_3 > ) • ¿ Cuál será el significado de la siguiente instrucción de lectura ? Escribir(“HOLA”) Leer(edad, peso) Escribir(“promedio = ”, promedio) Escribir (“ A + B “, A+B) • Si se ingresan los valores 25 – 59.3 • NO SE PUEDEN LEER DATOS DE TIPO Lógico Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Calcular el promedio de 3 notas. Estructuras de control 1. Inicio 2. Leer nota 1 Las estructuras de control son las que permiten conducir el flujo del 3. Leer nota 2 programa, existen dos tipos de estructuras de control las estructuras 3. Leer nota 3 selectivas y las estructuras repetitivas. 4. Asignar a suma_de_notas el resultado de nota1 + nota2 + nota3 5. Asignar a promedio el resultado de suma_de_notas / 3 Estructuras selectivas 6. Escribir resultado Las estructuras selectivas se utilizan para tomar decisiones lógicas, también 7. Fin son llamadas estructuras de decisión o alternativas. Algoritmo Calcular_Promedio Alternativa simple Var real: nota1,nota2,nota3, suma_de_notas, prom Inicio leer (nota1) si <condicion> entonces si (numero MOD 2 = 0) entonces leer (nota2) <accion 1> escribir(“número es par”) leer (nota3) <accion 2> fin_si suma_de_notas nota1 + nota2 + nota3 prom suma_de_notas / 3 <accion n> escribir(“promedio es: “,prom) fin_si Fin Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 8. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Alternativa doble Estructuras selectivas anidadas si <condicion 1> entonces si <condicion> si (numero MOD 2 = 0) si <condicion 2> entonces entonces Las estructuras selectivas si y si-sino entonces <accion 1> escribir(“número es par”) implican la selección de una de dos <accion 1> si_no alternativas. Es posible utilizar la instrucción .. .. <accion n> escribir(“número es impar”) <accion n> si_no fin_si si para diseñar estructuras de selección sino <accion p> que contengan más de dos alternativas. <accion p> .. .. <accion z> <accion s> fin_si fin_si si <condicion 1> entonces sino si <condicion 2> entonces Alternativa multiple si <condicion 3> <accion 1> entonces <accion 2> segun_sea <expresion_E> hacer segun_sea dia MOD 7 hacer <accion f> e1: <accion 1> 1: escribir(“el día es Lunes”) .. .. e2: <accion 2> 2: escribir(“el día es Martes”) <accion n> <accion k> e3: <accion 3> 3: escribir(“el día es Miércoles”) fin_si sino 4: escribir(“el día es Jueves”) <accion i> fin_si en: <accion n> 5: escribir(“el día es Viernes”) .. .. fin_si 6: escribir(“el día es Sábado”) <accion z> 0: escribir(“el día es Domingo”) fin_si fin_si fin_si Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Ejercicio Algoritmo determinar_Aprobacion_Reprobacion Var real: nota1,nota2,nota3, suma_de_notas, prom Inicio • Desarrollar un algoritmo que calcule el leer (nota1) leer (nota2) promedio simple de 3 notas, y que en leer (nota3) suma_de_notas nota1 + nota2 + nota3 base al resultado obtenido, muestre la prom suma_de_notas / 3 escribir (“promedio es: “,prom) situación final (aprobado-reprobado). si (prom >= 40 ) entonces escribir (“Aprobado !!! … Felicitaciones !!!”) sino escribir (“Ánimo, hay otra oportunidad !!! ”) fin_si Fin Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Estructuras repetitivas Desde Las estructuras repetitivas se utilizan para repetir una o varias acciones un número determinado de veces. Mientras desde v vi hasta vf mientras (i< 10) hacer mientras <condicion> [ incremento/decremento inc ] escribir(“el número es: ”, i) hacer hacer <accion 1> i i+1 <accion 1> <accion 2> fin_mientras <accion 2> <accion n> <accion n> fin_mientras fin_desde Repetir Desde i 1 hasta 10 hacer repetir repetir <accion 1> escribir(“el número es:”, i) escribir(“el número es:”, i) <accion 2> i i+1 hasta_que (i = 10) fin_desde <accion n> hasta_que <condicion> Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 9. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Utilizando la estructura repetitiva Ejercicio “Mientras” • Desarrollar un algoritmo que sume n Algoritmo sumar_numeros Var real: nuevo_numero, suma números ingresados por un usuario, y caracter: continuar Inicio luego muestre la suma de ellos. continuar ‘s’ suma 0 mientras (continuar = ‘s’) hacer escribir (“Ingrese un número”) leer (nuevo_numero) suma suma + nuevo_numero escribir (“¿Desea continuar ingresando otro número? s = si ; n = no”) leer (continuar) fin_mientras escribir(“La suma total es: “,suma) fin Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática ¿Y si utilizamos la estructura Ejercicio Repetir? • Desarrolle un algoritmo que calcule el Algoritmo sumar_numeros Var real: nuevo_numero, suma factorial de un número X. caracter: continuar Inicio continuar ‘s’ suma 0 repetir escribir (“Ingrese un número”) leer (nuevo_numero) suma suma + nuevo_numero escribir (“¿Desea continuar ingresando otro número? s = si ; n = no”) leer (continuar) hasta_que (continuar = ‘n’) escribir(“La suma total es: “,suma) Fin Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Análisis (1) Análisis (2) ¿Qué es el factorial de un número? ¿Cuáles son las entradas? Resp: Producto que resulta de multiplicar un número Resp: un número entero positivo. entero positivo por todos los números inferiores a él, llegando hasta el número 1. ¿Cuáles son las salidas? Ejemplos: 3! = 1 * 2 * 3 = 6 Resp: un número entero positivo, producto de 4! = 1 * 2 * 3 * 4 = 24 multiplicaciones sucesivas. 5! = 1 * 2 * 3 * 4 * 5 = 120 Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 10. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Análisis (3) Algoritmo calcular_factorial ¿Cuál es el proceso? Var entero: numero, contador, factorial Inicio factorial 1 escribir (“Ingrese número para calcular factorial”) 4! = 1 * 2 * 3 * 4 = 24 leer (numero) desde contador factorial + 1 hasta numero factorial factorial * contador fin_desde escribir (“ Factorial es: ”,factorial) 2* Fin 6* 24 Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Estructuras repetitivas anidadas Estructuras repetitivas anidadas (continuación) Así como las instrucciones selectivas (de condición) se pueden anidar, de mientras <condicion1> hacer igual forma se pueden anidar estructuras de selección, es posible insertar un repetir bucle dentro de otro <accion 1> <accion 2> mientras <condicion1> hacer mientras <condicion2> hacer desde v vi hasta vf hacer <accion n> <accion 1> desde w wj hasta wg hacer hasta_que <condicion2> <accion 2> <accion 1> fin_mientras repetir <accion 2> <accion n> mientras <condicion-i> hacer fin_mientras <accion 1> <accion n> fin_mientras <accion 2> fin_desde repetir fin_desde <accion n> repetir fin_mientras <accion 1> hasta_que <condicion-j> <accion 2> <accion n> hasta_que <condicion2> hasta_que <condicion1> Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Algoritmo calcular_promedios Var entero: nota, suma_de_notas, contador_notas, prom Ejercicio carácter: nombre_asignatura, continuar, nueva_nota Inicio continuar ‘s’ mientras (continuar = ‘s’) hacer escribir (“Ingrese nombre de la asignatura”) • Desarrolle un algoritmo que permita leer (nombre_asignatura) suma_de_notas 0 calcular el promedio de n cantidad de contador_notas 0 repetir notas, para m cantidad de asignaturas. escribir (“Ingrese nota:”) leer (nota) suma_de_notas suma_de_notas + nota contador_notas contador_notas + 1 escribir (“¿Desea ingresar una nueva nota? s = si ; n = no”) leer (nueva_nota) hasta_que (nueva_nota = ‘n’) prom suma_de_notas / contador_notas escribir (“Asignatura: ”, nombre_asignatura) escribir (“Promedio: “,prom) escribir (“¿Desea ingresar una nueva asignatura? s = si ; n = no”?”) leer (continuar) fin_mientras fin Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP
  • 11. Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Estructuras de Control: Diagrama de Flujo Diagramas de Flujo Iteración Secuencia Selección Decisión Terminal Implica elección Inicio o final de entre secuencias un algoritmo alternativas. Entrada/Salida Proceso Lectura de valores y Proceso diferente escritura de de los procesos E/S mensajes y Decisiones Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Escuela de Ingeniería Informática Estructuras de Control: Ejercicio Diagramas de Nassi - Schneiderman • Desarrollar un diagrama de flujo que permita calcular el promedio simple de 3 notas, y que en base al resultado obtenido, muestre la situación final (aprobado-reprobado). Profesores Profesores INF 140 – Informática I INF 140 – Informática I PHM/DCP PHM/DCP Pontificia Universidad Católica de Valparaíso Escuela de Ingeniería Informática Inicio Leer NOTA1, NOTA2, NOTA3 SUMA_NOTAS NOTA1 + NOTA2 + NOTA3 PROM SUMA_NOTAS / 3 escribir PROM PROM >= 40 escribir escribir “ ánimo, hay “Aprobado !” otra oportunidad ! ” Fin Profesores INF 140 – Informática I PHM/DCP