SlideShare una empresa de Scribd logo
Funciones
Nueva edición - 2020
progra_amandoholamundo.co
1/12@xacarana
Agenda
¿Qué es una función?
Firma de la función
Contexto de la función
Invocación de una función
Caja negra
Caja blanca
Tipos de funciones
Ejercicios
2/12@xacarana
¿Qué es una función?
Es un bloque de código que resuelve una
tarea específica, este bloque funciona como
un módulo que se puede usar las veces que
se requiera dentro del programa.
Prender()
Llamado
de función
Función
módulo
Resultado
de la función
3/12@xacarana
Firma de la función
La firma de la función es el contrato que se debe
cumplir para crear una función.
[Modificador] Tipo_retorno NombreFuncion (Lista_parametros)
{
Sentencias;
[return Valor_tipo_retorno];
}
El modificador, se refi-
ere al acceso que tiene la
función, por lo general es
public o public static.
Si se especifica un tipo de retorno difer-
ente de vacio (void), se debe usar la pal-
abra reservada return para indicar el valor
que debe ser devuelto por la función.
4/12@xacarana
Contexto de una función
Las funciones internamente definen un contexto de ejecución, es
decir un lugar de ejecución aislado que se crea solamente durante el
tiempo de llamado de la función y se destruye cuando la función
termina o retorna un valor.
public double Sumar(double a, double b)
{
double c;
c = a + b;
return c;
}
La variable c, se crea cuando se llama la función Sumar, pero solo ex-
iste mientras se ejecuta la función, eso quiere decir que c, solo existe
en el contexto creado para la función Sumar y cuando la función re-
torna el valor double, esta termina. La variable c, ya no puede ser ac-
cedida por fuera de la función Sumar.
5/12@xacarana
Invocación de una función
...
Menu();
...
double ans;
ans = Sumar(5.0,4.0);
void Menu()
double Sumar(double a, double b)
Main(...)
...
double c;
c= a + b;
return c;
1
2
34
5.0 4.0
9.0
Proceso para llamar una
función y el recorrido
que realizan los datos
que se pasan entre fun-
ciones según su llamado
Cada color de bloque, representa un contexto específico
6/12@xacarana
Caja negra
IN
OUT
HacerConejo();
Es una función que se usa, para
realizar una operación o cálcu-
lo, solo importa los datos de en-
trada y el resultado o salida de la
función.
Lo que pasa adentro de la caja no
es necesario conocerlo.
7/12@xacarana
Caja blanca
double c = a + b;
return c;
Sumar(double a, double b)
Es una función de la cual
se tiene conocimiento,
sobre lo que pasa inter-
namente.
Son las funciones crea-
das por el programador.
8/12@xacarana
Tipo de funciones
Ningún dato
de entrada
Ningún dato
de salidaSaludar()
Saludar();
Forma como se invoca
Firma
public static void Saludar()
{
}
no tiene
argumentosno retorna
datos
Significa que
no hay retorno
Función Sin-Sin, Sin datos de entrada y sin
datos de salida. Se usa la palabra reser-
vada void para especificar que la función
no tiene retorno o el retorno es vacio.
Usos:
•	Imprimir mensajes al usuario
•	Relizar una tarea periódica
•	Actualizar información
9/12@xacarana
Tipo de funciones
recibe un
dato de
entrada
Ningún dato
de salidaGuardar(325)
Función Con-Sin, Con datos de entrada y
sin datos de salida. Se usa la palabra reser-
vada void para especificar que la función
no tiene retorno o el retorno es vacio.
Usos:
•	Realizar una operación e imprimir un
mensaje al usuario
•	Asignar un valor a un miembro dato
•	Modificar un valor pasado por referencia
•	Para escuchar eventos
Tiene un
argumentono retorna
datos
Firma
public static void Guardar(int numero)
{
}
Forma como se invoca
Guardar(325);
10/12@xacarana
Tipo de funciones
recibe un
dato de
entrada
Retorna un
dato de
salida
Sumar(3,5)
Función Con-Con, Con datos de entra-
da y con datos de salida. Se usa la palabra
reservada return para especificar que la
función tiene retorno y se agrega el tipo
de retorno en la firma.
Usos:
•	Realizar cálculos con los datos de entrada
•	Realizar una operación y devolver un re-
sultado
Tiene dos
argumentos
Retorna
datos
Firma
public static int Sumar(int a, int b)
{
return a + b;
}
Forma como se invoca
int resultado = Sumar(3,5);
11/12@xacarana
Ejercicios
•	Realice una función que reciba 4 tipos de números diferentes
•	Escriba la función a partir de su invocación
•	float x = Comprar(3F,5.3,2)
•	Valorizar(3,true,’a’)
•	double y = CalcularInteres()
•	DarLike()
•	uint z = CantidadLikesNuevos()
•	Dibuja la firma y cuerpo de una función e identifica sus partes
•	Escriba una función que reciba 3 parametros, luego invoque la función con
valores compatibles pero de diferente tipo.
•	Realice una función que sume dos arreglos, tengo en cuenta las restric-
ciones para realizar la operación correctamente.
•	¿Cuántos return puede tener una función?
•	¿Qué pasa si el valor a retornar no se inicializa antes de su retorno?
•	¿Qué diferencia hay entre argumentos y parámetros?
•	¿Cuales son las recomendaciones para escoger el nombre de una función?
•	¿Qué pasa si una función que retorne un valor este no se asigne?
12/12@xacarana

