SlideShare uma empresa Scribd logo
1 de 10
Baixar para ler offline
Funciones

                              Roberto Carlos
                               Abreu D´ıaz

                            Outline

                            Funciones
                            Caso de Estudio
                            Estructura de una
                            Funci´n
                                 o

      Funciones             Llamada a funciones
                            ´
                            Ambito
                            Call stack




Roberto Carlos Abreu D´
                      ıaz


    January 27, 2010
Funciones

                                 Roberto Carlos
                                  Abreu D´ıaz

                               Outline

                               Funciones
                               Caso de Estudio
                               Estructura de una
                               Funci´n
                                    o
Funciones                      Llamada a funciones
                               ´
                               Ambito
   Caso de Estudio             Call stack


   Estructura de una Funci´n
                          o
   Llamada a funciones
   ´
   Ambito
   Call stack
Funciones
Funciones
                                                              Roberto Carlos
                                                               Abreu D´ıaz

                                                            Outline

                                                            Funciones
                                                            Caso de Estudio
                                                            Estructura de una
                                                            Funci´n
                                                                 o
                                                            Llamada a funciones
                                                            ´
                                                            Ambito
                                                            Call stack




    Entrada, procesamiento, Salida
    Se pueden llamar (”ejecutar”) un sin n´mero de veces.
                                          u
    Relativamente independientes del resto del c´digo
                                                o
    Sin´nimos: sub-programas, procedimientos, m´todos,
       o                                          e
    funciones, rutinas
Funciones
Caso de Estudio
                                                                Roberto Carlos
                                                                 Abreu D´ıaz

                                                              Outline

Ejemplo de Kernighan y Ritchie                                Funciones
                                                              Caso de Estudio
                                                              Estructura de una
                                                              Funci´n
                                                                   o
    Si tenemos que dise˜ar y escribir un programa que
                        n                                     Llamada a funciones
                                                              ´
                                                              Ambito
    imprima cada l´
                  ınea de la entrada si esta contiene alg´n
                                                         u    Call stack

    patr´n de caracteres.
        o
    El c´digo ser´ algo as´
         o        ıa        ı:
    while (haya m´s l´
                    a ıneas)
    if (la l´
            ınea contiene el patr´n)
                                 o
    impr´ ımela
    Aunque podamos escribir todo el c´digo en el main(),
                                      o
    separar el c´digo en varias funciones trae consigo sus
                o
    ventajas
Funciones
Continuaci´n...
          o
                                                              Roberto Carlos
                                                               Abreu D´ıaz

                                                            Outline

                                                            Funciones
                                                            Caso de Estudio
Ejemplo de Kernighan y Ritchie (2)                          Estructura de una
                                                            Funci´n
                                                                 o
                                                            Llamada a funciones
                                                            ´
                                                            Ambito
    ”haya m´s l´
            a ıneas” es una funci´n que lee datos tipo
                                 o                          Call stack

    cadena de la entrada
    ”(if) la l´
              ınea contiene el patr´n” es una funci´n que
                                   o               o
    busca la ocurrencia de patrones de textos
    ”impr´
         ımela” es ya el printf!
    ¡Si queremos cambiar el patr´n de b´squeda s´lo
                                o      u        o
    tendr´
         ıamos que cambiar la funci´n encargada de eso!
                                   o
Funciones
Estructura de una Funci´n
                       o
                                                                  Roberto Carlos
                                                                   Abreu D´ıaz

                                                                Outline

                                                                Funciones
                                                                Caso de Estudio
                                                                Estructura de una
                                                                Funci´n
                                                                     o
                                                                Llamada a funciones
                                                                ´
                                                                Ambito
                                                                Call stack




    La lista de par´metros es separada por coma
                   a
    Si la funci´n no devuelve datos, el tipo de dato es: void
               o
    La palabra reservada return se utiliza para devolver el
    resultado
Funciones
Ejemplo!
                                          Roberto Carlos
                                           Abreu D´ıaz

                                        Outline
C´digo
 o                                      Funciones
                                        Caso de Estudio
                                        Estructura de una
 int f a c t o r i a l ( int n)         Funci´n
                                             o
                                        Llamada a funciones
 {                                      ´
                                        Ambito
                                        Call stack
       i f ( n <= 2 )
              return n ;

         int producto = n ;

         while ( n > 1)
             p r o d u c t o ∗= −−n ;
         return producto ;
 }
