SlideShare a Scribd company logo
1 of 56
METODOLOGIA Y TECNOLOGIA DE LA
        PROGRAMACION I
ESCUELA:   Ciencias de la Computación

NOMBRES    Ing. Danilo Jaramillo H

PERíODO:   Abril – Agosto 2009




                                        1
INDICACIONES

 Ingreso a campus y contestar los foros,
  revisar ejercicios.
 Importancia de realizar las evaluaciones a
  distancia
    Foros (EVA)               2 puntos
    Parte objetiva            2 puntos
    Parte de ensayo           2 puntos
 Evaluación Presencial
    parte objetiva 8 puntos
    parte ensayo 6 puntos                   2
INDICACIONES

   Uso de sangrías.
   Poner encabezados
   Resolver en pseudo-código
   Entender que es lo que se pide en los
    ejercicios de la evaluación presencial.




                                              3
QUE HAREMOS HOY

 Mayor claridad para el desarrollo de
  algoritmos
 Desarrollo de programas mas complejos
 Nuevos enfoques … Programación
  orientada a objetos




                                      4
PLAN DE CONTENIDOS
                                 SEGUNDO BIMESTRE

Capítulo 6. Estructuras de datos: Arreglos               163 - 192   12

Capítulo 7. Utilización de los Métodos                   203 - 236   10

Capítulo 8. Programación Orientada a objetos aplicando   241 - 254    8
diagramas de clases


Capítulo 9. Programación Orientada a objetos aplicando   257- 342    10
secuenciación, selección, repetición


                                                                     40


                                                                          5
ESTRUCTURAS DE DATOS


 Contenidos
   Arreglos de una
    dimensión (vector)       2       3   4   5       6       7
   Arreglos de dos
    dimensiones o matrices       2   3   4   5   6       7
   Arreglos
    multidimensionales           8   9   3   5   7       4
                                 6   7   1   1   4       3

                                                             6
ESTRUCTURAS DE DATOS

 Arreglos
   Colección de datos del mismo tipo
   Un nombre único
   Indicador de posición que diferencia a cada
    elemento
  MatRes                                      Mat
                                      2   9    4    15   6   27
    2    13     4    45     6    7
                                      1   2    3     4   5       6

    8    9     53    5     37    4

   26    7     10    11     4    3
                                                             7
    31    32    33    34    35   36
ESTRUCTURAS DE DATOS


 Arreglos unidimensionales o vectores
                       Mat
               2   9     4   15   6   27
               1   2     3    4   5    6


 Mat[1] = 2
 Mat[2] = 9
 Mat[3] = 14
 Mat[4] = 15
 Mat[5] = 6
 Mat[6] = 25

                                           8
ESTRUCTURAS DE DATOS


Declar
    nombrevariable : Arreglo[tamaño] tipo de dato


Algoritmo matrices
    Clase matriz
        1. Método Principal
            a. declaraciones
                 Variables
                     Mat: Arreglo [30] Entero




                                                    9
ESTRUCTURAS DE DATOS

TIPOS

Algoritmo matrices
    Clase matriz
        1. Método Principal
            a. declaraciones
                 Tipos
                     Vector : Arreglo [30] Entero
                 Variables
                     A, B. C : Vector




                                                    10
Algoritmo matrices
    Clase matriz
         1. Método Principal
             a. declaraciones
                  Variables
                        Mat: Arreglo [30] Entero
             b. imprimir “ingrese numero de elementos”
             c. leer n_e
             d. for (i = 1; i <= n_e; i++)
                  1. leer Mat[i]
             e. endfor
             f. for (i = 1; i <= n_e; i++)
                  1. if (mat[i] mod 2) = 0 then
                        imprimir “el numero”,mat[i], es par
                  2. endif
             g. endfor
             h. for (i = 1; i <= n_e; i++)
                  imprimir Mat[i]
              e. endfor
              h. fin método principal
                                                              11
    fin clase matriz
ESTRUCTURAS DE DATOS


 Arreglos multi-dimensionales
  MatRes


    2   13     4   45     6    7


    8    9    53    5    37    4    MatRes[1][1] =   2
                                    MatRes[2][4] =   5
   26    7   100   11     4    3    MatRes[3][2] =   7
   31   32    33    34    35   36
                                    MatRes[1][6] =   7
                                    MatRes[2][1] =   8
                                    MatRes[3][5] =   4
                                                         12
ESTRUCTURAS DE DATOS


Declaracion
    nombrevariable : Arreglo[tamaño_f][tamaño_c] tipo de dato


Algoritmo matrices
    Clase matriz
        1. Método Principal
            a. declaraciones
                 Variables
                     Mat: Arreglo [30][10] Entero




                                                                13
ESTRUCTURAS DE DATOS

TIPOS

Algoritmo matrices
    Clase matriz
        1. Método Principal
            a. declaraciones
                 Constantes
                     L = 30
                 Tipos
                     Matrices : Arreglo [L][L] Entero
                 Variables
                     A, B. C : Matrices


                                                        14
Algoritmo matrices
    Clase matriz
        1. Método Principal
             a. declaraciones
                  Variables
                       Mat: Arreglo [30][10] Entero
             b. imprimir “ingrese numero de filas y columnas”
             c. leer n_f,n_c
             d. for (i=1; i<=n_f; i++)
                  1. for (j=1:j<=n_c;j++)
                       i. leer Mat[i][j]
                  2. endfor
             e. endfor
             f. for (i=1; i<=n_f; i++)
                  1. for (j=1:j<=n_c;j++)
                       if (Mat[i][j] mod 2 = 0) then
                            imprimir “numero es par”
                       endif
                  2. endfor
             g. endfor                                          15
        2. fin método principal
EJERCICIOS

 Ordenar un vector
 Buscar elementos repetidos en un
  vector
 Ordenar una matriz de dos dimensiones
 Buscar elementos repetidos en una
  matriz dos dimensiones
 Multiplica dos matrices


                                      16
Método Principal
    a. Declaraciones
           Mat[10] : Arreglo[10] entero
    b. imprimir “ingrese numero de elementos”
    c. leer n_e
    d. for(i=1; i<= n_e; i++)
           1. leer Mat[i]
    e. endfor
     f. for(i=1; i<= n_e; i++)
            1. for(j=1; j<= n_e; j++)
                      if (mat[i] < mat[j]) then
                          aux  mat[i]
                          mat[i]  mat [j]
                          mat[j]  aux
                      endif
            2.endfor
     g. endfor
     h. for(i=1; i<= n_e; i++)
           1. imprimir Mat[i]
     i. endfor
     j. fin método principal
                                                  17
METODOS

Conceptos Generales
  Propósito .como utilizar mas de un método
  dentro de una clase. Comprender el trabajo
  con variables de clase, variables locales y
  paso de parámetros entre métodos.




                                         18
METODOS

 Conceptos Generales
   Técnica divide y vencerás
   Ejecutar una tarea especifica
   Cada método es independientes
   método principal  sub-rutinas (función,
    rutina, sub-algoritmo)
   Cuando se invoca a un método las
    instrucciones que están definidas se
    ejecutan y luego vuelven al método
    donde fue invocado.
                                          19