Más contenido relacionado

La actualidad más candente

[C++ Korea] Effective Modern C++ Study, Item 11 - 13
[C++ Korea] Effective Modern C++ Study, Item 11 - 13[C++ Korea] Effective Modern C++ Study, Item 11 - 13
[C++ Korea] Effective Modern C++ Study, Item 11 - 13Chris Ohk
 
Course 102: Lecture 19: Using Signals
Course 102: Lecture 19: Using Signals Course 102: Lecture 19: Using Signals
Course 102: Lecture 19: Using Signals Ahmed El-Arabawy
 
Storage classes in c++
Storage classes in c++Storage classes in c++
Storage classes in c++Jaspal Singh
 
BilgeAdam Nesne Yönelimli Programlama
BilgeAdam Nesne Yönelimli ProgramlamaBilgeAdam Nesne Yönelimli Programlama
BilgeAdam Nesne Yönelimli ProgramlamaSinan Bozkuş
 
Herencia y Polimorfismo
Herencia y PolimorfismoHerencia y Polimorfismo
Herencia y Polimorfismonestor_moren
 
Functional Domain Modeling - The ZIO 2 Way
Functional Domain Modeling - The ZIO 2 WayFunctional Domain Modeling - The ZIO 2 Way
Functional Domain Modeling - The ZIO 2 WayDebasish Ghosh
 
Reflection power pointpresentation ppt
Reflection power pointpresentation pptReflection power pointpresentation ppt
Reflection power pointpresentation pptRohit Vipin Mathews
 
Designing with Capabilities
Designing with CapabilitiesDesigning with Capabilities
Designing with CapabilitiesScott Wlaschin
 
From object oriented to functional domain modeling
From object oriented to functional domain modelingFrom object oriented to functional domain modeling
From object oriented to functional domain modelingMario Fusco
 
Resource Bundle
Resource BundleResource Bundle
Resource BundleSunil OS
 

La actualidad más candente (15)

Textbox n label
Textbox n labelTextbox n label
Textbox n label
 
[C++ Korea] Effective Modern C++ Study, Item 11 - 13
[C++ Korea] Effective Modern C++ Study, Item 11 - 13[C++ Korea] Effective Modern C++ Study, Item 11 - 13
[C++ Korea] Effective Modern C++ Study, Item 11 - 13
 
Course 102: Lecture 19: Using Signals
Course 102: Lecture 19: Using Signals Course 102: Lecture 19: Using Signals
Course 102: Lecture 19: Using Signals
 