Funciones
Llamada a funciones
                                                                  Roberto Carlos
                                                                   Abreu D´ıaz

                                                                Outline

                                                                Funciones
                                                                Caso de Estudio
                                                                Estructura de una
                                                                Funci´n
                                                                     o
                                                                Llamada a funciones
                                                                ´
                                                                Ambito
                                                                Call stack
    ¡Ya lo hemos hecho! printf!
    Si la funci´n devuelve un resultado . . . la llamada a la
               o
    funci´n es una expresi´n v´lida!
          o               o a
    Ejemplo: factorial(5) + factorial(6)!
´
Ambito
                                                                   Funciones

                                                                 Roberto Carlos
                                                                  Abreu D´ıaz

                                                               Outline

                                                               Funciones
                                                               Caso de Estudio
                                                               Estructura de una
                                                               Funci´n
                                                                    o
                                                               Llamada a funciones
                                                               ´
                                                               Ambito
                                                               Call stack




   Las funciones pueden acceder a las variables globales
   Pero no pueden acceder a las variables de otras variables
   ¿Por qu´?
          e
Funciones
Call stack
               Roberto Carlos
                Abreu D´ıaz

             Outline

             Funciones
             Caso de Estudio
             Estructura de una
             Funci´n
                  o
             Llamada a funciones
             ´
             Ambito
             Call stack

Mais conteúdo relacionado

Destaque

Entrevista Aurelio Miras Portugal
Entrevista Aurelio Miras PortugalEntrevista Aurelio Miras Portugal
Entrevista Aurelio Miras Portugal
Cext
 
Manual para entidades CEXT
Manual para entidades CEXTManual para entidades CEXT
Manual para entidades CEXT
Cext
 

Destaque (7)

Guía para solicitar tu ayuda por desempleo en el extranjero
Guía para solicitar tu ayuda por desempleo en el extranjeroGuía para solicitar tu ayuda por desempleo en el extranjero
Guía para solicitar tu ayuda por desempleo en el extranjero
 
Carta de España Nº 680 Marzo 2012
Carta de España Nº 680 Marzo 2012Carta de España Nº 680 Marzo 2012
Carta de España Nº 680 Marzo 2012
 
Carta de España Nº 682 Mayo 2012
Carta de España Nº 682 Mayo 2012Carta de España Nº 682 Mayo 2012
Carta de España Nº 682 Mayo 2012
 
Entrevista Aurelio Miras Portugal
Entrevista Aurelio Miras PortugalEntrevista Aurelio Miras Portugal
Entrevista Aurelio Miras Portugal
 
Manual para entidades CEXT
Manual para entidades CEXTManual para entidades CEXT
Manual para entidades CEXT
 
Resultados del encuentro_digital_con_aurelio_miras_portugal
Resultados del encuentro_digital_con_aurelio_miras_portugalResultados del encuentro_digital_con_aurelio_miras_portugal
Resultados del encuentro_digital_con_aurelio_miras_portugal
 
Resultados del II Encuentro Digital con la Consejería de Empleo en Reino Unido
Resultados del II Encuentro Digital con la Consejería de Empleo en Reino UnidoResultados del II Encuentro Digital con la Consejería de Empleo en Reino Unido
Resultados del II Encuentro Digital con la Consejería de Empleo en Reino Unido
 

Mais de rcad (9)

Estructuras de Control y Repetición
Estructuras de Control y RepeticiónEstructuras de Control y Repetición
Estructuras de Control y Repetición
 
Pilas y Colas
Pilas y ColasPilas y Colas
Pilas y Colas
 
Elementos Basicos Programacion
Elementos Basicos ProgramacionElementos Basicos Programacion
Elementos Basicos Programacion
 
Programas, Algoritmos
Programas, AlgoritmosProgramas, Algoritmos
Programas, Algoritmos
 
Recursión
RecursiónRecursión
Recursión
 
Estructuras de Datos y Algoritmos - Introducción
Estructuras de Datos y Algoritmos - IntroducciónEstructuras de Datos y Algoritmos - Introducción
Estructuras de Datos y Algoritmos - Introducción
 
Introducción a la Programación
Introducción a la ProgramaciónIntroducción a la Programación
Introducción a la Programación
 
Análisis de algoritmos
Análisis de algoritmosAnálisis de algoritmos
Análisis de algoritmos
 
ITT-235-L: Introducción a Sistemas Computacionales
ITT-235-L: Introducción a Sistemas ComputacionalesITT-235-L: Introducción a Sistemas Computacionales
ITT-235-L: Introducción a Sistemas Computacionales
 

Último

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
nicho110
 

Último (12)

