Ajout de fonctions

master
Kyllian CHABANON 2 years ago
commit b5ff33c384

@ -1,10 +1,10 @@
Date nbActivitesJour 01 500
12082022 500 02 550
5092022 525 03 600
7092022 740 04 520
8092022 812 05 500
9092022 850 06 515
10092022 620 07 500
11092022 601 08 612
12092022 422 09 705
13092022 501 10 800

243
SAE.c

@ -1,25 +1,26 @@
#include "SAE.h" #include "SAE.h"
int Ouverture(int tNoCarte[], int tage[], int tPointsCarte[], int tCarteActive[], int tNbActivitesJour[], int tDate[], int tmax) int Ouverture(int tNoCarte[], int tage[], int tPointsCarte[], int tCarteActive[], int tNbActivitesJour[], int tDate[], int tmax, int *pasAct)
{ {
int i = 0, j = 0; int pasMembres, pasAct;
pasMembres = OuvertureMembres(tNoCarte, tage, tPointsCarte, tCarteActive, tmax);
pasAct = OuvertureActivitesJour(tNbActivitesJour, tDate, tmax);
*pasAct = pasAct;
return pasMembres;
}
int OuvertureMembres(int tNoCarte[], int tage[], int tPointsCarte[], int tCarteActive[], int tmax)
{
int i = 0;
int NoCarte, age, pointsCarte, CarteActive; int NoCarte, age, pointsCarte, CarteActive;
int Date, nbActivitesJour; FILE *flot;
FILE *flot, *jour;
flot = fopen("membres.don", "r"); flot = fopen("membres.don", "r");
jour = fopen("ActivitesJour.don", "r");
if(flot == NULL) if(flot == NULL)
{ {
printf("Pb d'ouverture du fichier membres.don\n"); printf("Pb d'ouverture du fichier membres.don\n");
return -1; return -1;
} }
if (jour == NULL) fscanf(flot, "%d%d%d%d", &NoCarte, &age, &pointsCarte, &CarteActive);
{
printf("Pb d'ouverture du fichier ActivitesJour.don\n");
return -1;
}
fscanf(flot, "%d%d%d%d%d%d%d", &NoCarte, &age, &pointsCarte, &CarteActive);
fscanf(jour, "%d%d", &Date, &nbActivitesJour);
while(!feof(flot)) while(!feof(flot))
{ {
if (i == tmax) if (i == tmax)
@ -35,24 +36,227 @@ int Ouverture(int tNoCarte[], int tage[], int tPointsCarte[], int tCarteActive[]
fscanf(flot, "%d%d%d%d", &NoCarte, &age, &pointsCarte, &CarteActive); fscanf(flot, "%d%d%d%d", &NoCarte, &age, &pointsCarte, &CarteActive);
i++; i++;
} }
fclose(flot);
return i;
}
int OuvertureActivitesJour(int tNbActivitesJour[], int tDate[], int tmax)
{
int i = 0;
int Date, nbActivitesJour;
FILE *jour;
jour = fopen("ActivitesJour.don", "r");
if(jour == NULL)
{
printf("Pb d'ouverture du fichier ActivitesJour.don\n");
return -1;
}
fscanf(jour, "%d%d", &Date, &nbActivitesJour);
while(!feof(jour)) while(!feof(jour))
{ {
if (j == tmax) if(i == tmax)
{ {
printf("Tableau plein\n"); printf("Tableau plein\n");
fclose(jour); fclose(jour);
return -1; return -1;
} }
tDate[j] = Date; tDate[i] = Date;
tNbActivitesJour[j] = nbActivitesJour; tNbActivitesJour[i] = nbActivitesJour;
fscanf(jour, "%d%d", &Date, &nbActivitesJour); fscanf(jour, "%d%d", &Date, &nbActivitesJour);
j++; i++;
} }
fclose(jour); fclose(jour);
fclose(flot);
return i; return i;
} }
int choixMenu(void)
{
int choix;
printf("\t Gestion des matières\n");
printf("1.\tAffichage\n");
printf("2.\tAjouter un adhérent\n");
printf("3.\tModifier l'âge d'un adhérent\n");
printf("4.\tSuppression d'un adhérent\n");
printf("5.\tAjout de points sur une carte\n");
printf("6.\tModification de l'état de la carte\n");
printf("7.\tCréditer une activité à une carte\n");
printf("8.\tQuitter\n");
printf("\noption choisie :\n");
scanf("%d", &choix);
return choix;
}
int choixMenuAffichage(void)
{
int choix;
printf("\t Gestion des matières\n");
printf("1.\tAffichage des informations d'un adhérent\n");
printf("2.\tAffichage des informations de tous les adhérents\n");
printf("3.\tAffichage du nombre dentrées totale dans la journée\n");
printf("4.\tAffichage du nombre d'entrées totale de toutes les journées\n");
printf("5.\tAffichage du nombre total d'adhérents\n");
printf("6.\tquitter\n");
printf("\noption choisie :\n");
scanf("%d", &choix);
return choix;
}
void Affichage1Adherent()
{
}
void AffichageTousAdherents()
{
}
void AffichageNbEntreesJour()
{
}
void AffichageNbEntreesTousJours()
{
}
void gestionMatieres(void)
{
int tNoCarte[20] = {0}, tage[20] = {0}, tPointsCarte[20] = {0}, tCarteActive[20] = {0};
int tDate[20] = {0}, tNbActivitesJour[20] = {0};
int tmax = 20, nbelem, choix, pasAct;
nbelem = Ouverture(tNoCarte, tage, tPointsCarte, tCarteActive, tNbActivitesJour, tDate, tmax, &pasAct);
if(nbelem < 0)
{
printf("Erreur d'ouverture du fichier ou tableau plein !!!\n");
return ;
}
choix = choixMenu();
while(choix != 8)
{
if(choix == 1)
{
choix = choixMenuAffichage();
while(choix != 6)
{
if(choix == 1)
{
}
if(choix == 2)
{
}
if(choix == 3)
{
}
if(choix == 4)
{
}
if(choix == 5)
{
}
choix = choixMenuAffichage();
}
}
if(choix == 2)
{
}
if(choix == 3)
{
}
if(choix == 4)
{
}
if(choix == 5)
{
}
if(choix == 6)
{
}
choix = choixMenu();
}
sauvegarde(tNoCarte, tage, tPointsCarte, tCarteActive, tNbActivitesJour, tDate, nbelem);
exit(1);
}
int Sauvegarde(int tNoCarte[], int tage[], int tPointsCarte[], int tCarteActive[], int tNbActivitesJour[], int tDate[], int nbelem)
{
int i, j;
FILE *flot, *jour;
flot = fopen("membres.don", "a");
jour = fopen("ActivitesJour.don", "a");
if(flot == NULL)
{
printf("Pb d'ouverture du fichier membres.don\n");
return -1;
}
if(jour == NULL)
{
printf("Pb d'ouverture du fichier ActivitesJour.don\n");
return -1;
}
for(i = 0; i < (nbelem-1); i++)
{
fprintf(flot, "\t%d\t%d\t\t%d\t\t%d\n", tNoCarte[i], tage[i], tPointsCarte[i], tCarteActive[i]);
}
for(j = 0; j < (nbelem-1); j++)
{
fprintf(jour, "%d\t\t%d\n", tDate[j], tNbActivitesJour[j]);
}
fclose(jour);
fclose(flot);
}
void ajouterPoints(int tNumCarte[], int tPoints[], int tailleLog)
{
int numCarte, nbPoints, trouve, index;
char choix;
printf("Entrez le numéro d'adhérent : ");
scanf("%d", &numCarte);
index = recherche(tNumCarte, tailleLog, numCarte, &trouve);
while (trouve == 0)
{
printf("Numéro de carte non trouvé. Veuillez réessayer.\nEntrez le numéro d'adhérent : ");
scanf("%d", &numCarte);
index = recherche(tNumCarte, tailleLog, numCarte, &trouve);
}
printf("Entrez le nombre de points à ajouter : ");
scanf("%d", &nbPoints);
printf("Vous voulez bien ajouter %d points à la carte n°%d ? (O/n)", nbPoints, numCarte);
scanf("%c%*c", &choix);
if (choix == 'n' || choix == 'N') {
printf("Annulation");
}
else
{
modifierPoints(tNumCarte, tPoints, tailleLog, numCarte, nbPoints);
}
}
int modifierPoints(int tNumCarte[], int tPoints[], int tailleLog, int numCarte, int nbPoints)
{
int index, trouve;
index = recherche(tNumCarte, tailleLog, numCarte, &trouve);
if (trouve == 0)
{
printf("Numéro de carte non trouvé. Annulation de l'opétation.");
return 0;
}
else
{
tPoints[index] += nbPoints;
return 1;
}
}
int recherche(int tab[], int tailleLog, int valeur, int *trouve) int recherche(int tab[], int tailleLog, int valeur, int *trouve)
{ {
for (int i = 0; i < tailleLog; i++) for (int i = 0; i < tailleLog; i++)
@ -260,16 +464,11 @@ int CreationAdherents(int tNoCarte[], int tage[], int tPointsCarte[], int tCarte
nbelem = nbelem + 1; nbelem = nbelem + 1;
} }
/*
void pointsBonus() void pointsBonus()
{ {
} }
int CreationAdherents(int tAdherents[], nbClients) int CreationAdherents(int tAdherents[], nbClients)
{ {
int NoCarte, nom, prenom, age, pointsCarte, CarteActive, nbActivitéesJour; int NoCarte, nom, prenom, age, pointsCarte, CarteActive, nbActivitéesJour;

@ -1,11 +1,13 @@
#include <stdio.h> #include <stdio.h>
#include <stdlib.h> #include <stdlib.h>
int Ouverture(int tNoCarte[], int tage[], int tPointsCarte[], int tCarteActive[], int tNbActivitesJour[], int tDate[], int tmax); int OuvertureMembres(int tNoCarte[], int tage[], int tPointsCarte[], int tCarteActive[], int tmax);
int OuvertureActivitesJour(int tNbActivitesJour[], int tDate[], int tmax);
void testOuverture(void); void testOuverture(void);
/*
int Sauvegarde(); int Sauvegarde();
void testSauvegarde(void); void testSauvegarde(void);
/*
int pointsBonus(); int pointsBonus();
int CreationAdherent(); int CreationAdherent();
int FrequenceCentre(); int FrequenceCentre();

BIN
exe

Binary file not shown.

@ -1,4 +1,3 @@
Ncarte age pointsCarte carteActive
1 22 10 0 1 22 10 0
2 25 5 1 2 25 5 1
3 47 7 1 3 47 7 1

@ -2,26 +2,28 @@
void testOuverture(void) void testOuverture(void)
{ {
int tNoCarte[500] = {0}, tage[500] = {0}, tPointsCarte[500] = {0}, tCarteActive[500] = {0}; int tNoCarte[20] = {0}, tage[20] = {0}, tPointsCarte[20] = {0}, tCarteActive[20] = {0};
int tDate[500] = {0}, tNbActivitesJour[500] = {0}; int tDate[20] = {0}, tNbActivitesJour[20] = {0};
int tmax = 500, pas, i; int tmax = 20, pasMembres, pasAct, i;
pas = Ouverture(tNoCarte, tage, tPointsCarte, tCarteActive, tNbActivitesJour, tDate, tmax); pasMembres = OuvertureMembres(tNoCarte, tage, tPointsCarte, tCarteActive, tmax);
printf("Pas: %d", &pas); pasAct = OuvertureActivitesJour(tNbActivitesJour, tDate, tmax);
printf("Pas membre: %d\nPas Act : %d\n", &pasMembres, &pasAct);
printf("Ncarte age pointsCarte carteActive nbActivitesJour Date taillemax\n"); printf("Ncarte age pointsCarte carteActive nbActivitesJour Date taillemax\n");
for(i=0; i < pas; i++) for(i=0; i < pasMembres; i++)
printf("\t%d\t%d\t%d\t%d\t%d\t%d\t%d\n", tNoCarte[i], tage[i], tPointsCarte[i], tCarteActive[i], tNbActivitesJour[i], tDate[i], &tmax); printf("%d\t%d\t%d\t%d\t\t%d\t\t%d\t%d\n", tNoCarte[i], tage[i], tPointsCarte[i], tCarteActive[i], tNbActivitesJour[i], tDate[i], tmax);
} }
/*
void testSauvegarde(void) void testSauvegarde(void)
{ {
int tNoCarte[500] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, tage[500] = {22, 25, 47, 38, 18, 46, 36, 19, 21, 30}, tPointsCarte[500] = {10, 5, 7, 8, 8, 6, 6, 2, 1, 4}, tCarteActive[500] = {0, 1, 1, 1, 1, 1, 0, 1, 1, 1}; int tNoCarte[500] = {1, 2, 3, 4, 5, 6, 7, 8, 9, 10}, tage[500] = {22, 25, 47, 38, 18, 46, 36, 19, 21, 30}, tPointsCarte[500] = {10, 5, 7, 8, 8, 6, 6, 2, 1, 4}, tCarteActive[500] = {0, 1, 1, 1, 1, 1, 0, 1, 1, 1};
int tDate[500] = {12082022, 5092022, 7092022, 8092022, 9092022, 10092022, 11092022, 12092022, 13092022, 14092022}, tNbActivitesJour[500] = {500, 525, 740, 812, 850, 620, 601, 422, 501, 520}; int tDate[500] = {12082022, 5092022, 7092022, 8092022, 9092022, 10092022, 11092022, 12092022, 13092022, 14092022}, tNbActivitesJour[500] = {500, 525, 740, 812, 850, 620, 601, 422, 501, 520};
Sauvegarde(tNoCarte, tage, tPointsCarte, tCarteActive, tNbActivitesJour, tDate, 10); Sauvegarde(tNoCarte, tage, tPointsCarte, tCarteActive, tNbActivitesJour, tDate, 10);
} }
*/
int main(void) int main(void)
{ {
//testOuverture(); testOuverture();
testSauvegarde(); //testSauvegarde();
return 0; return 0;
} }
Loading…
Cancel
Save