Exercice: Aide pour les classes - C++ - Programmation
MarshPosté le 18-07-2008 à 16:18:58
Bonjour à tous, voila j'essaye de faire un exercice mais je suis déjà bloqué au tout début
Voici l'énoncé:
Code :
Le but de l'application est de déterminer la consommation électrique annuelle de chaque "zône" (pièce par exemple)
d'une habitation. Cette consommation annuelle doit être exprimée en kWh (kiloWatt heure).
Selon les appareils électriques, cette consommation peut être directement indiquée ; pour d'autres, on doit
se baser sur sa puissance pour la calculer ("transformation" de W en kWh).
On dispose à cet effet d'un premier fichier décrivant tous les types d'appareil électrique.
appareil.txt
------------
A <nom d'appareil> <puissance en W> <consommation en kWh>
Le second fichier décrit la composition en appareil de chaque zône : pour chaque zône,
on trouve la liste des appareils qui s'y trouve et en quelle quantité.
Ce fichier aura principalement pour but de contrôler la validité des données du troisième fichier.
zones.txt
---------
Z <nom de zône>
A <nom d'appareil> <quantité (*A*)>
Le troisième fichier détaille l'utilisation quotidienne des appareils électriques.
Dans cet exercice, ce fichier ne peut comporter que des dates d'une année bien précise.
En fait, il y aurait un tel fichier pour chaque année dans une application plus complète ; ce qui
permettrait d'établir alors des comparaisons d'année en année, et ce zône par zône ou globalement.
utilisation.txt
---------------
I <année de référence>
U <nom de zône> <nom d'appareil> <quantite d'appareil (*B*)> <pourcentage estimé de son utilisation> <date/heure de début d'utilisation> <date/heure de fin d'utilisation>
Une ligne U du fichier utilisation.txt sera considérée comme valable si toutes les conditions
suivantes sont respectées :
- la zône doit exister
- l'appareil doit exister
- la quantité (*B*) est une valeur entière qui doit être comprise entre 1 et la quantité de cet appareil présent dans cette zône (*A*)
- le pourcentage est une valeur réelle > 0 et <= 1
- la date/heure de début est antérieur à la date/heure de fin
- les dates/heures de début et de fin référencent toujours l'année de référence que l'on trouve sur la ligne I
Afin de gérer les dates/heures, vous pourrez utiliser le "module" fourni de gestion des dates/heures.
La consommation annuelle d'une zône est la somme des consommations des appareils utilisés durant cette année
dans cette zône :
- pour chaque ligne U de utilisation.txt, déterminer le temps d'utilisation (exprimé en heure) : DU
- pour chaque ligne U de utilisation.txt, récupérer la quantité qui y est notifiée (Q)
- si la description de l'article concerné par cette ligne U précise une consommation en kWh (C),
il suffit de calculer la consommation : CU = C * DU * Q * pourcentage
- sinon il faut calculer la consommation à partir de la puissance (P) exprimée en Watt :
CU = 0,001 * P * DU * Q * pourcentage
- il s'agit donc de calculer par zône la somme de ses CU
En gros je ne vois pas de quelle manière organiser mes classes...
J'ai pensé à ça mais ce n'est certainement pas bon
zone: - nom de zone - tableau d'appareil
appareil: - nom - puissance W - consommation kwh - quantité
utilisation: - année - référence à une zone - référence à un appareil - % estimé d'utilisation - date/heure de début - date/heure de fin
Marsh Posté le 18-07-2008 à 16:18:58
Bonjour à tous, voila j'essaye de faire un exercice mais je suis déjà bloqué au tout début
Voici l'énoncé:
En gros je ne vois pas de quelle manière organiser mes classes...
J'ai pensé à ça mais ce n'est certainement pas bon
zone:
- nom de zone
- tableau d'appareil
appareil:
- nom
- puissance W
- consommation kwh
- quantité
utilisation:
- année
- référence à une zone
- référence à un appareil
- % estimé d'utilisation
- date/heure de début
- date/heure de fin
Merci d'avance