Upload
michel-mejia
View
9
Download
0
Embed Size (px)
Citation preview
Mg.Ing. Yuri A. Pomachagua Basualdo
2014
Universidad Tecnolgica del Per
Yart Ing Yuri A. Pomachagua Basualdo
Funciones
Ing Yuri A. Pomachagua Basualdo
Contenido
Modulacin de un programa
Definicin de Funcin
Argumento.
Retorno
Aplicaciones
Yart Ing Yuri A. Pomachagua Basualdo
Logro
Al finalizar esta sesin el alumno ser
capaz de comprender un programa
utilizando funciones y sabr definir
adecuadamente las funciones con
parmetros o sin parmetros
Yart Ing Yuri A. Pomachagua Basualdo
La abstraccin es la herramienta ms poderosa que la gente tiene para gestionar la complejidad!
Ing Yuri A. Pomachagua Basualdo
Ejercicio.- Escribir un programa que dibuja
una casa tal como se
muestra en la imagen
Ing Yuri A. Pomachagua Basualdo
Principal
Dibuja Chimenea
Dibuja Puerta
Dibuja Ventana
Dibuja Contorno
Dibuja Marco de Puerta
Dibuja Perilla
Ing Yuri A. Pomachagua Basualdo
Consiste en dividir un programa
complejo en subprogramas, donde
el programa principal es el
controlador o conductor y los
subprogramas son las funciones o
procedimientos
Ing Yuri A. Pomachagua Basualdo
El programa principal invoca al
subprograma, el subprograma
ejecuta las tareas y luego devuelve
el control al Programa principal.
Programa Principal
Subprograma1
Subprograma 2
Subprograma1.1
Invoca
Retorna
Invoca
Retorna
Ing Yuri A. Pomachagua Basualdo
Definicin.- Una funcin consta de dos
partes, el encabezado y el cuerpo de la
funcin.
El encabezado.- Aqu, al igual que en el
prototipo de la misma, se tienen que
especificar los parmetros de la funcin,
si los utiliza y el tipo de datos que
devuelve.
El cuerpo.- Se compone de las
instrucciones necesarias para realizar la
tarea para la cual se crea la funcin
Ing Yuri A. Pomachagua Basualdo
Tipo_de_Retorno Nombre_Funcin(Parmetros)
{ Declaraciones;
Instrucciones;
--------
--------
return [expresin];
}
Cuero de la Funcin
Encabezado
Ing Yuri A. Pomachagua Basualdo
Tipo_de_retorno: es el tipo del valor devuelto por la funcin,
o, en caso de que la funcin no devuelva valor alguno, la
palabra reservada void.
Nombre_funcin: es el identificador asignado a la funcin.
Parmetros: Tambin llamado argumentos es la lista de
declaracin de los parmetros que son pasados a la funcin.
stos se separan por comas. Debemos tener en cuenta que
pueden existir funciones que no utilicen parmetros.
Cuerpo_de_la_funcin: est compuesto por un conjunto de
sentencias que llevan a cabo la tarea especfica para la cual
ha sido creada la funcin.
Return: mediante la palabra reservada return, se devuelve
el valor de la funcin, en este caso representado por
expresin.
Ing Yuri A. Pomachagua Basualdo
La declaracin de una funcin se conoce tambin como prototipo de la funcin. En el prototipo de una funcin se tienen que especificar los parmetros de la funcin, as como el tipo de dato que devuelve. Los prototipos de las funciones se incluyen generalmente en la cabecera del programa.
Ing Yuri A. Pomachagua Basualdo
Tipo_de_Retorno Nombre_Funcin(Parmetros);
Int main()
{ Instrucciones;
-------
return [expresin];
}
Tipo_de_Retorno Nombre_Funcin(Parmetros) {
Instrucciones;
return expresin;
}
Funcin principal
Prototipo
Ing Yuri A. Pomachagua Basualdo
float vol_Esfera( float Ra,);
Int main()
{ Instrucciones;
-------
return 0;
}
float vol_Esfera(Pfloat Ra) {
return 3.14*3/4*Ra*Ra*Ra;
}
Ing Yuri A. Pomachagua Basualdo
Ejercicio.- Elaborar una
funcin que
calcule el
producto de dos
nmeros
#include
using namespace std;
double Multiplicar(float N1, float N2);
int main()
{
float A,B;
double Prod;
cout > A;
cout > B;
Prod = Multiplicar(A,B); // Aqu se invoca a la funcin
cout
Ejercicio.- Elaborar una funcin que calcule
el volumen de un
cilindro
#include
using namespace std;
float Vol_Cilindro(float, float);
int main()
{
float ra,ha, res;
cout > ra;
cout > ha;
res = Vol_Cilindro(ra,ha); // Aqu se invoca a la funcin
cout
Solucin 1: C++
#include
using namespace std;
float Media(float a, float b, float c);
int main() {
float x, y, z;
Media(x, y, z); // Aqu se invoca a la funcin
system(pause);
return 0; }
float Media(float a, float b, float c)
{ float M;
cout > a;
cout > b;
cout > c;
M=(a+b+c)/3.0;
cout
float Vol_Cilindro(float R, float H)
{
float resp;
resp = 3.1416*R*R*H;
return resp;
}
Ing Yuri A. Pomachagua Basualdo
Variable Global- Tienen actuacin sobre todo el programa, tanto el principal como cualquier
subprograma.
float vol_Esfera( float Ra,);
double volum;
Int main()
{ Instrucciones;
Volum = Expresion;
return 0;
}
float vol_Esfera(float Ra) {
volum=Expresin1;
return [Expresin];
}
Ing Yuri A. Pomachagua Basualdo
Por Referencia- Es aquel en que se pasa la variable y no el valor, lo que permite pueda ser
modificada por el subprograma llamado.
Ing Yuri A. Pomachagua Basualdo
Paso de
parmetro
por valor
#include using namespace std; int funcion(int n, int m); int main() { int a, b; a = 50; b = 100; cout
Paso de
parmetro
por
referencia
#include using namespace std; int funcion(int &n, int &m); int main() { int a, b; a = 50; b = 100; cout
Ejercicio 1.- Elaborar una funcin que calcule la
cantidad de nmeros primos que se encuentran
entre dos valores a, b naturales; a>b.
Ejercicio 2.- Escribir una funcin para imprimir
todos los valores de a, b y c que cumplan con la
siguiente ecuacin c2 = a2 + b2 , para valores de a,
b y c que se encuentran entre 1 y 50.
.
Ing Yuri A. Pomachagua Basualdo
Smbolo Operacin
++ Incremento
-- Decremento
= A = B
+= A += B A = A + B
-= A -= B A = A - B
*= A *= B A = A * B
/= A /= B A = A / B
%= A %= B A = A % B
Ing Yuri A. Pomachagua Basualdo
IMPLEMENTAR EN EL LABORATORIO LAS FUNCIONES
EXPLICADOS EN CLASE
Yart Ing Yuri A. Pomachagua Basualdo