B




    B
A                   D


                F
        A



            D

                        20
matriculación


Sistema de
                                                  Ingresar Ficha
Gestión
              matriculación                       del estudiante
Académica

         Registro de
         Notas y
         Asistencia

                                              Verificar
                                              cédula
                Registro de
                Notas y       Ingresar
                Asistencia    Notas
                                                          21
Metodo principal     Metodo xxxx

                                       Metodo Principal
 Llamada método


                                       Llamada método


                      Método yyyy

  Llamada método
                   Llamada al método    sEjemeemp1
                                        Llamada método




                      Método zzzz


  Llamada método




                                                         22
Métodos
Algoritmo sumar
    Clase suma

       1. Método Principal
            a. imprimir “la suma es”, suma()
       2. fin método principal

        3. Método suma: entero
   a. Declaraciones
                variables
                   Suma, x , y: entero
   b. leer x, y
   c. Suma = x + y
   d. Return Suma
            4. Fin Método suma

   Fin clase suma
   fin                                         23
Métodos

 Conceptos
   Métodos que no retornan valor
   Métodos que retornar valor
   Variables de clase y locales
   Parámetros por valor y por referencia



                                            24
Métodos


 Métodos que no retornan valor
   Pueden o no devolver valores
   Ejecuta un proceso especifico
   Forma de Invocar a estos métodos
     NombredelMetodo()



                                       25
Métodos

 Métodos que no retornan valor
   Definición

      Método nombre (parámetros)
        a. Declaraciones
           Variables
           Constantes
        b. Acción
        c. Acción
        d. Acción
        e. Fin Método
                                   26
Métodos

 Métodos que retornan valor
   Devuelve un valor
   Forma de Invocar a un Metodo No
    Retorna Valor
      Z  nombremetodo()
      Si (nombremetodo() == ?)
      Imprimir nombremetodo
      Parte de una expresión
                                      27
Métodos

 Metodos que retornan Valor
   Definición
      Método nombre (parámetros): tipo de dato
        a. Declaraciones
           Variables
           Constantes
        b. Acción
        c. Acción
        d. return valor
        e. Fin Método
                                                 28
Métodos

 Variables: locales y clase
 Locales
    Solo tiene valides dentro del método
     donde son declaradas
 De clase
    Se las puede utilizad en cualquier parte
     de la clase

                                            29
Métodos
               Algoritmo sumar
                   Clase suma
Variables               1. declaraciones
                             variables
de clase                          y : entero
                        2. Método Principal
                             a. Leer y
                             b. imprimir “la suma es”, suma()
                        3. fin método principal
                        4. Método suma: entero
                   a.Declaraciones
Suma = x + y                     variables
                                     Suma, x: entero
                   •x = 5
                   •Suma = x + y
                   •Return Suma
                             5. Fin Método suma
                   Fin clase suma
                   fin                                          30
Métodos
             Algoritmo sumar
                 Clase suma
                      1. Método Principal
                          a. declaraciones
                                 variables
                                    y : entero
                          b. Leer y
Variables                 c. imprimir “la suma es”, suma()
                          d. imprimir x
locales                   e. fin método principal
                      4. Metodo suma: entero
                 a. Declaraciones
                              variables
                                 Suma, x entero
                 •x=5
                 • Suma = x + y
                 • Return Suma
                              e. Fin Método suma
                 Fin clase suma                              31 31
                 fin
Métodos
 Parámetros por valor y por referencia.. Enlazar
  variables entre métodos
 Por valor
   Si un parámetro es modificado su contenido
    dentro del subprograma, al terminar el mismo
    mantiene el valor
 Por referencia
    Si un parámetro es modificado su contenido
     dentro del subprograma, al terminar el mismo
     mantendrá el valor con el que se modificó.

                                                    32
Métodos

Algoritmo Sumatoria                      PARAMETROS POR VALOR
  Clase Suma
    1.Metodo principal
      a. declaraciones             ………….
          S : entero               2. método suma (val s: entero) : entero
      b. S = 0                         a. Leer numero1
      c. imprimir suma(s)              b. Leer numero2
      d. imprimir s                    c. s = numero1 + numero2
       e. Fin método principal         d. return S
   …….                                 e. Fin método suma
  Fin clase suma
fin
         ¿Qué valor se presenta en la              numero1  5
         llamada a la función?                     numero2  8
                                                                       33
         ¿Cuál es el valor de S ?
Métodos

Algoritmo Sumatoria                PARAMETROS POR REFERENCIA
  Clase Suma
    1.Metodo principal
      a. declaraciones             ………….
          S : entero               2. método suma (ref s: entero) : entero
      b. S = 0                         a. Leer numero1
      c. imprimir suma(s)              b. Leer numero2
      d. imprimir s                    c. s = numero1 + numero2
       e. Fin método principal         d. return S
   …….                                 e. Fin método suma
  Fin clase suma
fin

   ¿Qué valor se presenta en la                    numero1  5
   llamada a la función?                           numero2  8
                                                                       34
   ¿Cuál es el valor de S ?
Ejercicios
                               Métodos

Algoritmo Factorial
                                     ………………….
  Clase factorial
                                     2. método factorial (val s: entero) : entero
   1. Metodo principal
                                         a. declaraciones
       a. declaraciones
                                              f : entero
           res, numero : entero
       b. leer numero                    b. f = 1
       c. res = factorial (numero)       c. for (i = 1; i<= numero; i++)
       d. imprimir res                        f=f*i
       e. Fin metodo principal           d. endfor
……………                                    e. return f
  Fin clase suma                         f. Fin metodo factorial
fin



                                                                           35
Ejercicios
                                Métodos


Algoritmo Potencia
  Clase Potencia                    …………….
   1. Método principal              2. método potencia (entero bas,
      a. declaraciones                          entero exp) : entero
          bas, exp, res: entero         a. declaraciones
      b. leer bas                            p : entero
      c. leer exp                       b. p = 1
      d. res = potencia (bas,exp)       c. for (i=1; i<=exp; i++)
      e. imprimir res                        p  p * bas
 Fin metodo principal                   d. endfor
……………                                   f. return p
Fin clase suma                          g. fin método potencia
fin

                                                                       36
Algoritmo transformacion
                         Clase transforma
                            1. Metodo principal
                              a. leer num
                              b. bin = binario(num)
                              c. oct = octal(num)
                              d. imprimir “numero en binario es”, bin
                              e. imprimir “numero en octal es”, oct
                               f. fin metodo principal
                       fin
2. método binario (val num:entero) entero 3. método octal (val num: entero) entero
    a. j = 1                                       a. j = 1
    b. res = 0                                     b. res = 0
    c. while (num > 0) do                          c. while (num > 0) do
         1. d = residuo(num/2)                          1. d = residuo(num/8)
         2. res = res + (d*j)                           2. res = res + (d*j)
         3. num = num / 2                               3. num = num / 8
         4. j = j*10                                    4. j = j*10
    d. endwhile                                    d. endwhile
    e. return res                                  e. return res
                                                                              37
    f. Fin metodo binario                          f. Fin metodo octal