Storage classes in c++
Storage classes in c++Storage classes in c++
Storage classes in c++
 
BilgeAdam Nesne Yönelimli Programlama
BilgeAdam Nesne Yönelimli ProgramlamaBilgeAdam Nesne Yönelimli Programlama
BilgeAdam Nesne Yönelimli Programlama
 
Herencia y Polimorfismo
Herencia y PolimorfismoHerencia y Polimorfismo
Herencia y Polimorfismo
 
Java access modifiers
Java access modifiersJava access modifiers
Java access modifiers
 
Classes and objects
Classes and objectsClasses and objects
Classes and objects
 
Labs Jogos Java
Labs Jogos JavaLabs Jogos Java
Labs Jogos Java
 
Functional Domain Modeling - The ZIO 2 Way
Functional Domain Modeling - The ZIO 2 WayFunctional Domain Modeling - The ZIO 2 Way
Functional Domain Modeling - The ZIO 2 Way
 
Memory Management In C++
Memory Management In C++Memory Management In C++
Memory Management In C++
 
Reflection power pointpresentation ppt
Reflection power pointpresentation pptReflection power pointpresentation ppt
Reflection power pointpresentation ppt
 
Designing with Capabilities
Designing with CapabilitiesDesigning with Capabilities
Designing with Capabilities
 
From object oriented to functional domain modeling
From object oriented to functional domain modelingFrom object oriented to functional domain modeling
From object oriented to functional domain modeling
 
Resource Bundle
Resource BundleResource Bundle
Resource Bundle
 

Similar a 01 curso poo Funciones (20)

Funciones en C++
Funciones en C++Funciones en C++
Funciones en C++
 
Guía funciones
Guía funcionesGuía funciones
Guía funciones
 
Funcionesenlenguaje c
Funcionesenlenguaje cFuncionesenlenguaje c
Funcionesenlenguaje c
 
Introducción a las funciones en el lenguaje C
Introducción a las funciones en el lenguaje CIntroducción a las funciones en el lenguaje C
Introducción a las funciones en el lenguaje C
 
Presen iii 26 funciones
Presen iii  26 funcionesPresen iii  26 funciones
Presen iii 26 funciones
 
Funcionesclase1
Funcionesclase1Funcionesclase1
Funcionesclase1
 
Funciones store proc_triggers
Funciones store proc_triggersFunciones store proc_triggers
Funciones store proc_triggers
 
Funciones store proc_triggers
Funciones store proc_triggersFunciones store proc_triggers
Funciones store proc_triggers
 
Funciones en C.docx
Funciones en C.docxFunciones en C.docx
Funciones en C.docx
 
07 funciones
07 funciones07 funciones
07 funciones
 
sentenciareturnymetodos
sentenciareturnymetodossentenciareturnymetodos
sentenciareturnymetodos
 
Funciones en C
Funciones en CFunciones en C
Funciones en C
 
FUNCIONES LENGUAJE C
FUNCIONES LENGUAJE CFUNCIONES LENGUAJE C
FUNCIONES LENGUAJE C
 
Funciones recursivas en C++
Funciones recursivas en C++Funciones recursivas en C++
Funciones recursivas en C++
 
El lenguaje C++ (1).ppt
El lenguaje C++ (1).pptEl lenguaje C++ (1).ppt
El lenguaje C++ (1).ppt
 
El lenguaje C++.ppt
El lenguaje C++.pptEl lenguaje C++.ppt
El lenguaje C++.ppt
 
Indentificacion de funciones
Indentificacion de funcionesIndentificacion de funciones
Indentificacion de funciones
 
Metodos funciones
Metodos funcionesMetodos funciones
Metodos funciones
 
Programación modular en Introducción a la Programación
Programación modular en Introducción a la ProgramaciónProgramación modular en Introducción a la Programación
Programación modular en Introducción a la Programación
 
