#include<stdio.h>
#include<stdlib.h>

typedef struct 
{	
	int jour;
	int mois;
	int annee;
}Date;

typedef struct
{
	Date date;
	int nb_dep;
	float *depense;
}Depense_jour;

// Fonction de saisie du tableau
float * saisie_prix(int nb)
{
	float * tab;
	int i;
	// Allocation dynamique du tableau
	tab = (float *) malloc(sizeof(float)*nb);
	for(i=0;i<nb;i=i+1)
	{
		printf("prix %d\n",i+1);
		scanf("%f",&tab[i]);
	}
	return tab;
}

// Fonction somme dépensée
float somme(float * tab,int taille)
{
	int i;
	float S;
	S=0;
	for(i=0;i<taille;i=i+1)
	{
		S=S+tab[i];
	}
	return S;
}


// Fonction de saisie d'une date
Date saisie_date()
{
	Date d;
	printf("Jour : \n");
	scanf("%d",&d.jour);
	printf("Mois : \n");
	scanf("%d",&d.mois);
	printf("Année : \n");
	scanf("%d",&d.annee);
	return d;
}

// Fonction de saisie des depense d'une journée
Depense_jour saisie_depense_jour()
{
	Depense_jour dj;
	int nb_kdo = 0;
	dj.date = saisie_date();
	while(nb_kdo<=0)
	{
		printf("Combien de cadeaux avez vous achetez ce jour là ?\n");
		scanf("%d",&nb_kdo);
	}
	dj.nb_dep=nb_kdo;
	dj.depense = saisie_prix(nb_kdo);
	return dj;
}

// Fonction Affichage Date
void affiche_date(Date d)
{
	printf("%d - %d - %d\n",d.jour,d.mois,d.annee);
}

// Fonction Affichage Jour et total dépensé
void affiche_total_jour(Depense_jour dj)
{
	affiche_date(dj.date);
	printf("%f euros\n",somme(dj.depense,dj.nb_dep));
}

// Fonction Total pour l'ensemble des jours

float somme_total(Depense_jour dj[100],int nb_j)
{
	int i;
	float total = 0;
	for(i=0;i<nb_j;i=i+1)
	{
		total = total + somme(dj[i].depense,dj[i].nb_dep);
	}
	return total;
}

// Fonction Moyenne depensé par jour

float moy_total(Depense_jour dj[100],int nb_j)
{
	return (somme_total(dj,nb_j)/nb_j);
}

int main()
{
	Depense_jour tab[100];
	int n,i;
	printf(" Combien de jour voullez vous entrer ? (MAX = 100)\n");
	scanf("%d",&n);
	for(i = 0;i<n;i=i+1)
	{
		tab[i]=saisie_depense_jour();
	}
	for(i = 0;i<n;i=i+1)
	{
		printf("************************\n");
		affiche_total_jour(tab[i]);
	}
	
	printf("\n Total sur %d jours = %f euros\n",n,somme_total(tab,n));
	printf(" Moyenne par jour = %f euros\n",moy_total(tab,n));
	return 1;
}
