Вы находитесь на странице: 1из 4

Cuando se llama a una funcin, la ejecucin del programa pasa a la funcin y cuando

sta acaba, la ejecucin contina a partir del punto donde se produjo la llamada.
Ejemplos de funciones en C++
Ejemplo 1:
El siguiente programa lee por teclado un ao y calcula y muestra si es bisiesto. Para
realizar el clculo utiliza una funcin llamada bisiesto.
La funcin bisiesto recibe el ao ledo por teclado, comprueba si es o no bisiesto y
devuelve 1 si lo es 0 si no lo es.
// Programa que lee un ao y muestra si es o no bisiesto
#include <iostream>
using namespace std;
int bisiesto(int); //declaracin o prototipo de la funcin
int main()
{
int anio;
cout<<"Introduce a"<<(char)164<<"o: "; //164 ascii de
cin >> anio;
if(bisiesto(anio)) //llamada a la funcin
cout << "Bisiesto" << endl;
else
cout << "No es bisiesto" << endl;
system("pause");
}
int bisiesto(int a) //definicin de la funcin
{
if(a%4==0 and a%100!=0 or a%400==0)
return 1;
else
return 0;
}
En la llamada a la funcin bisiesto, el valor de la variable anio (parmetro actual) se
copia en la variable a (parmetro formal) y la funcin trabaja con esta variable. El valor
1 0 devuelto por return en la funcin pasa a ser el valor de la condicin:
Ejemplo 2
Programa que lee por teclado la fecha actual y la fecha de nacimiento de una persona y
calcula su edad.
El programa utiliza tres funciones:
fecha_valida: comprueba si la fecha leda es correcta.
bisiesto: comprueba si un ao es bisiesto. La llama la funcin fecha_valida
calcular_edad: recibe las dos fechas y devuelve la edad.

// Programa C++ que lee la fecha actual y la fecha de nacimiento


// de una persona y calcula su edad
#include <iostream>
using namespace std;
int bisiesto(int);
int fecha_valida(int , int, int);
int calcular_edad(int, int, int, int, int, int);
int main()
{
int diaa, mesa, anioa, dian, mesn, anion, edad;
do
{
cout << "Introduce fecha actual: " << endl;
cout << "dia : "; cin >> diaa;
cout << "mes : "; cin >> mesa;
cout << "a" << (char)164 << "o: "; cin >> anioa;
}while(!(fecha_valida(diaa, mesa, anioa)));
do
{
cout << endl << "Introduce fecha de nacimiento: " << endl;
cout << "dia : "; cin >> dian;
cout << "mes : "; cin >> mesn;
cout << "a" << (char)164 << "o: "; ; cin >> anion;
}while(!(fecha_valida(dian, mesn, anion)));
edad = calcular_edad(diaa, mesa, anioa, dian, mesn, anion);
cout << endl << "Edad : " << edad << endl << endl;
system("pause");
}