Funciones
FuncionesFunciones
Funciones
 

Más de Andres Bedoya Tobon

Enums, constantes, listas e interfaces
Enums, constantes, listas e interfacesEnums, constantes, listas e interfaces
Enums, constantes, listas e interfacesAndres Bedoya Tobon
 
Taller estudio - Estructuras de control VBA - Excel
Taller estudio - Estructuras de control VBA - ExcelTaller estudio - Estructuras de control VBA - Excel
Taller estudio - Estructuras de control VBA - ExcelAndres Bedoya Tobon
 
Entrada y salida, manejo de cadenas de texto
Entrada y salida, manejo de cadenas de textoEntrada y salida, manejo de cadenas de texto
Entrada y salida, manejo de cadenas de textoAndres Bedoya Tobon
 
Progra-Amando Medellin Tech Fest
Progra-Amando Medellin Tech FestProgra-Amando Medellin Tech Fest
Progra-Amando Medellin Tech FestAndres Bedoya Tobon
 
03 curso poo Valores por defecto - constructores
03 curso poo Valores por defecto - constructores03 curso poo Valores por defecto - constructores
03 curso poo Valores por defecto - constructoresAndres Bedoya Tobon
 
Excel - Variables y condicionales
Excel - Variables y condicionalesExcel - Variables y condicionales
Excel - Variables y condicionalesAndres Bedoya Tobon
 
Elementos de programacion - Excel
Elementos de programacion - ExcelElementos de programacion - Excel
Elementos de programacion - ExcelAndres Bedoya Tobon
 
Programación y diseño orientado a objetos
Programación y diseño orientado a objetosProgramación y diseño orientado a objetos
Programación y diseño orientado a objetosAndres Bedoya Tobon
 
Progra-amando <3 (Amor por la programación)
Progra-amando <3 (Amor por la programación)Progra-amando <3 (Amor por la programación)
Progra-amando <3 (Amor por la programación)Andres Bedoya Tobon
 

Más de Andres Bedoya Tobon (20)

Enums, constantes, listas e interfaces
Enums, constantes, listas e interfacesEnums, constantes, listas e interfaces
Enums, constantes, listas e interfaces
 
VBA Interfaz de usuario
VBA Interfaz de usuarioVBA Interfaz de usuario
VBA Interfaz de usuario
 
VBA Interfaz de usuario
VBA Interfaz de usuarioVBA Interfaz de usuario
VBA Interfaz de usuario
 
Taller estudio - Estructuras de control VBA - Excel
Taller estudio - Estructuras de control VBA - ExcelTaller estudio - Estructuras de control VBA - Excel
Taller estudio - Estructuras de control VBA - Excel
 
Entrada y salida, manejo de cadenas de texto
Entrada y salida, manejo de cadenas de textoEntrada y salida, manejo de cadenas de texto
Entrada y salida, manejo de cadenas de texto
 
Progra-Amando Medellin Tech Fest
Progra-Amando Medellin Tech FestProgra-Amando Medellin Tech Fest
Progra-Amando Medellin Tech Fest
 
04 curso poo Herencia
04 curso poo Herencia04 curso poo Herencia
04 curso poo Herencia
 
03 curso poo Valores por defecto - constructores
03 curso poo Valores por defecto - constructores03 curso poo Valores por defecto - constructores
03 curso poo Valores por defecto - constructores
 
02 curso poo Clase - Objeto
02 curso poo Clase - Objeto02 curso poo Clase - Objeto
02 curso poo Clase - Objeto
 
Excel - Variables y condicionales
Excel - Variables y condicionalesExcel - Variables y condicionales
Excel - Variables y condicionales
 
Excel - Macros
Excel - MacrosExcel - Macros
Excel - Macros
 
Elementos de programacion 02
Elementos de programacion 02Elementos de programacion 02
Elementos de programacion 02
 
Taller de estudio - Excel
Taller de estudio - ExcelTaller de estudio - Excel
Taller de estudio - Excel
 
