WOW !! MUCH LOVE ! SO WORLD PEACE !
Fond bitcoin pour l'amélioration du site: 1memzGeKS7CB3ECNkzSn2qHwxU6NZoJ8o
  Dogecoin (tips/pourboires): DCLoo9Dd4qECqpMLurdgGnaoqbftj16Nvp


Home | Publier un mémoire | Une page au hasard

 > 

Affectation de circuits d'une bibliothèque a des unités fonctionnelles d'une partie opérative avec des contraintes de surface, de vitesse et de consommation d'énergie.

( Télécharger le fichier original )
par Farida LOUACHENI
Université Saad Dahleb Blida - Ingénieur d'état Informatique  2011
  

précédent sommaire suivant

Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy

3.3.3.13 Algorithme principal :

L'algorithme principal fait appel aux fonctions décrites précédemment. Variables globales :

Sf, surface, Tf, temps, Pf, puissance : réel ;

head_operateurs :=0 : variable qui pointe sur un élément de type OPERATEURS;

head_comb_typ_op :=0 : variable qui pointe sur un élément de type COMB_TYP_OP ;

head_instance :=0 : variable qui pointe sur un élément de type

INSTANCE ;

head_comb_ops :=0 : variable qui pointe sur un élément de type COMB_OPS ;

nb_traces : entier ;

flag :=0 : entier ;

ptr_svg :=0 : variable qui pointe sur un élément de type COMB_OPS ;

s, t, p : float ;

Variables locales :

i, j, k ,l, m, num_cycle :entier ;

ptr : variable qui pointe sur un élément de type OPERATEURS ;

ptr1 : variable qui pointe sur un élément de type COMB_TYP_OP ; ptr11 : variable qui pointe sur un élément de type INSTANCE ; chaine[16], chaine1[4] : chaînes de caractères ;

fich_trace[20], fich_dp[20], ch_temp[4],mot[20] : chaînes de caractères ;

fp, fp_dp : pointeurs de Fichiers ;

DEBUT

si (argc ? 4) // argc est le nbre d'arguments dans la commande

alors {

Afficher (`' Erreur de commande- -taper : affect val(Sf) val(Tf) val(Pf) `');

exit ;

}

fsi

//entrer les valeurs des contraintes imposées par le concepteur

Lire (Sf) ;

Lire (Tf) ;

Lire (Pf) ;

// Faire appel a la fonction create_lists () qui permet de créer les différentes listes create_lists () ;

ptr :=head_operateurs ;

//ouvrir le fichier NB_TRACES en lecture ;

fp :=ouvrir (`' NB_TRACES `', en lecture) ;

Lecture (fp, nb_traces) ;

Fermer le fichier (fp) ;

Pour( i :=1 jusqu'à nb_traces)

Faire {

fich_trace := `' TRACE `' ;

ch_temp :=i ;

concatener les contenus de fich_trace avec ch_temp ;

fp :=ouvrir (fich_trace, en lecture) ;

fich_dp := `' DP `' ;

concatener les contenus de fich_dp avec ch_temp

fp_dp :=ouvrir (fich_dp, en écriture) ;

Tant que non fin du fichier pointé par fp

Faire {

//lire à partir du fichier fp num_cycle et mot ;

Lecture (fp, num_cycle, mot) ;

Ecriture (fp_dp, num_cycle) ; // Ecriture dans le fichier pointé par fp_dp Tant que (mot ? `'FIN `')

Faire {

Ecriture (fp_dp, `' # `', mot) ;

Lecture (fp, mot) ;

}

Ffaire

Ecriture (fp_dp, `' FIN `') ;

Lecture (fp, `' \n `') ;

}

Fsi

Ffaire

Fermer le fichier (fp) ;

Fermer le fichier (fp_dp) ;

}

Ffaire

surface :=0 ;

// Faire appel a la fonction récursive configuration ()

configuration (ptr) ;

Afficher (`' \n Echec total: Aucune combinaison ne satisfait toutes les contraintes `') ; /* NOTE : En cas de succès, les résultats sont affichés au niveau de la procédure calculer_S_T_P() et le programme s'arrête : Le message d'échec ci-dessus ne s'affichera donc pas*/.

FIN

Fichier Makefile :

Le fichier Makefile qui a nous a servi lors du développement de notre application est le suivant :

affect: trouve_combinaison.o principal.o

cc -o affect trouve_combinaison.o principal.o trouve_combinaison.o: trouve_combinaison.c decl.h cc -c -g trouve_combinaison.c

principal.o: principal.c decl.h

cc -c -g principal.c

> L'option -c permet une compilation séparée et génère le fichier objet correspondant au fichier source considéré.

> L'option -g permet d'utiliser le débogueur en cas de besoin.

> L'option -o permet de générer l'exécutable (édition des liens à partir des fichiers objet).

précédent sommaire suivant






Bitcoin is a swarm of cyber hornets serving the goddess of wisdom, feeding on the fire of truth, exponentially growing ever smarter, faster, and stronger behind a wall of encrypted energy








"Des chercheurs qui cherchent on en trouve, des chercheurs qui trouvent, on en cherche !"   Charles de Gaulle