écrire un programme en c permet d'affecter les taches sur les machines???

Voir le sujet précédent Voir le sujet suivant Aller en bas

écrire un programme en c permet d'affecter les taches sur les machines???

Message  pascal le Ven 21 Aoû 2009 - 12:44

Salut,

En fait, le problème consiste à placer n taches sur m machines pour minimiser les retards totaux.
La règle est la suivante : placer la tache dont la durée d'exécution est la plus petite à la machine disponible.
A chaque fois on doit calculer le retard "T" de chaque tache (formule est la suivante : date de fin d'exécution de la tache déterminer après affectation des taches sur les machines "c" -date de fin au plus tard de la tache "d") : T= c - d.

Ce qui est demandé :
1) écrire un programme en c qui permet de trier les taches par durée d'exécution croissant: c'est fait!

2) écrire un programme en c qui permet placer les taches sur les machines pour calculer les retards totaux selon la formule donnée.
Là, je me bloque . Je n'arrive pas à le faire confused
Pourriez vous me donner un coup d'aide?
Merci!
Voici un exemple pour mieux assimiler:
soit

données :
6 taches : j1, j2, j3, j4, j5, j6
3 machines : m1, m2, m3
durée d'exécution : 3, 6, 1, 2, 10, 4
d : 12, 5, 7, 8, 10, 6, 18
r(date de début de la tache, nécessaire pour placer les taches sur la machine) : 0, 1, 6, 3, 9, 12

Solution :
1)
séquence de tache (3,4,1,6,2,5)
2)
manuellement
sur m1 : les taches 3, 5
sur m2 : les taches 4, 2
sur m3 : les taches 1, 6

retards :
T1 :3-12<0->T1=0 (retard ne peut pas être négatif)
T2 : 10-5=5->T2=5
T3: 7-7=0
T4:5-10<0
T5:17-6=11
T6:7-8<0
T retards totaux: 5+11=16

pascal
Bavard
Bavard

Messages : 20
Date d'inscription : 20/08/2009

Voir le profil de l'utilisateur

Revenir en haut Aller en bas

Re: écrire un programme en c permet d'affecter les taches sur les machines???

Message  -ed- le Ven 21 Aoû 2009 - 16:12

pascal a écrit:2) écrire un programme en c qui permet placer les taches sur les machines pour calculer les retards totaux selon la formule donnée.
Là, je me bloque . Je n'arrive pas à le faire confused
Pourriez vous me donner un coup d'aide?
Je ne vois pas trop en quoi c'est une question sur le langage C. Je conseille de demander sur le forum algorithme :

http://www.developpez.net/forums/f60/autres-langages/algorithmes/

_________________
C is a sharp tool !

-ed-
Admin
Admin

Messages : 289
Date d'inscription : 26/05/2008
Age : 60
Localisation : Paris 6eme arrondissement (75, France)

Voir le profil de l'utilisateur http://bien-programmer.fr

Revenir en haut Aller en bas

Voir le sujet précédent Voir le sujet suivant Revenir en haut

- Sujets similaires

 
Permission de ce forum:
Vous ne pouvez pas répondre aux sujets dans ce forum