Elementos de programacion - Excel
Elementos de programacion - ExcelElementos de programacion - Excel
Elementos de programacion - Excel
 
Automatizar tareas usando GAP
Automatizar tareas usando GAPAutomatizar tareas usando GAP
Automatizar tareas usando GAP
 
Pull request - Hacktoberfest
Pull request - Hacktoberfest Pull request - Hacktoberfest
Pull request - Hacktoberfest
 
Abc tipografico Medellin CSS
Abc tipografico Medellin CSSAbc tipografico Medellin CSS
Abc tipografico Medellin CSS
 
Programación y diseño orientado a objetos
Programación y diseño orientado a objetosProgramación y diseño orientado a objetos
Programación y diseño orientado a objetos
 
Clean code
Clean codeClean code
Clean code
 
Progra-amando <3 (Amor por la programación)
Progra-amando <3 (Amor por la programación)Progra-amando <3 (Amor por la programación)
Progra-amando <3 (Amor por la programación)
 

Último

Cerebelo Anatomía y fisiología Clase presencial
Cerebelo Anatomía y fisiología Clase presencialCerebelo Anatomía y fisiología Clase presencial
Cerebelo Anatomía y fisiología Clase presencialDanita2111
 
Fase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometricoFase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometricoYasneidyGonzalez
 
Módulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptx
Módulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptxMódulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptx
Módulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptxPabloPazmio14
 
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...crcamora123
 
ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)
ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)
ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)portafoliodigitalyos
 
Tema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxTema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxNoe Castillo
 
BIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATR
BIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATRBIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATR
BIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATRDanielGrajeda7
 
Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdfUn libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdfsandradianelly
 
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docxPLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docxDavidAlvarez758073
 
Diagnostico del corregimiento de Junin del municipio de Barbacoas
Diagnostico del corregimiento de Junin del municipio de BarbacoasDiagnostico del corregimiento de Junin del municipio de Barbacoas
Diagnostico del corregimiento de Junin del municipio de Barbacoasadvavillacorte123
 
Presentación de medicina Enfermedades Fotográfico Moderno Morado (1).pdf
Presentación de medicina Enfermedades Fotográfico Moderno Morado (1).pdfPresentación de medicina Enfermedades Fotográfico Moderno Morado (1).pdf
Presentación de medicina Enfermedades Fotográfico Moderno Morado (1).pdfjuancmendez1405
 
Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...odalisvelezg
 
ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLA
ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLAACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLA
ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLAJAVIER SOLIS NOYOLA
 
PROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacionPROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacionyorbravot123
 
diagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestasdiagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestasansomora123
 
ensayo literario rios profundos jose maria ARGUEDAS
ensayo literario rios profundos jose maria ARGUEDASensayo literario rios profundos jose maria ARGUEDAS
ensayo literario rios profundos jose maria ARGUEDASAntoineMoltisanti
 

Último (20)

Lec. 08 Esc. Sab. Luz desde el santuario
Lec. 08 Esc. Sab. Luz desde el santuarioLec. 08 Esc. Sab. Luz desde el santuario
Lec. 08 Esc. Sab. Luz desde el santuario
 
Cerebelo Anatomía y fisiología Clase presencial
Cerebelo Anatomía y fisiología Clase presencialCerebelo Anatomía y fisiología Clase presencial
Cerebelo Anatomía y fisiología Clase presencial
 
Fase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometricoFase 2, Pensamiento variacional y trigonometrico
Fase 2, Pensamiento variacional y trigonometrico
 
Módulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptx
Módulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptxMódulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptx
Módulo No. 1 Salud mental y escucha activa FINAL 25ABR2024 técnicos.pptx
 
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
Presentación Propuesta de Proyecto Social Colorido y Juvenil Multicolor y Neg...
 
ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)
ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)
ESTEREOTIPOS DE GÉNERO A LAS PERSONAS? (Grupo)
 
