FUNCIONESEL PROGRAMA SE DIVIDE EN MUCHOS MODULOS (RUTINAS PEQUEÑAS DENOMINADAS FUNCIONES), QUE PRODUCEN MUCHOS BENEFICIOS: AISLAR MEJOR LOS PROBLEMAS ESCRIBIR PROGRAMAS CORRECTOS MAS RAPIDOS Y PRODUCIR PROGRAMAS QUE SON MAS FACILES DE MANTENER.ASI PUES UN PROGRAMA EN C++, SE DIVIDE EN MUCHAS FUNCIONES, CADA UNA DE LAS CUALES REALIZA UNA TAREA PRINCIPAL.
ESTRUCTURA DE UNA FUNCIONUNA FUNCION ES SENCILLAMENTE, UN CONJUNTO DE SENTENCIAS QUE SE PÚEDEN LLAMAR DESDE CUALQUIER PARTE DEL PROGRAMA. LAS FUNCIONES PERMITEN AL PROGRAMADOR UN GRADO DE ABSTRACCION EN LA RESOLUCION DE PROBLEMAS.UNA FUNCION NO SE PUEDE ANIDAR. ES DECIR UNA FUNCION NO SE PUEDE DECLARAR DENTRO DE OTRA FUNCION.LA ESTRUCTURA DE UNA FUNCION EN C++ ES LA SIGUIENTE:TIPO_DE_RETORNO NOMBRE DE LA FUNCION (LISTA DE PARAMETROS)		{		CUERPO DE LA FUNCION		RETURN EXPRESION}
ESTRUCTURA DE UNA FUNCIONTIPO_DE_RETORNO: TIPO DE VALOR DEVUELTO POR LA FUNCION O LA PALABRA RESERVADA VOID SI LA FUNCION NO DEVUELVE NINGUN VALORNOMBRE DE LA FUNCION: IDENTIFICADOR O NOMBRE DE LA FUNCIONLISTA DE PARAMETROS: LISTA DE DECLARACIONES DE LOS PARAMETROS DE LA FUNCION SEPARADOS POR COMASEXPRESION: VALOR QUE DEVUELVE LA FUNCION
ESTRUCTURA DE UNA FUNCIONASPECTOS MAS SOBRESALIENTES EN UNA FUNCION:TIPO DE RESULTADO: ES EL TIPO DE DATOS QUE DEVUELVE LA FUNCION C++ Y APARECE ANTES DEL NOMBRE DE LA FUNCIONLISTA DE PARAMETROS: ES UNA LISTA DE PARAMETROS TIPIFICADOS, CON TIPOS QUE UTILIZA EL FORMATO SIGUIENTE: TIPO1 PARAMETRO1, TIPO2 PARAMETRO 2…CUERPO DE LA FUNCION: SE ENCIERRA ENTRE LLAVES DE APERTURA { Y CIERRE } NO HAY PUNTOY COMA DESPUES DE LA LLAVE DE CIERREPASO DE PARAMETROS: POSTERIORMENTE SE VERA QUE EL PASO DE PARAMETROS EN C++ SE PUEDE HACER POR VALOR Y POR REFERENCIA.NO SE PUEDEN DECLARAR FUNCIONES ANIDADASDECLARACION LOCAL: LAS CONSTANTES, TIPOS DE DATOS Y VARIABLES DECLARADAS DENTRO DE LA FUNCION SON LOCALES A LA MISMA Y NO PERDURAN FUERA DE ELLA.VALOR DEVUELTO: MEDIANTE LA PALABRA RESERVADA RETURN SE PUEDE DEVOLVER EL VALOR DE LA FUNCION.
ESTRUCTURA DE UNA FUNCIONLista de parámetrosTipo de resultadoCabecera de la funciónfloat sum (float num1, float num2){  float resp;  resp= num1 + num2  return resp; }Declaración de variablesValor devuelto
Ejemplo de función#include <iostream.h>using namespace std;float suma(float, float);float a,b;main(){system(‘cls’);cout<<"dame el primer numero";cin>>a;cout<<"dame el segundo numero";cin>>b;cout<<"el resultado es"<<suma(a,b);system(‘pause’);return 0;}float suma (float d,float e){   return d+e;  }
Ejemplo de función#include <iostream.h>using namespace std;float suma(float, float);float a,b;main(){system(‘cls’);cout<<"dame el primer numero";cin>>a;cout<<"dame el segundo numero";cin>>b;Suma();system(‘pause’);return 0;}float suma (float d,float e){Float c;c= d+e;cout<<“el resultado de la suma es”<<c<<endl;  }
NOMBRE DE LA FUNCIONCOMIENZA CON UNA LETRA O UN SUBRAYADO_ Y PUEDE CONTENER TANTAS LETRAS, NUMEROS O SUBRAYADOS COMO DESEE.TIPO DE VALOR DE RETORNO:SI LA FUNCION NO DEVUELVE UN VALOR INT, SE DEBE ESPECIFICAR EL TIPO DE DATO DEVUELTO, EL TIPO Y PARAMETRO DEBEN SER EL MISMO
RESULTADOS DE UNA FUNCIONUNA FUNCION PUEDE DEVOLVER UN VALOR UNICO. EL RESULTADO SE MUESTRA CON UNA SENTENCIA RETURN CUYA SINTAXIS ES:RETURN (EXPRESION);RETURN (A+B+C);
LLAMADA A UNA FUNCIONLAS FUNCIONES PUEDEN SER EJECUTADAS, HAN DE SER LLAMADAS O INVOCADAS. CUALQUIER EXPRESION PUEDE CONTENER UNA LLAMADA A UNA FUNCION QUE REDIRIGIRA EL CONTROL DEL PROGRAMA A LA FUNCION NOMBRADA. NORMALMENTE LA LLAMADA A UNA FUNCION SE EALIZARA DESDE LA FUNCION PRINCIPAL MAIN ().
PROTOTIPOS DE UNA FUNCIONC++ REQUIERE QUE UNA FUNCION SE DECLARE O DEFINA ANTES DE SU USO. LA DECLARACION DE UNA FUNCION SE DENOMINA PROTOTIPO. LOS PROTOTIPOS DE UNA FUNCION CONTIENEN LA MISMA CABECERA DE LA FUNCION, CON LA DIFERENCIA DE QUE LOS PROTOTIPOS TERMINAN CON UN PUNTO Y COMA, UN PROTOTIPO CONSTA DE LOS SIGUIENTES ELEMENTOS: NOMBRE DE LA FUNCION, UNA LISTA DE ARGUMENTOS ENCERREDAOS ENTRE PARENTESIS Y UN PUNTOYCOMA.
PARAMETRO DE UNA FUNCIONC++ PROPORCIONA DOS METODOS PARA PASAR VARIABLES (PARAMETROS) ENTRE FUNCIONES. UNA FUNCION PUEDE UTILIZAR PARAMETROS POR VALOR Y PARAMETROS POR REFERENCIA, O PUEDE NO TENER PARAMETROS
PASO DE PARAMETRO POR VALORTAMBIEN LLAMADO PASO POR COPIA, SIGNIFICA QUE CUANDO C++, COMPILA LA FUNCION Y EL CODIGO QUE LLAMA A LA FUNCION, LA FUNCION RECIBE UNA COPIA DE LOS VALORES DE LOS PARAMETROS. SI SE CAMBIA EL VALOR DE UN PARMETRO VARIABLE LOCAL, EL CAMBIO SOLO AFECTA A LA FUNCION Y NO TIENE EFECTO FUERA DE LA FUNCION.EL METODO POR DEFECTO DE PASAR PARAMETROS ES POR VALOR A MENOS QUE PASEN ARREGLOS. LOS ARREGLOS SE PASAN POR DIRECCION.
EJEMPLO PASO POR VALOR#include <iostream.h>using namespace std;void demostracion (int valor);void main (void){system (‘cls’);int n=10;cout<<"antes de llamar a demostracion, n = " <<n<<endl;cin.get();demostracion(n);cout<<"despues de llamar a demostracion local, n"<<n<<endl;system (‘pause’);cout<<"pulsa enter para continuar";system(‘pause’);}void demostracion(int valor){ cout<<"dentro de demostracion, valor = "<<valor<<endl; system(‘pause’); valor=999; cout<<"dentro de demostracion, valor=" <<valor<<endl; system(‘pause’); }
EJEMPLO PASO POR VALOR#include <iostream.h>usingnamespacestd;intdemostracion (int valor);intmain (void){system(“cls”);int n=10;cout<<"antes de llamar a demostracion, n = " <<n<<endl;cin.get();cout<<"despues de llamar a demostracion local, n"<<demostracion(n);System(“pause”);}intdemostracion(int valor){cout<<"dentro de demostracion, valor = "<<valor;system(‘pause’); valor=999;return valor; }

