Professional Documents
Culture Documents
12/4/16
FUNCIONES
C++
1
12/4/16
C++
FUNCIONES
Todo programa en C es una coleccin de funciones
donde main es la funcin principal.
Las funciones pueden clasificarse como:
1) Funciones con valor devuelto: Function
2) Funciones que no devuelven valor : Procedure
1.
12/4/16
Tipo_dato
Identificador
lista_ argumentos
de retorno
{
. . . . . . .// cdigo de la funcin
return <valor devuelto>
}
Mg. Edgar Ruiz Lizama
12/4/16
Ejemplo 1:
#include <iostream>
#include <cmath>
float RaizCuadrada(int p);
using namespace std;
int main()
//funci2.cpp
{
float r=25;
cout<<"La Raiz cuadrada de "<<r<<" es = "<<RaizCuadrada(r);
cout<<endl;
return 0;
}
float RaizCuadrada (int p)
{
return sqrt(p);
}
Mg. Edgar Ruiz Lizama
12/4/16
void
{
identificador
argumentos
lista_
...
}
Mg. Edgar Ruiz Lizama
12/4/16
Ejemplo 2:
##include <iostream>
#include <cmath>
void RaizCuadrada(float p);
using namespace std;
int main()
//funci3.cpp
{
float r=25;
RaizCuadrada(r); //llamada a la funcion
return 0;
}
void RaizCuadrada (float p)
{
cout<<"La Raiz cuadrada de "<<p<<" es = "<<sqrt(p);
cout<<endl;
}
Mg. Edgar Ruiz Lizama
12/4/16
SOBRECARGA DE FUNCIONES
Ejemplo 3:
Escribir un programa que solicite el radio y calcule el
rea, longitud, y el volumen segn las siguientes
formulas. Resuelva utilizando funciones.
C++
4
3
Volumen de Esfera r
3
Mg. Edgar Ruiz Lizama
12/4/16
Solucin
//Ejemplo 3
#include <iostream>
const float PI=3.141592;
//declaracion de funciones prototipo
float AreaCirculo (float r);
float LongitudCircu(float r);
float VolumenEsfera (float r);
using namespace std;
int main()//areas1.cpp
{
float radio;
cout<<"ingrese valor del radio: ";
cin>>radio;
cout<<"el area del circulo es "<<AreaCirculo(radio)<<endl;
cout<<Longitud de la circunf. es:"<<LongitudCircu(radio)<<endl;
cout<<"el volumen de la esfera es "<<VolumenEsfera(radio)<<endl;
return 0;
}
Mg. Edgar Ruiz Lizama
Continuacin
12/4/16
//definiciones de funciones
float AreaCirculo (float r)
{
return (PI*r*r);
}
float LongitudCircu(float r)
{
return (2*PI*r);
}
float VolumenEsfera (float r)
{
return (4/3*PI*r*r*r);
}
10
12/4/16
11
12/4/16
C++
UTILIZANDO LA
SOBRECARGA DE
FUNCIONES
12
12/4/16
//Ejemplo 4
#include <iostream>
const double PI=3.14159265;
//funciones overload
float formulas(float r);
double formulas(double r);
long double formulas(long double r);
using namespace std;
int main()
{
//funcs6.cpp
float radio;
float r1;
double r2;
long double r3;
cout<<"ingrese valor del radio:
cin>>radio;
";
Mg. Edgar Ruiz Lizama
13
12/4/16
Continuacin
r3=r2=r1=radio;
cout<<"el area del circulo es "<<formulas(r1)<<endl;
cout<<"La longitud de la circunf. es:"<<formulas(r2)<<endl;
cout<<"el volumen de la esfera es "<<formulas(r3)<<endl;
return 0;
}
float formulas(float r)
{
//circulo
return PI*r*r;
14
12/4/16
Continuacin
double formulas(double r)
{
//circunferencia
return 2*PI*r;
}
long double formulas(long double r)
{
//esfera
return (4/3)*PI*r*r*r;
15
12/4/16
}
float media2(float n1,float n2)
{
return (n1+n2)/2;
}
float media3(float n1,float n2,float n3)
{
return (n1+n2+n3)/3;
}
16
12/4/16
17
12/4/16
18
12/4/16
Continuacion:
float media(float n1,float n2)
{
return (n1+n2)/2;
}
float media(float n1,float n2,float n3)
{
return (n1+n2+n3)/3;
}
double media(double n1,double n2,double n3)
{
return (n1+n2+n3)/3;
}
19
12/4/16
C++
12/4/16
MACROS
20
21
12/4/16
MACROS
Una macro es una seccin de cdigo, generalmente una
lnea que realiza una labor o clculo.
FORMATO:
22
12/4/16
CODIGO EN C++ :
#include <iostream>
#define PI 3.141592
#define CUBO(x) (x)*(x)*(x)
#define VOLESFERA(r) ((4/3)*PI*CUBO(r))
using namespace std;
int main()
{
int x,r;
cout<<"Ingrese el lado del cubo: "<<endl;
cin>>x;
cout<<"El volumen del cubo es: "<<CUBO(x)<<endl;
cout<<"Ingrese el radio de la esfera: ";
cin>>r;
cout<<"El volumen de la esfera es: <VOLESFERA(r)<<endl;
return 0;
}
23
12/4/16
24
12/4/16
EJEMPLO
La seccin de cdigo
if(a>b)
mayor = a;
else
mayor = b;
Usando una macro se puede escribir como:
#define MAYOR(a,b)((a>b)?(a) : (b))
Mg. Edgar Ruiz Lizama
25
12/4/16
Implementacin
#include<iostream>
// macros
#define MAYOR(x,y) ((x>y)? (x):(y))
#define MENOR(x,y) ((x<y)? (x):(y))
using namespace std;
int main()// macro6.cpp
{
int a,b;
cout<<"ingrese dos enteros diferentes:
cin>>a>>b;
";
26
12/4/16
27
12/4/16
Archivos de Inclusin
Un archivo de inclusin es un archivo que fsicamente
existe fuera del archivo fuente. Para ser utilizado debe
ser llamado desde una directiva de inclusin en el
archivo fuente, mediante la directiva include; tal
como lo siguiente:
#include miheader.h.
Los Archivos de inclusin son definidos del siguiente
modo:
Mg. Edgar Ruiz Lizama
28
12/4/16
29
12/4/16
30
12/4/16
31
12/4/16
32
12/4/16
Referencias