SAE 1.02 1.0
Comparaison d'approches algorithmiques
Loading...
Searching...
No Matches
specification1.h File Reference

Mise en place des structures et des fonctions associées. More...

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

Go to the source code of this file.

Data Structures

struct  Adresse
 
struct  Devis
 
struct  maillonDevis
 
struct  Offre
 
struct  maillonsucc
 
struct  Tache
 
struct  maillonfile
 
struct  FileAttente
 

Macros

#define MAX_LENGTH   30
 

Typedefs

typedef struct maillonDevis MaillonDevis
 
typedef struct maillonDevisListeDevis
 
typedef struct OffreTabTravaux
 
typedef struct maillonsucc MaillonSucc
 
typedef struct maillonsuccListe
 
typedef struct maillonfile MaillonFile
 

Functions

void afficherDevis (Devis devis)
 
void afficherListeDevis (ListeDevis l)
 
void afficherDevisEntreprise (TabTravaux tabTravaux, int tLog, char entreprise[], char typeTravaux[])
 
void afficherDevisTravaux (ListeDevis l, char travaux[])
 
void selectionEntreprisesRetenues (ListeDevis *ldevis)
 Sélectionne l'entreprise retenue pour un type de travaux. More...
 
void afficherEntreprisesRetenues (TabTravaux tab, int tLog)
 Affiche les entreprises retenues pour chaque type de travaux. More...
 
int chargement (TabTravaux *tab, int *tLog, char fichier[])
 
void lireDevis (FILE *flot, Devis *devis, char *typeTravaux)
 
void insererDevis (Devis d, TabTravaux *tab, int *tLog, char typeTravaux[])
 
TacheinitialiserTache (char *nom, int duree)
 Initialiser les taches. More...
 
Tache ** chargementTaches (TabTravaux *tab, int tLog, int *nbTaches, char fichier[])
 
int recupererDuree (TabTravaux tabTravaux, int tLog, char typeTravaux[])
 
void ajouterSuccesseur (Tache *tache, char nomSucc[])
 
int rechercheDichotomique (TabTravaux tab, int tLog, char typeTravaux[])
 
int rechercheDichotomiqueTaches (Tache **tabTaches, int nbTaches, char nomTache[])
 
void trierListeDevis (ListeDevis *ldevis)
 
void insererDevisTriee (ListeDevis *ldevis, MaillonDevis *maillon)
 
void triEchange (ListeDevis *ldevis)
 Trie la liste de devis par ordre croissant du coût, puis par ordre décroissant du capital. More...
 
int comparer (const Devis *d1, const Devis *d2)
 Compare deux devis en fonction du coût et du capital. More...
 
void inverser (Devis *d1, Devis *d2)
 Inverse les positions de deux devis. More...
 
void libererTabTravaux (TabTravaux *tab, int tLog)
 
void libererOffre (Offre *offre)
 
void libererListeDevis (ListeDevis liste)
 
void libererListeSucc (Liste succ)
 
void libererTache (Tache *tache)
 
void libererTabTaches (Tache **tabTaches, int nbTaches)
 
void sauvegardeTaches (Tache **tabTaches, int nbTaches, char fichier[])
 
void sauvegardeDevis (TabTravaux tab, int tLog, char fichier[])
 
void ecrireDevis (FILE *flot, char typeTravaux[], Devis devis)
 
void sauvegardeDevisBinaire (TabTravaux tab, int tLog, char fichier[])
 
void sauvegardeTachesBinaire (Tache **tabTaches, int nbTaches, char fichier[])
 
FileAttente initialiserFileAttente ()
 Initialiser la file d'attente. More...
 
bool estVide (FileAttente *file)
 Vérifie si la file est vide. More...
 
void enfiler (FileAttente *file, Tache *tache)
 Ajoute un élément à la file. More...
 
Tachetete (FileAttente *file)
 Retourne la tête de la file. More...
 
void defiler (FileAttente *file)
 Retire un élément de la file. More...
 
int longueur (FileAttente *file)
 Retourne la longueur de la file. More...
 
void afficherFile (FileAttente *file)
 Affiche la file. More...
 
void detruireFile (FileAttente *file)
 Détruit la file. More...
 

Detailed Description

Mise en place des structures et des fonctions associées.

Authors
LAVERGNE Rémi ; DELINAC Inès ; RAYNAUD Camille
Date
12 janvier 2024

Function Documentation

◆ afficherEntreprisesRetenues()

void afficherEntreprisesRetenues ( TabTravaux  tab,
int  tLog 
)

Affiche les entreprises retenues pour chaque type de travaux.

Parameters
[in]tabLe tableau des travaux
[in]tLogLa taille logique

◆ afficherFile()

void afficherFile ( FileAttente file)

Affiche la file.

Parameters
[in]*fileFile d'attente

◆ comparer()

int comparer ( const Devis d1,
const Devis d2 
)

Compare deux devis en fonction du coût et du capital.

Parameters
[in]d1Le premier devis
[in]d2Le deuxième devis
Returns
<0 Si d1 < d2
0 Si d1 == d2
>0 Si d1 > d2

◆ defiler()

void defiler ( FileAttente file)

Retire un élément de la file.

Parameters
[in,out]*fileFile d'attente

◆ detruireFile()

void detruireFile ( FileAttente file)

Détruit la file.

Parameters
[in,out]*fileFile d'attente

◆ enfiler()

void enfiler ( FileAttente file,
Tache tache 
)

Ajoute un élément à la file.

Parameters
[in,out]*fileFile d'attente
[in]*tacheTache à ajouter

◆ estVide()

bool estVide ( FileAttente file)

Vérifie si la file est vide.

Parameters
[in]*fileFile d'attente
Returns
bool Retourne un booléen

◆ initialiserFileAttente()

FileAttente initialiserFileAttente ( )

Initialiser la file d'attente.

Returns
nouvelleFile Retourne une nouvelle file

◆ initialiserTache()

Tache * initialiserTache ( char *  nom,
int  duree 
)

Initialiser les taches.

Parameters
[out]*nomNom de la tache
[in]dureeDurée de la tache
Returns
nouvelleTache Retourne une nouvelle tache

◆ inverser()

void inverser ( Devis d1,
Devis d2 
)

Inverse les positions de deux devis.

Parameters
[in]d1Le premier devis
[in]d2Le deuxième devis

◆ longueur()

int longueur ( FileAttente file)

Retourne la longueur de la file.

Parameters
[in]*fileFile d'attente
Returns
longueur Retourne la longueur de la file

◆ selectionEntreprisesRetenues()

void selectionEntreprisesRetenues ( ListeDevis ldevis)

Sélectionne l'entreprise retenue pour un type de travaux.

Parameters
[out]ldevisLa liste des devis

◆ tete()

Tache * tete ( FileAttente file)

Retourne la tête de la file.

Parameters
[in]*fileFile d'attente
Returns
*tache Retourne la tache en tête de file

◆ triEchange()

void triEchange ( ListeDevis ldevis)

Trie la liste de devis par ordre croissant du coût, puis par ordre décroissant du capital.

Parameters
[out]*ldevisListe des devis