Algoritmo transformación
   Clase transforma
      1. Método principal
          a. leer num
          b. bin  transformar(num,2)
          c. oct  transformar(num,8)
          d. presentar “numero en binario es”, bin
          e. presentar “numero en octal es”, oct
          f. Fin Método Principal
 fin
2. Método transformar (num: entero, base:entero): entero
    a. j = 1
    b. res = 0
    c. while (num > 0) do
         1. d = residuo(num/base)
         2. res = res + (d*j)
         3. num = num / base
         4. j = j*10
    d. endwhile
    e. return res
                                                           38
    f. Fin Método Transformar
Algortimo matrices
     Clase matriz                                                 ……………………
          1.   Método Principal                                   2. Método primo(entero num) boolean
               a. declaraciones                                         a. declaraciones
                      Variables                                                variables
                            Mat: Arreglo [30][10] Entero                             d, lim : real
               b. imprimir “ingrese numero de filas y columnas”                      p : boolean
               c. leer n_f,n_c                                          b. d = 2
               d. for (i=1; i<=n_f; i++)                                c. lim = num / 2
                      1. for (j  1 hasta n_c                           d. p  true
                            i. leer Mat[i,j]                            e. while (d < num)
                      2. endfor                                              1. if(num modd) = 0
               e. endfor                                                         p = falso
               f. for (i=1; i<=n_f; i++)                                         d = lim
                      1. for (j  1 hasta n_c                                2. Endif
                            if primo(Mat[i,j])                               3. d  d + 1
                                  imprimir “numero es primo”            f. enddo
                            endif                                       g. return p
                      2. endfor                                         h. Fin método primo
               g. endfor                                          Fin clase
                h. fin método principal                           fin
………..

                                                                                           39
METODOS - resumen

 Fácil comprensión del problema
 Fácil comprensión de errores, pues si
  existe alguno solo se trabajara en el
  modulo donde este se presente
 Reutilización de código, para procesos
  similares se pueden utilizar
  procedimientos que ya están realizados

                                           40
PROGRAMACIÓN ORIENTADA A
           OBJETOS

 Contenidos
   Estudiar los conceptos básicos de la
    programación orientada a objetos.
   Objetos.
   Clases.
   métodos.
   encapsulamiento.
                                           41
PROGRAMACIÓN ORIENTADA A
            OBJETOS
 Innovación en los lenguajes de programación
 Es mas estructurada que las que se han estudiado
 Mas modular y abstracta que lo que se ha hecho con
  respecto a abstracción y ocultamiento
 La POO, está formada por una colección de objetos
  interaccionando conjuntamente para representar y
  solucionar un problema



                                                   42
PROGRAMACIÓN ORIENTADA A
             OBJETOS
 Objetos
   Datos .. Atributos .. descripción
   Métodos .. Comportamiento … manipulación de los
    datos

                           Objeto
                           Dato1
                           Dato2
                           dato3

                           Metodo1()
                           Metodo2()
                           Metodo3()              43
PROGRAMACIÓN ORIENTADA A
          OBJETOS
 Clase
   Representación abstracta que describen un
    conjunto de objetos
   Representa un {} de objetos que tienen los
    mismos métodos y los mismos datos
   Plantilla o molde para crear todos los objetos
                                 Empleado

                                 Nombre
                                 apellidos
                                 Leernombre()
                                                     44
                                 Leerapellido()
PROGRAMACIÓN ORIENTADA A
           OBJETOS
 Métodos y encapsulación
   Acciones que se implementan el comportamiento
    de un objeto, manipular los datos
   Encapsulación colocar juntos los datos y los
    métodos dentro de un objeto
   El programador debe pensar en el código y los
    datos juntos durante el diseño del programa
   No hay vacio entre datos y métodos


                                                45
 Modificadores de acceso
   Visibilidad que tendran los datos o los
    metodos, desde que parte seran visibles
    para ser utilizados
     -privado     (datos,metodos)
     #protegido    (datos,metodos)
     +publico      (datos,metodos)
     _estatico     (datos,metodos)
     *abstracto    (metodos)
                                              46
Instanciación
                   Empleado

                   Nombre
                   apellidos
                   Leernombre()
                   Leerapellido()



 ObjetoEmpleado                     ObjetoEmpleado
Nombre: Juan                    Nombre: Juan
Apellidos: perez                Apellidos: perez

 Leernombre()                       Leernombre()
 Leerapellido()                     Leerapellido()   47
ejercicio
 Se desea calcular el sueldo de un empleado, teniendo
  su nombre, apellido, horas trabajadas, costo por hora
  de 5 dólares y bajo las siguientes condiciones:
    Horas trabajadas <=40 no tiene bonificacion
    Horas trabajadas <=50, 20% de bonificacion
    Horas trabajadas <=60, 30% de bonificacion
    Horas trabajadas >=60, 40%
    Nadie puede ganar menos de 100 y mas de 400
     dólares



                                                          48
ObjetoEmpleado           ObjetoEmpleado           ObjetoEmpleado

Nombre: Juan             Nombre: danilo           Nombre: Juan
Apellidos: perez         Apellidos: jaramillo     Apellidos: perez
Horastrab: 30            Horastrab: 10            Horastrab: 40
Sueldo: 150              Sueldo: (50) = 100       Sueldo: 200

 establecerombre()        establecerombre()        establecerombre()
 establecerapellido()     establecerapellido()     establecerapellido()
 Calcularsueldo()         Calcularsueldo()         Calcularsueldo()


  ObjetoEmpleado           ObjetoEmpleado           ObjetoEmpleado

Nombre: Juan             Nombre: Juan             Nombre: Juan
Apellidos: perez         Apellidos: perez         Apellidos: perez
Horastrab: 45            Horastrab: 54            Horastrab: 65
Sueldo: 225+45=270       Sueldo: 270+81=351       Sueldo: 325+130=400

  establecerombre()        establecerombre()        establecerombre()
  establecerapellido()     establecerapellido()     establecerapellido()
  Calcularsueldo()         Calcularsueldo()         Calcularsueldo()     49
Empleado

Nombre
Apellidos
Horastrab
Sueldo


Establecernombre()
Establecerapellido()
Establecerhoras()
Calcularsueldo()
obtenerDatosempleados()
Obtenersueldo()




                          50
Algoritmo sueldo          1. Método Establecernombre(nom :cadena)
  Clase empleado             •   NomEmp = nom
   a. Declaraciones          •   Fin Método establecernombre
     datos
         NomEmp: cadena
                          2. Método Establecerapellido (ape:cadena)
         ApeEmp: cadena
                             •   ApeEmp = nom
         NumHor: real
                             •   Fin Método establecerapellido
         sueldo: real
     constante
         costohora=5      3. Método Establecerhoras (hor:real)
………………                       a. numhor = hor
                             b. Fin Método Establecerhoras


                                                                 51
4. Método Calcularsueldo ()
   a. Sueldo = NumHor * costohora
   b. If (NumHor > 40) and (NumHor <=50)
      then
            Sueldo = sueldo + (sueldo*0.20)
   c. endif
   d. If (NumHor > 50) and (NumHor <=60)
      then
            Sueldo = sueldo + (sueldo*0.30)
                                              h. If (sueldo < 100) then
   e. endif
                                                         sueldo = 100
   f. If (NumHor > 60) then
            Sueldo = sueldo + (sueldo*0.40)   i. Endif

   g. Endif                                   j. If (sueldo > 300) then
                                                         sueldo = 300
……….                                          k. Endif
                                                  l. Fin Método           52
                                                 calcularrsueldo
5. Método obtenerDatosempleados() :cadena
   a. return (NomEmp+ “ “+ApeEmp)
   b. Fin Método obtenerDatosempleados


6. Método Obtenersueldo(): Real
   a. return sueldo
   b. Fin Método Obtenersueldo


Finclase Empleado


                                            53
………………
Clase Manipulaempleado
 Método Principal
   a.   Declaraciones                    ………………
        nombre: cadena                      f. Objemp.establecernombre(nombre)
        apellido: cadena                    g. Objemp.establecerapellido(apellido)
        horas: real                         h. Objemp.establecerhoras(horas)
   e.   Declarar crear el objeto
                                            i. Objemp.calcularsueldo()
   f.   empleado objemp = new
                                            j. Imprimir Objemp.obtenerempleado
        empleado()
                                            k. Imprimir objemp.obtenersueldo
   g.   Imprimir “ingrese nombres y
        apellidos, y horas trabajadas”      l. Fin Método Principal
   h.   Leer nombre, apellido, horas       Fin clase Manipulaempleado
   ………………………                             Fin (algoritmo)

                                                                            54
contacto
   Email: djaramillo@utpl.edu.ec
   Skype: danilo.jaramillo.h
   msn: djaramilloh@hotmail.com
   Teléfono: 07-250275 ext 2637




                                    55
56

More Related Content

What's hot (19)

Arreglos bidimensionales o matrices
Arreglos bidimensionales o matricesArreglos bidimensionales o matrices
Arreglos bidimensionales o matrices
 
Consignas Bloque 1
Consignas Bloque 1Consignas Bloque 1
Consignas Bloque 1
 
Ejercicios cap 003
Ejercicios cap 003Ejercicios cap 003
Ejercicios cap 003
 
Practica 1 Introduccion Al R
Practica 1 Introduccion Al RPractica 1 Introduccion Al R
Practica 1 Introduccion Al R
 
Act 5 parte_a_b_c!
Act 5 parte_a_b_c!Act 5 parte_a_b_c!
Act 5 parte_a_b_c!
 
Cálculo de Infuencias Indirectas (Módulo de Scilab)
Cálculo de Infuencias Indirectas  (Módulo de Scilab)Cálculo de Infuencias Indirectas  (Módulo de Scilab)
Cálculo de Infuencias Indirectas (Módulo de Scilab)
 
6724640 matrices-java
6724640 matrices-java6724640 matrices-java
6724640 matrices-java
 
2 bloque1
2 bloque12 bloque1
2 bloque1
 
Exercícios de matrizes e determinantes
Exercícios de matrizes e determinantesExercícios de matrizes e determinantes
Exercícios de matrizes e determinantes
 
Ma 22 2007
Ma 22 2007Ma 22 2007
Ma 22 2007
 
Trabalho matrizes
Trabalho matrizesTrabalho matrizes
Trabalho matrizes
 
Guia lineal
Guia linealGuia lineal
Guia lineal
 
Estadística con Lenguaje R: Sesión 3
Estadística con Lenguaje R: Sesión 3Estadística con Lenguaje R: Sesión 3
Estadística con Lenguaje R: Sesión 3
 
Matematik(ilieana) xia3
Matematik(ilieana) xia3Matematik(ilieana) xia3
Matematik(ilieana) xia3
 
Guia wiris
Guia wirisGuia wiris
Guia wiris
 
Exercícios de fixação
Exercícios de fixação   Exercícios de fixação
Exercícios de fixação
 
FCD Guía 3. derivadas y aplicaciones
FCD Guía 3. derivadas y aplicacionesFCD Guía 3. derivadas y aplicaciones
FCD Guía 3. derivadas y aplicaciones
 
2 vectores matrices
2 vectores matrices2 vectores matrices
2 vectores matrices
 
Función inversa.
Función  inversa.Función  inversa.
Función inversa.
 

Similar to Programación orientada a objetos

Metodologia de la Programación Bim II Estructuras de Datos
Metodologia de la Programación Bim II Estructuras de DatosMetodologia de la Programación Bim II Estructuras de Datos
Metodologia de la Programación Bim II Estructuras de DatosVideoconferencias UTPL
 
trabajo de computacion .pptx
trabajo de computacion .pptxtrabajo de computacion .pptx
trabajo de computacion .pptxAngel Apugllon
 
Matlab presentacion enero2012
Matlab presentacion enero2012Matlab presentacion enero2012
Matlab presentacion enero2012gerardoarbito
 
Matrices y sistemas de ecuaciones
Matrices y sistemas de ecuacionesMatrices y sistemas de ecuaciones
Matrices y sistemas de ecuacionesBrian Bastidas
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#elidetjc
 
METODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION I
METODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION IMETODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION I
METODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION IVideoconferencias UTPL
 
Video Segundo Bimestre Metodologia Abierta
Video Segundo Bimestre Metodologia AbiertaVideo Segundo Bimestre Metodologia Abierta
Video Segundo Bimestre Metodologia AbiertaDanilo Jaramillo
 
Curso de introduccion_al_matlab
Curso de introduccion_al_matlabCurso de introduccion_al_matlab
Curso de introduccion_al_matlabCORPOELEC
 
Guia8 programacion
Guia8 programacionGuia8 programacion
Guia8 programacionEdwin Ortega
 
02 Procesamiento de Datos.pptx
02 Procesamiento de Datos.pptx02 Procesamiento de Datos.pptx
02 Procesamiento de Datos.pptxOmarDS1
 
Matlab
MatlabMatlab
MatlabDRIKSH
 

Similar to Programación orientada a objetos (20)

Metodologia de la Programación Bim II Estructuras de Datos
Metodologia de la Programación Bim II Estructuras de DatosMetodologia de la Programación Bim II Estructuras de Datos
Metodologia de la Programación Bim II Estructuras de Datos
 
Estructuras De Datos
Estructuras De DatosEstructuras De Datos
Estructuras De Datos
 
trabajo de computacion .pptx
trabajo de computacion .pptxtrabajo de computacion .pptx
trabajo de computacion .pptx
 
Matlab presentacion enero2012
Matlab presentacion enero2012Matlab presentacion enero2012
Matlab presentacion enero2012
 
Matrices y sistemas de ecuaciones
Matrices y sistemas de ecuacionesMatrices y sistemas de ecuaciones
Matrices y sistemas de ecuaciones
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#
 
Tutorial de matrices c#
Tutorial de matrices c#Tutorial de matrices c#
Tutorial de matrices c#
 
Xxxxxxxxxxxxxx
XxxxxxxxxxxxxxXxxxxxxxxxxxxx
Xxxxxxxxxxxxxx
 
METODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION I
METODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION IMETODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION I
METODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION I
 
Video Segundo Bimestre Metodologia Abierta
Video Segundo Bimestre Metodologia AbiertaVideo Segundo Bimestre Metodologia Abierta
Video Segundo Bimestre Metodologia Abierta
 
Arreglos java
Arreglos javaArreglos java
Arreglos java
 
Arreglos
ArreglosArreglos
Arreglos
 
Arreglos
ArreglosArreglos
Arreglos
 
Curso de introduccion_al_matlab
Curso de introduccion_al_matlabCurso de introduccion_al_matlab
Curso de introduccion_al_matlab
 
Segundo Bimestre
Segundo BimestreSegundo Bimestre
Segundo Bimestre
 
Guia8 programacion
Guia8 programacionGuia8 programacion
Guia8 programacion
 
Computacion
ComputacionComputacion
Computacion
 
02 Procesamiento de Datos.pptx
02 Procesamiento de Datos.pptx02 Procesamiento de Datos.pptx
02 Procesamiento de Datos.pptx
 
Matlab
MatlabMatlab
Matlab
 
Matlab introducción
Matlab   introducciónMatlab   introducción
Matlab introducción
 

More from Videoconferencias UTPL

La oración en clave de espiritualidad misionera
La oración en clave de espiritualidad misioneraLa oración en clave de espiritualidad misionera
La oración en clave de espiritualidad misioneraVideoconferencias UTPL
 
Asesoria trabajo fin de titulacion (Lineas y proyectos de investigación )
Asesoria trabajo fin de titulacion (Lineas y proyectos de investigación )Asesoria trabajo fin de titulacion (Lineas y proyectos de investigación )
Asesoria trabajo fin de titulacion (Lineas y proyectos de investigación )Videoconferencias UTPL
 
Asesoria trabajo fin de titulacion (objetivos y planificacion)
Asesoria trabajo fin de titulacion (objetivos y planificacion)Asesoria trabajo fin de titulacion (objetivos y planificacion)
Asesoria trabajo fin de titulacion (objetivos y planificacion)Videoconferencias UTPL
 
Introducción a las ciencias ambientales
Introducción a las ciencias ambientalesIntroducción a las ciencias ambientales
Introducción a las ciencias ambientalesVideoconferencias UTPL
 

More from Videoconferencias UTPL (20)

La oración en clave de espiritualidad misionera
La oración en clave de espiritualidad misioneraLa oración en clave de espiritualidad misionera
La oración en clave de espiritualidad misionera
 
Asesoria trabajo fin de titulacion (Lineas y proyectos de investigación )
Asesoria trabajo fin de titulacion (Lineas y proyectos de investigación )Asesoria trabajo fin de titulacion (Lineas y proyectos de investigación )
Asesoria trabajo fin de titulacion (Lineas y proyectos de investigación )
 
Asesoria trabajo fin de titulacion (objetivos y planificacion)
Asesoria trabajo fin de titulacion (objetivos y planificacion)Asesoria trabajo fin de titulacion (objetivos y planificacion)
Asesoria trabajo fin de titulacion (objetivos y planificacion)
 
Generos graficos
Generos graficosGeneros graficos
Generos graficos
 
Periodismo digital
Periodismo digitalPeriodismo digital
Periodismo digital
 
El editorial
El editorialEl editorial
El editorial
 
La entrevista
La entrevistaLa entrevista
La entrevista
 
La noticia
La noticiaLa noticia
La noticia
 
Generos periodisticos
Generos periodisticosGeneros periodisticos
Generos periodisticos
 
Biología general
Biología generalBiología general
Biología general
 
Introducción a las ciencias ambientales
Introducción a las ciencias ambientalesIntroducción a las ciencias ambientales
Introducción a las ciencias ambientales
 
Expresion oral y escrita
Expresion oral y escritaExpresion oral y escrita
Expresion oral y escrita
 
Matematicas I
Matematicas IMatematicas I
Matematicas I
 
Contabilidad general I
Contabilidad general IContabilidad general I
Contabilidad general I
 
Realidad Nacional
Realidad NacionalRealidad Nacional
Realidad Nacional
 
Aplicación de nuevas tecnologías
Aplicación de nuevas tecnologíasAplicación de nuevas tecnologías
Aplicación de nuevas tecnologías
 
Marketing y protocolo empresarial
Marketing y protocolo empresarialMarketing y protocolo empresarial
Marketing y protocolo empresarial
 
Gerencia educativa
Gerencia educativaGerencia educativa
Gerencia educativa
 
Toma de decisiones
Toma de decisiones Toma de decisiones
Toma de decisiones
 
Ejercicios fonetica y fonologia
Ejercicios fonetica y fonologiaEjercicios fonetica y fonologia
Ejercicios fonetica y fonologia
 

Recently uploaded

Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfvictorbeltuce
 
Manejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsaManejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsaLuis Minaya
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas123yudy
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialpatriciaines1993
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfAlfredoRamirez953210
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Angélica Soledad Vega Ramírez
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDUgustavorojas179704
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdfOswaldoGonzalezCruz
 
libro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación iniciallibro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación inicialLorenaSanchez350426
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...YobanaZevallosSantil1
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressionsConsueloSantana3
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxMartín Ramírez
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfCESARMALAGA4
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfNataliaMalky1
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024IES Vicent Andres Estelles
 

Recently uploaded (20)

La luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luzLa luz brilla en la oscuridad. Necesitamos luz
La luz brilla en la oscuridad. Necesitamos luz
 
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdfMapa Mental de estrategias de articulación de las areas curriculares.pdf
Mapa Mental de estrategias de articulación de las areas curriculares.pdf
 
Aedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptxAedes aegypti + Intro to Coquies EE.pptx
Aedes aegypti + Intro to Coquies EE.pptx
 
Manejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsaManejo del Dengue, generalidades, actualización marzo 2024 minsa
Manejo del Dengue, generalidades, actualización marzo 2024 minsa
 
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdfTema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
Tema 7.- E-COMMERCE SISTEMAS DE INFORMACION.pdf
 
periodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicasperiodico mural y sus partes y caracteristicas
periodico mural y sus partes y caracteristicas
 
Día de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundialDía de la Madre Tierra-1.pdf día mundial
Día de la Madre Tierra-1.pdf día mundial
 
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdfEstrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
Estrategias de enseñanza - aprendizaje. Seminario de Tecnologia..pptx.pdf
 
Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...Contextualización y aproximación al objeto de estudio de investigación cualit...
Contextualización y aproximación al objeto de estudio de investigación cualit...
 
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDUFICHA DE MONITOREO Y ACOMPAÑAMIENTO  2024 MINEDU
FICHA DE MONITOREO Y ACOMPAÑAMIENTO 2024 MINEDU
 
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
5° SEM29 CRONOGRAMA PLANEACIÓN DOCENTE DARUKEL 23-24.pdf
 
libro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación iniciallibro para colorear de Peppa pig, ideal para educación inicial
libro para colorear de Peppa pig, ideal para educación inicial
 
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO  YESSENIA 933623393 NUEV...
IV SES LUN 15 TUTO CUIDO MI MENTE CUIDANDO MI CUERPO YESSENIA 933623393 NUEV...
 
TL/CNL – 2.ª FASE .
TL/CNL – 2.ª FASE                       .TL/CNL – 2.ª FASE                       .
TL/CNL – 2.ª FASE .
 
VISITA À PROTEÇÃO CIVIL _
VISITA À PROTEÇÃO CIVIL                  _VISITA À PROTEÇÃO CIVIL                  _
VISITA À PROTEÇÃO CIVIL _
 
Uses of simple past and time expressions
Uses of simple past and time expressionsUses of simple past and time expressions
Uses of simple past and time expressions
 
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptxc3.hu3.p1.p3.El ser humano como ser histórico.pptx
c3.hu3.p1.p3.El ser humano como ser histórico.pptx
 
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdfBIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
BIOLOGIA_banco de preguntas_editorial icfes examen de estado .pdf
 
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdfLA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
LA OVEJITA QUE VINO A CENAR CUENTO INFANTIL.pdf
 
Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024Metabolismo 3: Anabolismo y Fotosíntesis 2024
Metabolismo 3: Anabolismo y Fotosíntesis 2024
 

Programación orientada a objetos

  • 1. METODOLOGIA Y TECNOLOGIA DE LA PROGRAMACION I ESCUELA: Ciencias de la Computación NOMBRES Ing. Danilo Jaramillo H PERíODO: Abril – Agosto 2009 1
  • 2. INDICACIONES  Ingreso a campus y contestar los foros, revisar ejercicios.  Importancia de realizar las evaluaciones a distancia  Foros (EVA) 2 puntos  Parte objetiva 2 puntos  Parte de ensayo 2 puntos  Evaluación Presencial  parte objetiva 8 puntos  parte ensayo 6 puntos 2
  • 3. INDICACIONES  Uso de sangrías.  Poner encabezados  Resolver en pseudo-código  Entender que es lo que se pide en los ejercicios de la evaluación presencial. 3
  • 4. QUE HAREMOS HOY  Mayor claridad para el desarrollo de algoritmos  Desarrollo de programas mas complejos  Nuevos enfoques … Programación orientada a objetos 4
  • 5. PLAN DE CONTENIDOS SEGUNDO BIMESTRE Capítulo 6. Estructuras de datos: Arreglos 163 - 192 12 Capítulo 7. Utilización de los Métodos 203 - 236 10 Capítulo 8. Programación Orientada a objetos aplicando 241 - 254 8 diagramas de clases Capítulo 9. Programación Orientada a objetos aplicando 257- 342 10 secuenciación, selección, repetición 40 5
  • 6. ESTRUCTURAS DE DATOS  Contenidos  Arreglos de una dimensión (vector) 2 3 4 5 6 7  Arreglos de dos dimensiones o matrices 2 3 4 5 6 7  Arreglos multidimensionales 8 9 3 5 7 4 6 7 1 1 4 3 6
  • 7. ESTRUCTURAS DE DATOS  Arreglos  Colección de datos del mismo tipo  Un nombre único  Indicador de posición que diferencia a cada elemento MatRes Mat 2 9 4 15 6 27 2 13 4 45 6 7 1 2 3 4 5 6 8 9 53 5 37 4 26 7 10 11 4 3 7 31 32 33 34 35 36
  • 8. ESTRUCTURAS DE DATOS  Arreglos unidimensionales o vectores Mat 2 9 4 15 6 27 1 2 3 4 5 6 Mat[1] = 2 Mat[2] = 9 Mat[3] = 14 Mat[4] = 15 Mat[5] = 6 Mat[6] = 25 8
  • 9. ESTRUCTURAS DE DATOS Declar nombrevariable : Arreglo[tamaño] tipo de dato Algoritmo matrices Clase matriz 1. Método Principal a. declaraciones Variables Mat: Arreglo [30] Entero 9
  • 10. ESTRUCTURAS DE DATOS TIPOS Algoritmo matrices Clase matriz 1. Método Principal a. declaraciones Tipos Vector : Arreglo [30] Entero Variables A, B. C : Vector 10
  • 11. Algoritmo matrices Clase matriz 1. Método Principal a. declaraciones Variables Mat: Arreglo [30] Entero b. imprimir “ingrese numero de elementos” c. leer n_e d. for (i = 1; i <= n_e; i++) 1. leer Mat[i] e. endfor f. for (i = 1; i <= n_e; i++) 1. if (mat[i] mod 2) = 0 then imprimir “el numero”,mat[i], es par 2. endif g. endfor h. for (i = 1; i <= n_e; i++) imprimir Mat[i] e. endfor h. fin método principal 11 fin clase matriz
  • 12. ESTRUCTURAS DE DATOS  Arreglos multi-dimensionales MatRes 2 13 4 45 6 7 8 9 53 5 37 4 MatRes[1][1] = 2 MatRes[2][4] = 5 26 7 100 11 4 3 MatRes[3][2] = 7 31 32 33 34 35 36 MatRes[1][6] = 7 MatRes[2][1] = 8 MatRes[3][5] = 4 12
  • 13. ESTRUCTURAS DE DATOS Declaracion nombrevariable : Arreglo[tamaño_f][tamaño_c] tipo de dato Algoritmo matrices Clase matriz 1. Método Principal a. declaraciones Variables Mat: Arreglo [30][10] Entero 13
  • 14. ESTRUCTURAS DE DATOS TIPOS Algoritmo matrices Clase matriz 1. Método Principal a. declaraciones Constantes L = 30 Tipos Matrices : Arreglo [L][L] Entero Variables A, B. C : Matrices 14
  • 15. Algoritmo matrices Clase matriz 1. Método Principal a. declaraciones Variables Mat: Arreglo [30][10] Entero b. imprimir “ingrese numero de filas y columnas” c. leer n_f,n_c d. for (i=1; i<=n_f; i++) 1. for (j=1:j<=n_c;j++) i. leer Mat[i][j] 2. endfor e. endfor f. for (i=1; i<=n_f; i++) 1. for (j=1:j<=n_c;j++) if (Mat[i][j] mod 2 = 0) then imprimir “numero es par” endif 2. endfor g. endfor 15 2. fin método principal
  • 16. EJERCICIOS  Ordenar un vector  Buscar elementos repetidos en un vector  Ordenar una matriz de dos dimensiones  Buscar elementos repetidos en una matriz dos dimensiones  Multiplica dos matrices 16
  • 17. Método Principal a. Declaraciones Mat[10] : Arreglo[10] entero b. imprimir “ingrese numero de elementos” c. leer n_e d. for(i=1; i<= n_e; i++) 1. leer Mat[i] e. endfor f. for(i=1; i<= n_e; i++) 1. for(j=1; j<= n_e; j++) if (mat[i] < mat[j]) then aux  mat[i] mat[i]  mat [j] mat[j]  aux endif 2.endfor g. endfor h. for(i=1; i<= n_e; i++) 1. imprimir Mat[i] i. endfor j. fin método principal 17
  • 18. METODOS Conceptos Generales Propósito .como utilizar mas de un método dentro de una clase. Comprender el trabajo con variables de clase, variables locales y paso de parámetros entre métodos. 18
  • 19. METODOS  Conceptos Generales  Técnica divide y vencerás  Ejecutar una tarea especifica  Cada método es independientes  método principal  sub-rutinas (función, rutina, sub-algoritmo)  Cuando se invoca a un método las instrucciones que están definidas se ejecutan y luego vuelven al método donde fue invocado. 19
  • 20. B B A D F A D 20
  • 21. matriculación Sistema de Ingresar Ficha Gestión matriculación del estudiante Académica Registro de Notas y Asistencia Verificar cédula Registro de Notas y Ingresar Asistencia Notas 21
  • 22. Metodo principal Metodo xxxx Metodo Principal Llamada método Llamada método Método yyyy Llamada método Llamada al método sEjemeemp1 Llamada método Método zzzz Llamada método 22
  • 23. Métodos Algoritmo sumar Clase suma 1. Método Principal a. imprimir “la suma es”, suma() 2. fin método principal 3. Método suma: entero a. Declaraciones variables Suma, x , y: entero b. leer x, y c. Suma = x + y d. Return Suma 4. Fin Método suma Fin clase suma fin 23
  • 24. Métodos  Conceptos  Métodos que no retornan valor  Métodos que retornar valor  Variables de clase y locales  Parámetros por valor y por referencia 24
  • 25. Métodos  Métodos que no retornan valor  Pueden o no devolver valores  Ejecuta un proceso especifico  Forma de Invocar a estos métodos  NombredelMetodo() 25
  • 26. Métodos  Métodos que no retornan valor  Definición Método nombre (parámetros) a. Declaraciones Variables Constantes b. Acción c. Acción d. Acción e. Fin Método 26
  • 27. Métodos  Métodos que retornan valor  Devuelve un valor  Forma de Invocar a un Metodo No Retorna Valor  Z  nombremetodo()  Si (nombremetodo() == ?)  Imprimir nombremetodo  Parte de una expresión 27
  • 28. Métodos  Metodos que retornan Valor  Definición Método nombre (parámetros): tipo de dato a. Declaraciones Variables Constantes b. Acción c. Acción d. return valor e. Fin Método 28
  • 29. Métodos  Variables: locales y clase  Locales  Solo tiene valides dentro del método donde son declaradas  De clase  Se las puede utilizad en cualquier parte de la clase 29
  • 30. Métodos Algoritmo sumar Clase suma Variables 1. declaraciones variables de clase y : entero 2. Método Principal a. Leer y b. imprimir “la suma es”, suma() 3. fin método principal 4. Método suma: entero a.Declaraciones Suma = x + y variables Suma, x: entero •x = 5 •Suma = x + y •Return Suma 5. Fin Método suma Fin clase suma fin 30
  • 31. Métodos Algoritmo sumar Clase suma 1. Método Principal a. declaraciones variables y : entero b. Leer y Variables c. imprimir “la suma es”, suma() d. imprimir x locales e. fin método principal 4. Metodo suma: entero a. Declaraciones variables Suma, x entero •x=5 • Suma = x + y • Return Suma e. Fin Método suma Fin clase suma 31 31 fin
  • 32. Métodos  Parámetros por valor y por referencia.. Enlazar variables entre métodos  Por valor  Si un parámetro es modificado su contenido dentro del subprograma, al terminar el mismo mantiene el valor  Por referencia  Si un parámetro es modificado su contenido dentro del subprograma, al terminar el mismo mantendrá el valor con el que se modificó. 32
  • 33. Métodos Algoritmo Sumatoria PARAMETROS POR VALOR Clase Suma 1.Metodo principal a. declaraciones …………. S : entero 2. método suma (val s: entero) : entero b. S = 0 a. Leer numero1 c. imprimir suma(s) b. Leer numero2 d. imprimir s c. s = numero1 + numero2 e. Fin método principal d. return S ……. e. Fin método suma Fin clase suma fin ¿Qué valor se presenta en la numero1  5 llamada a la función? numero2  8 33 ¿Cuál es el valor de S ?
  • 34. Métodos Algoritmo Sumatoria PARAMETROS POR REFERENCIA Clase Suma 1.Metodo principal a. declaraciones …………. S : entero 2. método suma (ref s: entero) : entero b. S = 0 a. Leer numero1 c. imprimir suma(s) b. Leer numero2 d. imprimir s c. s = numero1 + numero2 e. Fin método principal d. return S ……. e. Fin método suma Fin clase suma fin ¿Qué valor se presenta en la numero1  5 llamada a la función? numero2  8 34 ¿Cuál es el valor de S ?
  • 35. Ejercicios Métodos Algoritmo Factorial …………………. Clase factorial 2. método factorial (val s: entero) : entero 1. Metodo principal a. declaraciones a. declaraciones f : entero res, numero : entero b. leer numero b. f = 1 c. res = factorial (numero) c. for (i = 1; i<= numero; i++) d. imprimir res f=f*i e. Fin metodo principal d. endfor …………… e. return f Fin clase suma f. Fin metodo factorial fin 35
  • 36. Ejercicios Métodos Algoritmo Potencia Clase Potencia ……………. 1. Método principal 2. método potencia (entero bas, a. declaraciones entero exp) : entero bas, exp, res: entero a. declaraciones b. leer bas p : entero c. leer exp b. p = 1 d. res = potencia (bas,exp) c. for (i=1; i<=exp; i++) e. imprimir res p  p * bas Fin metodo principal d. endfor …………… f. return p Fin clase suma g. fin método potencia fin 36
  • 37. Algoritmo transformacion Clase transforma 1. Metodo principal a. leer num b. bin = binario(num) c. oct = octal(num) d. imprimir “numero en binario es”, bin e. imprimir “numero en octal es”, oct f. fin metodo principal fin 2. método binario (val num:entero) entero 3. método octal (val num: entero) entero a. j = 1 a. j = 1 b. res = 0 b. res = 0 c. while (num > 0) do c. while (num > 0) do 1. d = residuo(num/2) 1. d = residuo(num/8) 2. res = res + (d*j) 2. res = res + (d*j) 3. num = num / 2 3. num = num / 8 4. j = j*10 4. j = j*10 d. endwhile d. endwhile e. return res e. return res 37 f. Fin metodo binario f. Fin metodo octal
  • 38. Algoritmo transformación Clase transforma 1. Método principal a. leer num b. bin  transformar(num,2) c. oct  transformar(num,8) d. presentar “numero en binario es”, bin e. presentar “numero en octal es”, oct f. Fin Método Principal fin 2. Método transformar (num: entero, base:entero): entero a. j = 1 b. res = 0 c. while (num > 0) do 1. d = residuo(num/base) 2. res = res + (d*j) 3. num = num / base 4. j = j*10 d. endwhile e. return res 38 f. Fin Método Transformar
  • 39. Algortimo matrices Clase matriz …………………… 1. Método Principal 2. Método primo(entero num) boolean a. declaraciones a. declaraciones Variables variables Mat: Arreglo [30][10] Entero d, lim : real b. imprimir “ingrese numero de filas y columnas” p : boolean c. leer n_f,n_c b. d = 2 d. for (i=1; i<=n_f; i++) c. lim = num / 2 1. for (j  1 hasta n_c d. p  true i. leer Mat[i,j] e. while (d < num) 2. endfor 1. if(num modd) = 0 e. endfor p = falso f. for (i=1; i<=n_f; i++) d = lim 1. for (j  1 hasta n_c 2. Endif if primo(Mat[i,j]) 3. d  d + 1 imprimir “numero es primo” f. enddo endif g. return p 2. endfor h. Fin método primo g. endfor Fin clase h. fin método principal fin ……….. 39
  • 40. METODOS - resumen  Fácil comprensión del problema  Fácil comprensión de errores, pues si existe alguno solo se trabajara en el modulo donde este se presente  Reutilización de código, para procesos similares se pueden utilizar procedimientos que ya están realizados 40
  • 41. PROGRAMACIÓN ORIENTADA A OBJETOS  Contenidos  Estudiar los conceptos básicos de la programación orientada a objetos.  Objetos.  Clases.  métodos.  encapsulamiento. 41
  • 42. PROGRAMACIÓN ORIENTADA A OBJETOS  Innovación en los lenguajes de programación  Es mas estructurada que las que se han estudiado  Mas modular y abstracta que lo que se ha hecho con respecto a abstracción y ocultamiento  La POO, está formada por una colección de objetos interaccionando conjuntamente para representar y solucionar un problema 42
  • 43. PROGRAMACIÓN ORIENTADA A OBJETOS  Objetos  Datos .. Atributos .. descripción  Métodos .. Comportamiento … manipulación de los datos Objeto Dato1 Dato2 dato3 Metodo1() Metodo2() Metodo3() 43
  • 44. PROGRAMACIÓN ORIENTADA A OBJETOS  Clase  Representación abstracta que describen un conjunto de objetos  Representa un {} de objetos que tienen los mismos métodos y los mismos datos  Plantilla o molde para crear todos los objetos Empleado Nombre apellidos Leernombre() 44 Leerapellido()
  • 45. PROGRAMACIÓN ORIENTADA A OBJETOS  Métodos y encapsulación  Acciones que se implementan el comportamiento de un objeto, manipular los datos  Encapsulación colocar juntos los datos y los métodos dentro de un objeto  El programador debe pensar en el código y los datos juntos durante el diseño del programa  No hay vacio entre datos y métodos 45
  • 46.  Modificadores de acceso  Visibilidad que tendran los datos o los metodos, desde que parte seran visibles para ser utilizados  -privado (datos,metodos)  #protegido (datos,metodos)  +publico (datos,metodos)  _estatico (datos,metodos)  *abstracto (metodos) 46
  • 47. Instanciación Empleado Nombre apellidos Leernombre() Leerapellido() ObjetoEmpleado ObjetoEmpleado Nombre: Juan Nombre: Juan Apellidos: perez Apellidos: perez Leernombre() Leernombre() Leerapellido() Leerapellido() 47
  • 48. ejercicio  Se desea calcular el sueldo de un empleado, teniendo su nombre, apellido, horas trabajadas, costo por hora de 5 dólares y bajo las siguientes condiciones:  Horas trabajadas <=40 no tiene bonificacion  Horas trabajadas <=50, 20% de bonificacion  Horas trabajadas <=60, 30% de bonificacion  Horas trabajadas >=60, 40%  Nadie puede ganar menos de 100 y mas de 400 dólares 48
  • 49. ObjetoEmpleado ObjetoEmpleado ObjetoEmpleado Nombre: Juan Nombre: danilo Nombre: Juan Apellidos: perez Apellidos: jaramillo Apellidos: perez Horastrab: 30 Horastrab: 10 Horastrab: 40 Sueldo: 150 Sueldo: (50) = 100 Sueldo: 200 establecerombre() establecerombre() establecerombre() establecerapellido() establecerapellido() establecerapellido() Calcularsueldo() Calcularsueldo() Calcularsueldo() ObjetoEmpleado ObjetoEmpleado ObjetoEmpleado Nombre: Juan Nombre: Juan Nombre: Juan Apellidos: perez Apellidos: perez Apellidos: perez Horastrab: 45 Horastrab: 54 Horastrab: 65 Sueldo: 225+45=270 Sueldo: 270+81=351 Sueldo: 325+130=400 establecerombre() establecerombre() establecerombre() establecerapellido() establecerapellido() establecerapellido() Calcularsueldo() Calcularsueldo() Calcularsueldo() 49
  • 51. Algoritmo sueldo 1. Método Establecernombre(nom :cadena) Clase empleado • NomEmp = nom a. Declaraciones • Fin Método establecernombre datos NomEmp: cadena 2. Método Establecerapellido (ape:cadena) ApeEmp: cadena • ApeEmp = nom NumHor: real • Fin Método establecerapellido sueldo: real constante costohora=5 3. Método Establecerhoras (hor:real) ……………… a. numhor = hor b. Fin Método Establecerhoras 51
  • 52. 4. Método Calcularsueldo () a. Sueldo = NumHor * costohora b. If (NumHor > 40) and (NumHor <=50) then Sueldo = sueldo + (sueldo*0.20) c. endif d. If (NumHor > 50) and (NumHor <=60) then Sueldo = sueldo + (sueldo*0.30) h. If (sueldo < 100) then e. endif sueldo = 100 f. If (NumHor > 60) then Sueldo = sueldo + (sueldo*0.40) i. Endif g. Endif j. If (sueldo > 300) then sueldo = 300 ………. k. Endif l. Fin Método 52 calcularrsueldo
  • 53. 5. Método obtenerDatosempleados() :cadena a. return (NomEmp+ “ “+ApeEmp) b. Fin Método obtenerDatosempleados 6. Método Obtenersueldo(): Real a. return sueldo b. Fin Método Obtenersueldo Finclase Empleado 53
  • 54. ……………… Clase Manipulaempleado Método Principal a. Declaraciones ……………… nombre: cadena f. Objemp.establecernombre(nombre) apellido: cadena g. Objemp.establecerapellido(apellido) horas: real h. Objemp.establecerhoras(horas) e. Declarar crear el objeto i. Objemp.calcularsueldo() f. empleado objemp = new j. Imprimir Objemp.obtenerempleado empleado() k. Imprimir objemp.obtenersueldo g. Imprimir “ingrese nombres y apellidos, y horas trabajadas” l. Fin Método Principal h. Leer nombre, apellido, horas Fin clase Manipulaempleado ……………………… Fin (algoritmo) 54
  • 55. contacto  Email: djaramillo@utpl.edu.ec  Skype: danilo.jaramillo.h  msn: djaramilloh@hotmail.com  Teléfono: 07-250275 ext 2637 55
  • 56. 56