Apunfun

  • 1.
    FUNCIONESEL PROGRAMA SEDIVIDE EN MUCHOS MODULOS (RUTINAS PEQUEÑAS DENOMINADAS FUNCIONES), QUE PRODUCEN MUCHOS BENEFICIOS: AISLAR MEJOR LOS PROBLEMAS ESCRIBIR PROGRAMAS CORRECTOS MAS RAPIDOS Y PRODUCIR PROGRAMAS QUE SON MAS FACILES DE MANTENER.ASI PUES UN PROGRAMA EN C++, SE DIVIDE EN MUCHAS FUNCIONES, CADA UNA DE LAS CUALES REALIZA UNA TAREA PRINCIPAL.
  • 2.
    ESTRUCTURA DE UNAFUNCIONUNA FUNCION ES SENCILLAMENTE, UN CONJUNTO DE SENTENCIAS QUE SE PÚEDEN LLAMAR DESDE CUALQUIER PARTE DEL PROGRAMA. LAS FUNCIONES PERMITEN AL PROGRAMADOR UN GRADO DE ABSTRACCION EN LA RESOLUCION DE PROBLEMAS.UNA FUNCION NO SE PUEDE ANIDAR. ES DECIR UNA FUNCION NO SE PUEDE DECLARAR DENTRO DE OTRA FUNCION.LA ESTRUCTURA DE UNA FUNCION EN C++ ES LA SIGUIENTE:TIPO_DE_RETORNO NOMBRE DE LA FUNCION (LISTA DE PARAMETROS) { CUERPO DE LA FUNCION RETURN EXPRESION}
  • 3.
    ESTRUCTURA DE UNAFUNCIONTIPO_DE_RETORNO: TIPO DE VALOR DEVUELTO POR LA FUNCION O LA PALABRA RESERVADA VOID SI LA FUNCION NO DEVUELVE NINGUN VALORNOMBRE DE LA FUNCION: IDENTIFICADOR O NOMBRE DE LA FUNCIONLISTA DE PARAMETROS: LISTA DE DECLARACIONES DE LOS PARAMETROS DE LA FUNCION SEPARADOS POR COMASEXPRESION: VALOR QUE DEVUELVE LA FUNCION
  • 4.
    ESTRUCTURA DE UNAFUNCIONASPECTOS MAS SOBRESALIENTES EN UNA FUNCION:TIPO DE RESULTADO: ES EL TIPO DE DATOS QUE DEVUELVE LA FUNCION C++ Y APARECE ANTES DEL NOMBRE DE LA FUNCIONLISTA DE PARAMETROS: ES UNA LISTA DE PARAMETROS TIPIFICADOS, CON TIPOS QUE UTILIZA EL FORMATO SIGUIENTE: TIPO1 PARAMETRO1, TIPO2 PARAMETRO 2…CUERPO DE LA FUNCION: SE ENCIERRA ENTRE LLAVES DE APERTURA { Y CIERRE } NO HAY PUNTOY COMA DESPUES DE LA LLAVE DE CIERREPASO DE PARAMETROS: POSTERIORMENTE SE VERA QUE EL PASO DE PARAMETROS EN C++ SE PUEDE HACER POR VALOR Y POR REFERENCIA.NO SE PUEDEN DECLARAR FUNCIONES ANIDADASDECLARACION LOCAL: LAS CONSTANTES, TIPOS DE DATOS Y VARIABLES DECLARADAS DENTRO DE LA FUNCION SON LOCALES A LA MISMA Y NO PERDURAN FUERA DE ELLA.VALOR DEVUELTO: MEDIANTE LA PALABRA RESERVADA RETURN SE PUEDE DEVOLVER EL VALOR DE LA FUNCION.
  • 5.
    ESTRUCTURA DE UNAFUNCIONLista de parámetrosTipo de resultadoCabecera de la funciónfloat sum (float num1, float num2){ float resp; resp= num1 + num2 return resp; }Declaración de variablesValor devuelto
  • 6.
    Ejemplo de función#include<iostream.h>using namespace std;float suma(float, float);float a,b;main(){system(‘cls’);cout<<"dame el primer numero";cin>>a;cout<<"dame el segundo numero";cin>>b;cout<<"el resultado es"<<suma(a,b);system(‘pause’);return 0;}float suma (float d,float e){ return d+e; }
  • 7.
    Ejemplo de función#include<iostream.h>using namespace std;float suma(float, float);float a,b;main(){system(‘cls’);cout<<"dame el primer numero";cin>>a;cout<<"dame el segundo numero";cin>>b;Suma();system(‘pause’);return 0;}float suma (float d,float e){Float c;c= d+e;cout<<“el resultado de la suma es”<<c<<endl; }
  • 8.
    NOMBRE DE LAFUNCIONCOMIENZA CON UNA LETRA O UN SUBRAYADO_ Y PUEDE CONTENER TANTAS LETRAS, NUMEROS O SUBRAYADOS COMO DESEE.TIPO DE VALOR DE RETORNO:SI LA FUNCION NO DEVUELVE UN VALOR INT, SE DEBE ESPECIFICAR EL TIPO DE DATO DEVUELTO, EL TIPO Y PARAMETRO DEBEN SER EL MISMO
  • 9.
    RESULTADOS DE UNAFUNCIONUNA FUNCION PUEDE DEVOLVER UN VALOR UNICO. EL RESULTADO SE MUESTRA CON UNA SENTENCIA RETURN CUYA SINTAXIS ES:RETURN (EXPRESION);RETURN (A+B+C);
  • 10.
    LLAMADA A UNAFUNCIONLAS FUNCIONES PUEDEN SER EJECUTADAS, HAN DE SER LLAMADAS O INVOCADAS. CUALQUIER EXPRESION PUEDE CONTENER UNA LLAMADA A UNA FUNCION QUE REDIRIGIRA EL CONTROL DEL PROGRAMA A LA FUNCION NOMBRADA. NORMALMENTE LA LLAMADA A UNA FUNCION SE EALIZARA DESDE LA FUNCION PRINCIPAL MAIN ().
  • 11.
    PROTOTIPOS DE UNAFUNCIONC++ REQUIERE QUE UNA FUNCION SE DECLARE O DEFINA ANTES DE SU USO. LA DECLARACION DE UNA FUNCION SE DENOMINA PROTOTIPO. LOS PROTOTIPOS DE UNA FUNCION CONTIENEN LA MISMA CABECERA DE LA FUNCION, CON LA DIFERENCIA DE QUE LOS PROTOTIPOS TERMINAN CON UN PUNTO Y COMA, UN PROTOTIPO CONSTA DE LOS SIGUIENTES ELEMENTOS: NOMBRE DE LA FUNCION, UNA LISTA DE ARGUMENTOS ENCERREDAOS ENTRE PARENTESIS Y UN PUNTOYCOMA.
  • 12.
    PARAMETRO DE UNAFUNCIONC++ PROPORCIONA DOS METODOS PARA PASAR VARIABLES (PARAMETROS) ENTRE FUNCIONES. UNA FUNCION PUEDE UTILIZAR PARAMETROS POR VALOR Y PARAMETROS POR REFERENCIA, O PUEDE NO TENER PARAMETROS
  • 13.
    PASO DE PARAMETROPOR VALORTAMBIEN LLAMADO PASO POR COPIA, SIGNIFICA QUE CUANDO C++, COMPILA LA FUNCION Y EL CODIGO QUE LLAMA A LA FUNCION, LA FUNCION RECIBE UNA COPIA DE LOS VALORES DE LOS PARAMETROS. SI SE CAMBIA EL VALOR DE UN PARMETRO VARIABLE LOCAL, EL CAMBIO SOLO AFECTA A LA FUNCION Y NO TIENE EFECTO FUERA DE LA FUNCION.EL METODO POR DEFECTO DE PASAR PARAMETROS ES POR VALOR A MENOS QUE PASEN ARREGLOS. LOS ARREGLOS SE PASAN POR DIRECCION.
  • 14.
    EJEMPLO PASO PORVALOR#include <iostream.h>using namespace std;void demostracion (int valor);void main (void){system (‘cls’);int n=10;cout<<"antes de llamar a demostracion, n = " <<n<<endl;cin.get();demostracion(n);cout<<"despues de llamar a demostracion local, n"<<n<<endl;system (‘pause’);cout<<"pulsa enter para continuar";system(‘pause’);}void demostracion(int valor){ cout<<"dentro de demostracion, valor = "<<valor<<endl; system(‘pause’); valor=999; cout<<"dentro de demostracion, valor=" <<valor<<endl; system(‘pause’); }
  • 15.
    EJEMPLO PASO PORVALOR#include <iostream.h>usingnamespacestd;intdemostracion (int valor);intmain (void){system(“cls”);int n=10;cout<<"antes de llamar a demostracion, n = " <<n<<endl;cin.get();cout<<"despues de llamar a demostracion local, n"<<demostracion(n);System(“pause”);}intdemostracion(int valor){cout<<"dentro de demostracion, valor = "<<valor;system(‘pause’); valor=999;return valor; }