int calcular_edad(int da, int ma, int aa, int dn, int mn, int an)
{
int edad = aa - an;
if(ma < mn)
edad--;
else if(ma == mn and da < dn)
edad--;
return edad;

int bisiesto(int a) // definicin de la funcin bisiesto


{
if(a%4==0 and a%100 !=0 or a%400==0)
return 1;
else
return 0;
}
int fecha_valida(int d, int m, int a) //definicin de fecha_valida
{
if(d < 1 or d > 31 or m < 1 or m > 12 or a < 1)
{
return 0;
}
switch(m)
{
case 4:
case 6:
case 9:
case 11: if(d > 30)
{
return 0;
}
break;
case 2: if(bisiesto(a))
{
if(d > 29)
{
return 0;
}
}
else if(d > 28)
{
return 0;
}
break;
}
return 1;
}
La funcin fecha_valida se llama dos veces en el programa, una para comprobar si la
fecha actual es correcta y otra para comprobar si la fecha de nacimiento es correcta.
Esta Funcin devuelve 1 si es correcta y 0 en caso contrario. La funcin fecha_valida
llama a la funcin bisiesto para comprobar si el ao es bisiesto.
La funcin calcular_edad recibe las dos fechas y calcula y devuelve la edad de la persona.
El valor de la variable edad que aparece en la sentencia return se copia en la variable
edad de la llamada.

Вам также может понравиться

  • Actividad 1 POO Utel
    Actividad 1 POO Utel
    Документ4 страницы
    Actividad 1 POO Utel
    Jonathan Manoatl
    0% (1)
  • Poo PHP
    Poo PHP
    Документ32 страницы
    Poo PHP
    EDWIN MACIAS
    Оценок пока нет
  • Estudio de Riesgos y Vuln PDF
    Estudio de Riesgos y Vuln PDF
    Документ46 страниц
    Estudio de Riesgos y Vuln PDF
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Anexo #12 Y13
    Anexo #12 Y13
    Документ2 страницы
    Anexo #12 Y13
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Ficha de Caracterización Psicolingüística Castellano Como L2
    Ficha de Caracterización Psicolingüística Castellano Como L2
    Документ6 страниц
    Ficha de Caracterización Psicolingüística Castellano Como L2
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • OFICIO - Finalizacion-2018
    OFICIO - Finalizacion-2018
    Документ13 страниц
    OFICIO - Finalizacion-2018
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • ANEXO Unido
    ANEXO Unido
    Документ31 страница
    ANEXO Unido
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • UYRUMPI
    UYRUMPI
    Документ7 страниц
    UYRUMPI
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • UYRUMPI
    UYRUMPI
    Документ5 страниц
    UYRUMPI
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Consolidado de Horas Efectivas
    Consolidado de Horas Efectivas
    Документ2 страницы
    Consolidado de Horas Efectivas
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Carta #022 PDF
    Carta #022 PDF
    Документ1 страница
    Carta #022 PDF
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Inspeccion de Seguridad
    Inspeccion de Seguridad
    Документ21 страница
    Inspeccion de Seguridad
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Directorio Institucional - I.E.
    Directorio Institucional - I.E.
    Документ3 страницы
    Directorio Institucional - I.E.
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Nelly Osmara
    Nelly Osmara
    Документ22 страницы
    Nelly Osmara
    Alditho Pomatay Paquiyauri
    100% (1)
  • CNP 2018 I. E. I. #1030 Uyeumpi Acoria
    CNP 2018 I. E. I. #1030 Uyeumpi Acoria
    Документ4 страницы
    CNP 2018 I. E. I. #1030 Uyeumpi Acoria
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Pat 2018 Elyta Muque
    Pat 2018 Elyta Muque
    Документ16 страниц
    Pat 2018 Elyta Muque
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Oficio 2019
    Oficio 2019
    Документ7 страниц
    Oficio 2019
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Oficios Dora 2016
    Oficios Dora 2016
    Документ14 страниц
    Oficios Dora 2016
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • CUADRO
    CUADRO
    Документ1 страница
    CUADRO
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • La Cuaresm1
    La Cuaresm1
    Документ2 страницы
    La Cuaresm1
    Alexander Cabrera Montero
    Оценок пока нет
  • Informe Ceci Allato
    Informe Ceci Allato
    Документ10 страниц
    Informe Ceci Allato
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Cronograma PQ 650 - 2017 Mayo
    Cronograma PQ 650 - 2017 Mayo
    Документ7 страниц
    Cronograma PQ 650 - 2017 Mayo
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Estamos Ubicado en Av. Huancavelica #112-Huachocolpa: Canjeamos Con Vale Fise
    Estamos Ubicado en Av. Huancavelica #112-Huachocolpa: Canjeamos Con Vale Fise
    Документ8 страниц
    Estamos Ubicado en Av. Huancavelica #112-Huachocolpa: Canjeamos Con Vale Fise
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Apoyo Ala Poblacion
    Apoyo Ala Poblacion
    Документ1 страница
    Apoyo Ala Poblacion
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Informe de Trabajos en PQ 650
    Informe de Trabajos en PQ 650
    Документ1 страница
    Informe de Trabajos en PQ 650
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Lista de Utiles de Escritorio
    Lista de Utiles de Escritorio
    Документ2 страницы
    Lista de Utiles de Escritorio
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Cuenta
    Cuenta
    Документ11 страниц
    Cuenta
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Presentación 1
    Presentación 1
    Документ1 страница
    Presentación 1
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Solicit Ud
    Solicit Ud
    Документ13 страниц
    Solicit Ud
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Parro Quia
    Parro Quia
    Документ2 страницы
    Parro Quia
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Legion
    Legion
    Документ2 страницы
    Legion
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Fotos Taller PDF
    Fotos Taller PDF
    Документ8 страниц
    Fotos Taller PDF
    Alditho Pomatay Paquiyauri
    Оценок пока нет
  • Lista Enlazada Simple
    Lista Enlazada Simple
    Документ8 страниц
    Lista Enlazada Simple
    Luis Estuardo De Leon R
    Оценок пока нет
  • Practica Eventos Del Teclado
    Practica Eventos Del Teclado
    Документ4 страницы
    Practica Eventos Del Teclado
    Tania Mendoza
    Оценок пока нет
  • Ciclo 1 Fundamentos de Programación Sesión 7
    Ciclo 1 Fundamentos de Programación Sesión 7
    Документ14 страниц
    Ciclo 1 Fundamentos de Programación Sesión 7
    Alexander Olivos
    Оценок пока нет
  • OWL Protege
    OWL Protege
    Документ22 страницы
    OWL Protege
    ratius
    Оценок пока нет
  • 4 Elementos y Pilares Básicos de La Programación Orientada A Objetos POO
    4 Elementos y Pilares Básicos de La Programación Orientada A Objetos POO
    Документ2 страницы
    4 Elementos y Pilares Básicos de La Programación Orientada A Objetos POO
    Vivi Vargas
    Оценок пока нет
  • Guia LAB 2-Clases Objetos
    Guia LAB 2-Clases Objetos
    Документ11 страниц
    Guia LAB 2-Clases Objetos
    jhonny ivan arias fernandez
    Оценок пока нет
  • Orm - Jpa
    Orm - Jpa
    Документ29 страниц
    Orm - Jpa
    VicTor Jhoan
    Оценок пока нет
  • Kotlin
    Kotlin
    Документ3 страницы
    Kotlin
    Bryan anaya
    Оценок пока нет
  • Modelo de Informe Practica #07 - 2020P
    Modelo de Informe Practica #07 - 2020P
    Документ16 страниц
    Modelo de Informe Practica #07 - 2020P
    DenilsonCarlosAlaSamayani
    Оценок пока нет
  • 4 Jerarquias
    4 Jerarquias
    Документ12 страниц
    4 Jerarquias
    Ruiz Huillca
    Оценок пока нет
  • Algoritmica II 2017-I Plan 2009
    Algoritmica II 2017-I Plan 2009
    Документ8 страниц
    Algoritmica II 2017-I Plan 2009
    Alex rq
    Оценок пока нет
  • Scala (Lenguaje de Programación)
    Scala (Lenguaje de Programación)
    Документ5 страниц
    Scala (Lenguaje de Programación)
    Renzo Gabriel Aranda
    Оценок пока нет
  • Programacion
    Programacion
    Документ3 страницы
    Programacion
    Ricardo Jimenez Ibarra
    Оценок пока нет
  • Clase 2 - Listas y Tuplas
    Clase 2 - Listas y Tuplas
    Документ59 страниц
    Clase 2 - Listas y Tuplas
    Marco Santini
    Оценок пока нет
  • FDP Cod
    FDP Cod
    Документ5 страниц
    FDP Cod
    Miguel Angel Torres J
    Оценок пока нет
  • Relaciones Entre Clases
    Relaciones Entre Clases
    Документ27 страниц
    Relaciones Entre Clases
    Brando Herrera
    Оценок пока нет
  • Generaciones Del Lenguajes de Programación
    Generaciones Del Lenguajes de Programación
    Документ3 страницы
    Generaciones Del Lenguajes de Programación
    Wendy Llerena
    Оценок пока нет
  • Paradigmas de Programación
    Paradigmas de Programación
    Документ10 страниц
    Paradigmas de Programación
    KevvyReyesVasquez
    Оценок пока нет
  • Poo1 PDF
    Poo1 PDF
    Документ18 страниц
    Poo1 PDF
    Elizabeth Huamán
    Оценок пока нет
  • Herencia
    Herencia
    Документ52 страницы
    Herencia
    Calin Salazar
    Оценок пока нет
  • ComponentendenlanGUInnnParten1 815ecf0ff926f20
    ComponentendenlanGUInnnParten1 815ecf0ff926f20
    Документ27 страниц
    ComponentendenlanGUInnnParten1 815ecf0ff926f20
    CARLOS FRANCISCO CHICANGANA TITIMBO
    Оценок пока нет
  • ACA Semana 4
    ACA Semana 4
    Документ5 страниц
    ACA Semana 4
    Numerología Bendecida
    Оценок пока нет
  • CAE Programación M2
    CAE Programación M2
    Документ116 страниц
    CAE Programación M2
    David Leon Paredon
    Оценок пока нет
  • Semana 3
    Semana 3
    Документ6 страниц
    Semana 3
    Azael Rodriguez
    Оценок пока нет
  • Teoría 5
    Teoría 5
    Документ111 страниц
    Teoría 5
    upperozy-3251
    Оценок пока нет
  • DJ-Unidad I - SEGUNDA SEMANA - Actividades de Afianciamiento - Norma Perez
    DJ-Unidad I - SEGUNDA SEMANA - Actividades de Afianciamiento - Norma Perez
    Документ2 страницы
    DJ-Unidad I - SEGUNDA SEMANA - Actividades de Afianciamiento - Norma Perez
    Lauti Gomez
    Оценок пока нет
  • Ejercicios Calloc Malloc Free Realloc
    Ejercicios Calloc Malloc Free Realloc
    Документ4 страницы
    Ejercicios Calloc Malloc Free Realloc
    Johan Segovia
    Оценок пока нет
  • Herencia y Amistad
    Herencia y Amistad
    Документ3 страницы
    Herencia y Amistad
    Moraima Moreno
    Оценок пока нет