debut etape 3

master
Louis GERMAIN 1 year ago
parent f6fb223381
commit 35bd43db59

@ -4,4 +4,5 @@
#include "structures.h"
char *readAdress(FILE *flot);
Tache **chargeTaches(Offre *tabTravaux[]);
Tache **chargeTaches(Offre *tabTravaux[]);
Precedence *loadPrec(int *tmax);

@ -43,6 +43,12 @@ int dateDebut;
bool traite;
} Tache;
typedef struct
{
char travauxPrec[30];
char travauxSucc[30];
} Precedence;
//Devis
void displayDevis(Devis d);

@ -15,7 +15,7 @@ char *readAdress(FILE *flot)
s = (char *)realloc(adresse, tmax*sizeof(char));
if (s==NULL)
{
printf("Erreur reallocation pour str adresse\n");
printf("\033[0;31mErreur: \033[0mreallocation pour str adresse\n");
exit(1);
}
adresse=s;
@ -28,7 +28,56 @@ char *readAdress(FILE *flot)
return adresse;
}
Precedence *loadPrec(int *tmax)
{
FILE *prec;
int i=0, (*tmax)=5;
Precedence *tabP, *s, pre;
prec=fopen("précédence.txt", "r");
if (prec == NULL)
{
printf("\033[0;31mErreur: \033[0mouverture de 'précédence.txt'\n");
}
tabP = (Precedence *)malloc(tmax*sizeof(Precedence));
while(!feof(prec))
{
if(i==tmax)
{
(*tmax)+=5;
s = (Precedence *)malloc((*tmax)*sizeof(Precedence));
if (s==NULL)
{
printf("\033[0;31mErreur: \033[0mreallocation pour fichier précédence\n");
exit(1);
}
tabP = s;
}
fscanf("%s %s",p.travauxPrec, p.travauxSucc);
i++;
}
fclose(prec);
}
Tache **chargeTaches(Offre *tabTravaux[])
{
Tache *tabTache[8];
int i;
Tache *t;
for (i=0; i<tmaxTravaux; i++)
{
t=(Tache *)malloc(sizeof(Tache));
if (t==NULL)
{
printf("\033[0;31mErreur: \033[0mmalloc tache\n");
exit(1);
}
t->tache = tabTravaux[i]->travaux;
t->duree = tabTravaux[i]->ldevis->duree;
tabTache[i] = t;
}
return tabTache;
}

@ -10,7 +10,7 @@ void displayDevis(Devis d)
}
Devis readDevis(Offre *tabTravaux[]) // A finir
Devis readDevis(Offre *tabTravaux[])
{
Devis d;
FILE *devisFile;
@ -21,13 +21,14 @@ Devis readDevis(Offre *tabTravaux[]) // A finir
index = rechTravaux(travaux, tabTravaux);
if (index==-1)
{
printf("Ces travaux ne sont pas prévus !");
printf("\033[0;31mErreur: \033[0mCes travaux ne sont pas prévus !\n");
exit(1);
}
fgets(d.nomE, 32, devisFile);
d.nomE[strlen(d.nomE)-1] = '\0';
readAdress(devisFile);
fscanf(devisFile, "%d\n%d\n%d", d.capital, d.duree, d.prix);
fclose(devisFile);
return d;
}
@ -44,7 +45,7 @@ ListeDevis delete(ListeDevis l)
MaillonDevis *md;
if (l==NULL)
{
printf("Erreur: suppression dans une liste vide");
printf("\033[0;31mErreur: \033[0msuppression dans une liste vide\n");
exit(1);
}
md=l;
@ -60,7 +61,7 @@ ListeDevis insert(ListeDevis l, Devis d)
md = (MaillonDevis *)malloc(sizeof(MaillonDevis));
if (md == NULL)
{
printf("Erreur allocation mémoire");
printf("\033[0;31mErreur: \033[0mallocation mémoire insertion MaillonDevis\n");
exit(1);
}
md->dev=d;

Loading…
Cancel
Save