Sesión de clase: Luz desde el santuario.pdf
Sesión de clase: Luz desde el santuario.pdfSesión de clase: Luz desde el santuario.pdf
Sesión de clase: Luz desde el santuario.pdf
 
Tema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptxTema 14. Aplicación de Diagramas 26-05-24.pptx
Tema 14. Aplicación de Diagramas 26-05-24.pptx
 
BIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATR
BIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATRBIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATR
BIENESTAR TOTAL - LA EXPERIENCIA DEL CLIENTE CON ATR
 
Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdfUn libro sin recetas, para la maestra y el maestro Fase 3.pdf
Un libro sin recetas, para la maestra y el maestro Fase 3.pdf
 
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docxPLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
PLAN DE TRABAJO CONCURSO NACIONAL CREA Y EMPRENDE.docx
 
Diagnostico del corregimiento de Junin del municipio de Barbacoas
Diagnostico del corregimiento de Junin del municipio de BarbacoasDiagnostico del corregimiento de Junin del municipio de Barbacoas
Diagnostico del corregimiento de Junin del municipio de Barbacoas
 
Presentación de medicina Enfermedades Fotográfico Moderno Morado (1).pdf
Presentación de medicina Enfermedades Fotográfico Moderno Morado (1).pdfPresentación de medicina Enfermedades Fotográfico Moderno Morado (1).pdf
Presentación de medicina Enfermedades Fotográfico Moderno Morado (1).pdf
 
Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...Lección 1: Los complementos del Verbo ...
Lección 1: Los complementos del Verbo ...
 
ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLA
ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLAACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLA
ACERTIJO LA RUTA DE LAS ADIVINANZAS OLÍMPICAS. Por JAVIER SOLIS NOYOLA
 
4.Conectores Dos_Enfermería_Espanolacademico
4.Conectores Dos_Enfermería_Espanolacademico4.Conectores Dos_Enfermería_Espanolacademico
4.Conectores Dos_Enfermería_Espanolacademico
 
PROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacionPROYECTO INTEGRADOR ARCHIDUQUE. presentacion
PROYECTO INTEGRADOR ARCHIDUQUE. presentacion
 
diagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestasdiagnostico final (1). analisis - encuestas
diagnostico final (1). analisis - encuestas
 
5.Deicticos Uno_Enfermería_EspanolAcademico
5.Deicticos Uno_Enfermería_EspanolAcademico5.Deicticos Uno_Enfermería_EspanolAcademico
5.Deicticos Uno_Enfermería_EspanolAcademico
 
ensayo literario rios profundos jose maria ARGUEDAS
ensayo literario rios profundos jose maria ARGUEDASensayo literario rios profundos jose maria ARGUEDAS
ensayo literario rios profundos jose maria ARGUEDAS
 

