Sie sind auf Seite 1von 31

Luis Hernndez Yez

Funciones
Presentado por:

Docente Aneyka Hurtado

Un dibujo
void
void dibujarCirculo()
dibujarCirculo()
{{ ...
... }}
void
void dibujarSecantes()
dibujarSecantes()
{{ ...
... }}

Dibujar
Dibujar

void
void dibujarLinea()
dibujarLinea()
{{ ...
... }}

Dibujar
Dibujar

Dibujar
Dibujar

Luis Hernndez Yez

Dibujar
Dibujar

Dibujar
Dibujar

Dibujar
Dibujar

void
void dibujarTriangulo()
dibujarTriangulo()
{{
dibujarSecantes();
dibujarSecantes();
dibujarLinea();
dibujarLinea();
}}
int
int main()
main() {{
dibujarCirculo();
dibujarCirculo();
dibujarTriangulo();
dibujarTriangulo();
dibujarSecantes();
dibujarSecantes();
return
return 0;
0;
}}

Flujo de ejecucin
int
int main()
main()
{{

mostrarH();
mostrarH();
mostrarO();
mostrarO();
...
...

}}

Luis Hernndez Yez

void
void mostrarH()
mostrarH()
{{
...
...
}}

void
void mostrarO()
mostrarO()
{{
...
...
}}
...
...

Funciones

Datos locales y datos globales


#include <iostream>
using namespace std;
const int MAX = 100;
double ingresos;

Datos
Datos globales
globales

...

op
op de
de proc()
proc()
es
es distinta
distinta
de
de op
op de
de main()
main()

void proc() {
int op;
double ingresos;
...
}

Datos
Datos locales
locales aa proc()
proc()
Se
Se conocen
conocen MAX
MAX (global),
(global), op
op (local)
(local)
ee ingresos
ingresos (local
(local que
que oculta
oculta la
la global)
global)

Luis Hernndez Yez

int main() {
int op;
...
return 0;
}

Datos
Datos locales
locales aa main()
main()
Se
Se conocen
conocen MAX
MAX (global),
(global), op
op (local)
(local)
ee ingresos
ingresos (global)
(global)

Programacin Modular
(Funciones)
Una funcin es un conjunto de instrucciones (estructuras
de control) que realizan una tarea especfica y puede
retornar un nico valor.
Las funciones pueden utilizar datos de entrada llamados
parmetros que permiten el intercambio de datos entre
el llamado de la funcin y la ejecucin de la misma.
Las funciones son utilizadas para descomponer grandes
problemas en tareas simples y para implementar
operaciones que son comnmente utilizadas durante un
programa y de esta manera reducir la cantidad de
cdigo.
Cuando una funcin es invocada (llamada) se le pasa el
control a dicha funcin, una vez que esta finaliz con su
tarea el control es devuelto al punto desde el cual la

Parmetros de una Funcin

ARGUMENTOS

FUNCIONES EN C++
Las funciones se utilizan para proporcionar modularidad a un
programa. Creacin de una aplicacin utilizando la funcin hace
que sea ms fcil de entender, editar, revisar e encontrar los
errores del mismo.

Parmetros: son variables para almacenar valores


de argumentos pasados mientras que la funcin se
llama. Una funcin puede o no puede contener la
lista de parmetros

Aqu, a y b son enviados como argumentos.


x e y son parmetros que contendrn los valores de
a y b para realizar la operacin requerida dentro de la
funcin.
Cuerpo de la funcin: Es la parte en la que las
instrucciones de cdigo se escriben.

Declarando, Definicin y llamada de funcin


Declaracin de la funcin, se hace para indicar al compilador acerca de la
existencia de la funcin.
Se menciona el tipo de retorno, su nombre y la lista de parmetros de funcin.
cuerpo de la funcin se escribe en su definicin.

Aqu, en un principio la funcin se


declara, sin cuerpo.
A continuacin, dentro de la funcin
main () se llama, ya que la funcin
devuelve LA SUMA de dos valores,
por lo tanto, C es la variable que
almacena el valor de la suma.

Llamar a una funcin


Las funciones se llaman por sus nombres.
Si la funcin es, sin argumento, se le puede llamar
directamente a travs de su nombre.

Las funciones con argumentos, tenemos dos formas


de llamarlas:
Llamada por valor
llamada por referencia

ipos de parmetros segn lo que retornan

Llamada por
En este caso, la variable x

valor

cambia,

porque

se

pasa

no
el

argumento por valor, por lo tanto, se


pasa una copia de x.
La variable x dentro de main ()
cout << x ;

tiene el valor de 10.

Llamada por valor


La funcin calc () devuelve
un valor, y almacenar dicho
valor en x.

llamada por referencia

La llamada por referencia


En este se pasa la direccin de la variable como
argumentos. En este caso el parmetro formal
puede ser tomado como una referencia o un
puntero, tanto en el caso de que cambien los valores
de la variable original.

llamada por
referencia

Tipos de parmetros segn su ubicacin

Argumentos pasados por valor


Memoria

void proc(int x, double a)


{ ... }
int main()

124

3.0
...

{
int i = 124;
double

d = 3;

proc(i, 33 * d);

Luis Hernndez Yez

...
return 0;
}

...
x

124

99.0
...

Argumentos pasados por


referencia
void proc(int &x, double &a)
{ ... }
int main()
{
int i = 124;
double

d = 3;

proc(i, d);

Luis Hernndez Yez

...
return 0;
}

Memoria
xx
i
aa d

124
3.0
...

Ejemplos

intercambia.cpp
intercambia.cpp

#include <iostream>
using namespace std;
void intercambia(double &valor1, double &valor2); // Prototipo

Luis Hernndez Yez

int main() {
double num1, num2;
Asegrate
Asegrate de
de que
que los
los prototipos
prototipos
cout << "Valor 1: ";
coincidan
coincidan con
con las
las implementaciones
implementaciones
cin >> num1;
cout << "Valor 2: ";
cin >> num2;
intercambia(num1, num2);
cout << "Ahora el valor 1 es " << num1
<< " y el valor 2 es " << num2 << endl;
return 0;
}
void intercambia(double &valor1, double &valor2) {
double tmp; // Variable local (temporal)
tmp = valor1;
valor1 = valor2;
valor2 = tmp;
}

Das könnte Ihnen auch gefallen