redes informaticas en una oficina administrativa
redes informaticas en una oficina administrativaredes informaticas en una oficina administrativa
redes informaticas en una oficina administrativa
 
How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.How to use Redis with MuleSoft. A quick start presentation.
How to use Redis with MuleSoft. A quick start presentation.
 
Avances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estosAvances tecnológicos del siglo XXI y ejemplos de estos
Avances tecnológicos del siglo XXI y ejemplos de estos
 
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptxEL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
EL CICLO PRÁCTICO DE UN MOTOR DE CUATRO TIEMPOS.pptx
 
investigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXIinvestigación de los Avances tecnológicos del siglo XXI
investigación de los Avances tecnológicos del siglo XXI
 
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptxPROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
PROYECTO FINAL. Tutorial para publicar en SlideShare.pptx
 
Avances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvanaAvances tecnológicos del siglo XXI 10-07 eyvana
Avances tecnológicos del siglo XXI 10-07 eyvana
 
pruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNITpruebas unitarias unitarias en java con JUNIT
pruebas unitarias unitarias en java con JUNIT
 
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptxEVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
EVOLUCION DE LA TECNOLOGIA Y SUS ASPECTOSpptx
 
Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21Innovaciones tecnologicas en el siglo 21
Innovaciones tecnologicas en el siglo 21
 
Buenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptxBuenos_Aires_Meetup_Redis_20240430_.pptx
Buenos_Aires_Meetup_Redis_20240430_.pptx
 
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
Resistencia extrema al cobre por un consorcio bacteriano conformado por Sulfo...
 

Funciones

  • 1. Funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Funciones Llamada a funciones ´ Ambito Call stack Roberto Carlos Abreu D´ ıaz January 27, 2010
  • 2. Funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Funciones Llamada a funciones ´ Ambito Caso de Estudio Call stack Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack
  • 3. Funciones Funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack Entrada, procesamiento, Salida Se pueden llamar (”ejecutar”) un sin n´mero de veces. u Relativamente independientes del resto del c´digo o Sin´nimos: sub-programas, procedimientos, m´todos, o e funciones, rutinas
  • 4. Funciones Caso de Estudio Roberto Carlos Abreu D´ıaz Outline Ejemplo de Kernighan y Ritchie Funciones Caso de Estudio Estructura de una Funci´n o Si tenemos que dise˜ar y escribir un programa que n Llamada a funciones ´ Ambito imprima cada l´ ınea de la entrada si esta contiene alg´n u Call stack patr´n de caracteres. o El c´digo ser´ algo as´ o ıa ı: while (haya m´s l´ a ıneas) if (la l´ ınea contiene el patr´n) o impr´ ımela Aunque podamos escribir todo el c´digo en el main(), o separar el c´digo en varias funciones trae consigo sus o ventajas
  • 5. Funciones Continuaci´n... o Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Ejemplo de Kernighan y Ritchie (2) Estructura de una Funci´n o Llamada a funciones ´ Ambito ”haya m´s l´ a ıneas” es una funci´n que lee datos tipo o Call stack cadena de la entrada ”(if) la l´ ınea contiene el patr´n” es una funci´n que o o busca la ocurrencia de patrones de textos ”impr´ ımela” es ya el printf! ¡Si queremos cambiar el patr´n de b´squeda s´lo o u o tendr´ ıamos que cambiar la funci´n encargada de eso! o
  • 6. Funciones Estructura de una Funci´n o Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack La lista de par´metros es separada por coma a Si la funci´n no devuelve datos, el tipo de dato es: void o La palabra reservada return se utiliza para devolver el resultado
  • 7. Funciones Ejemplo! Roberto Carlos Abreu D´ıaz Outline C´digo o Funciones Caso de Estudio Estructura de una int f a c t o r i a l ( int n) Funci´n o Llamada a funciones { ´ Ambito Call stack i f ( n <= 2 ) return n ; int producto = n ; while ( n > 1) p r o d u c t o ∗= −−n ; return producto ; }
  • 8. Funciones Llamada a funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack ¡Ya lo hemos hecho! printf! Si la funci´n devuelve un resultado . . . la llamada a la o funci´n es una expresi´n v´lida! o o a Ejemplo: factorial(5) + factorial(6)!
  • 9. ´ Ambito Funciones Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack Las funciones pueden acceder a las variables globales Pero no pueden acceder a las variables de otras variables ¿Por qu´? e
  • 10. Funciones Call stack Roberto Carlos Abreu D´ıaz Outline Funciones Caso de Estudio Estructura de una Funci´n o Llamada a funciones ´ Ambito Call stack