01 curso poo Funciones

  • 1. Funciones Nueva edición - 2020 progra_amandoholamundo.co 1/12@xacarana
  • 2. Agenda ¿Qué es una función? Firma de la función Contexto de la función Invocación de una función Caja negra Caja blanca Tipos de funciones Ejercicios 2/12@xacarana
  • 3. ¿Qué es una función? Es un bloque de código que resuelve una tarea específica, este bloque funciona como un módulo que se puede usar las veces que se requiera dentro del programa. Prender() Llamado de función Función módulo Resultado de la función 3/12@xacarana
  • 4. Firma de la función La firma de la función es el contrato que se debe cumplir para crear una función. [Modificador] Tipo_retorno NombreFuncion (Lista_parametros) { Sentencias; [return Valor_tipo_retorno]; } El modificador, se refi- ere al acceso que tiene la función, por lo general es public o public static. Si se especifica un tipo de retorno difer- ente de vacio (void), se debe usar la pal- abra reservada return para indicar el valor que debe ser devuelto por la función. 4/12@xacarana
  • 5. Contexto de una función Las funciones internamente definen un contexto de ejecución, es decir un lugar de ejecución aislado que se crea solamente durante el tiempo de llamado de la función y se destruye cuando la función termina o retorna un valor. public double Sumar(double a, double b) { double c; c = a + b; return c; } La variable c, se crea cuando se llama la función Sumar, pero solo ex- iste mientras se ejecuta la función, eso quiere decir que c, solo existe en el contexto creado para la función Sumar y cuando la función re- torna el valor double, esta termina. La variable c, ya no puede ser ac- cedida por fuera de la función Sumar. 5/12@xacarana
  • 6. Invocación de una función ... Menu(); ... double ans; ans = Sumar(5.0,4.0); void Menu() double Sumar(double a, double b) Main(...) ... double c; c= a + b; return c; 1 2 34 5.0 4.0 9.0 Proceso para llamar una función y el recorrido que realizan los datos que se pasan entre fun- ciones según su llamado Cada color de bloque, representa un contexto específico 6/12@xacarana
  • 7. Caja negra IN OUT HacerConejo(); Es una función que se usa, para realizar una operación o cálcu- lo, solo importa los datos de en- trada y el resultado o salida de la función. Lo que pasa adentro de la caja no es necesario conocerlo. 7/12@xacarana
  • 8. Caja blanca double c = a + b; return c; Sumar(double a, double b) Es una función de la cual se tiene conocimiento, sobre lo que pasa inter- namente. Son las funciones crea- das por el programador. 8/12@xacarana
  • 9. Tipo de funciones Ningún dato de entrada Ningún dato de salidaSaludar() Saludar(); Forma como se invoca Firma public static void Saludar() { } no tiene argumentosno retorna datos Significa que no hay retorno Función Sin-Sin, Sin datos de entrada y sin datos de salida. Se usa la palabra reser- vada void para especificar que la función no tiene retorno o el retorno es vacio. Usos: • Imprimir mensajes al usuario • Relizar una tarea periódica • Actualizar información 9/12@xacarana
  • 10. Tipo de funciones recibe un dato de entrada Ningún dato de salidaGuardar(325) Función Con-Sin, Con datos de entrada y sin datos de salida. Se usa la palabra reser- vada void para especificar que la función no tiene retorno o el retorno es vacio. Usos: • Realizar una operación e imprimir un mensaje al usuario • Asignar un valor a un miembro dato • Modificar un valor pasado por referencia • Para escuchar eventos Tiene un argumentono retorna datos Firma public static void Guardar(int numero) { } Forma como se invoca Guardar(325); 10/12@xacarana
  • 11. Tipo de funciones recibe un dato de entrada Retorna un dato de salida Sumar(3,5) Función Con-Con, Con datos de entra- da y con datos de salida. Se usa la palabra reservada return para especificar que la función tiene retorno y se agrega el tipo de retorno en la firma. Usos: • Realizar cálculos con los datos de entrada • Realizar una operación y devolver un re- sultado Tiene dos argumentos Retorna datos Firma public static int Sumar(int a, int b) { return a + b; } Forma como se invoca int resultado = Sumar(3,5); 11/12@xacarana
  • 12. Ejercicios • Realice una función que reciba 4 tipos de números diferentes • Escriba la función a partir de su invocación • float x = Comprar(3F,5.3,2) • Valorizar(3,true,’a’) • double y = CalcularInteres() • DarLike() • uint z = CantidadLikesNuevos() • Dibuja la firma y cuerpo de una función e identifica sus partes • Escriba una función que reciba 3 parametros, luego invoque la función con valores compatibles pero de diferente tipo. • Realice una función que sume dos arreglos, tengo en cuenta las restric- ciones para realizar la operación correctamente. • ¿Cuántos return puede tener una función? • ¿Qué pasa si el valor a retornar no se inicializa antes de su retorno? • ¿Qué diferencia hay entre argumentos y parámetros? • ¿Cuales son las recomendaciones para escoger el nombre de una función? • ¿Qué pasa si una función que retorne un valor este no se asigne? 12/12@xacarana