#include <iostream>
using namespace std;
#define DIM 3
struct tipoFecha {
int dia;
int mes;
};
struct tipoAmigo {
char nombre[30];
struct tipoFecha cumple;
};
void Inicializar (struct tipoAmigo agenda[], int l);
void Mostrar (struct tipoAmigo agenda[], int l);
struct tipoFecha Solicitar_Fecha(void);
void Buscar_Amigos(struct tipoAmigo agenda[], int l, struct tipoFecha f);
int main(void)
{
//Vector en el que se almacenan los datos de mis amigos
struct tipoAmigo amigos[DIM];
//Fecha que queremos comprobar
struct tipoFecha fecha;
Inicializar(amigos, DIM);
Mostrar(amigos, DIM);
fecha = Solicitar_Fecha();
Buscar_Amigos(amigos, DIM, fecha);
return 0;
}
//Definicición de las funciones:
void Inicializar (struct tipoAmigo agenda[], int l){
//Inicializa los datos de nuestros amigos
int i;
for(i=0; i<l; i++){
cout<<"Introduzca el nombre, dia y mes del cumpleaños del amigo "<<i+1<<" de la lista\n";
cin>>agenda[i].nombre>>agenda[i].cumple.dia>>agenda[i].cumple.mes;
}
}
void Mostrar (struct tipoAmigo agenda[], int l){
//Muestra los datos de nuestros amigos
int i;
cout<<"Agenda de cumpleanios \n";
for(i=0; i<l; i++){
cout<<agenda[i].nombre<<"\t"<<agenda[i].cumple.dia<<"\t"<<agenda[i].cumple.mes<<endl;
}
cout<<" ------------------ \n";
return;
}
struct tipoFecha Solicitar_Fecha(void){
struct tipoFecha f;
cout<<"Introduzca dia y mes\n";
cin>>f.dia;
cin>>f.mes;
return (f);
}
void Buscar_Amigos(struct tipoAmigo agenda[], int l, struct tipoFecha f){
//Busca todos los amigos que cumplen años en f.
int i;
int contador=0;
for(i=0; i<l; i++){
if((agenda[i].cumple.dia==f.dia) && (agenda[i].cumple.mes==f.mes)){
cout<<agenda[i].nombre<<" cumple anios el dia indicado \n";
contador++;
}
}
if(contador==0)
cout<<"No tienes amigos que cumplan anios el "<<f.dia<<"/"<<f.mes<<endl;
}