Help plz fast c

Signaler
Messages postés
2
Date d'inscription
mardi 3 décembre 2019
Statut
Membre
Dernière intervention
4 décembre 2019
-
[Dal]
Messages postés
5310
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
13 décembre 2019
-
Enoncé :
L’eau distribuée par la SONEDE à ses abonnés est comptabilisée par compteurs et facturée selon un barème de tarifs progressifs à plusieurs tranches trimestrielles de consommation d’eau. Les tarifs varient de 145 millimes/m3 pour la première tranche social (inférieur ou égale à 20 m3/trimestre) à 1110 millimes/m3 pour la tranche de consommation supérieure à 500 m3/trimestre. La figure suivante montre les différents tarifs suivant les tranches de consommation:


La société (SONEDE) désire faire des statistiques sur les consommations et les payements d'un échantillon de ses abonnés pour l'année 2016 à travers un programme C. On considère pour cela une matrice ConsAb représentant la consommation mensuelle de chaque abonné la première colonne contient un entier (composé obligatoirement de 8 chiffres) qui représente la référence de l'abonné et les autres colonnes représentent la consommation des abonnés pour chaque trimestre de l'année. Exemple:

Matière :Atelier de Programmation structurée Date : Décembre 2019 Niveau : TI13 Durée : 2 Heures Documents : Non autorisés Nombre de pages : 02 page



2
(On suppose que le nombre de lignes de la matrice est limité par un nombre maximal défini par une constante max donnée). On demande d’écrire les fonctions suivantes :

1. double PrixTranche (int cons), permettant de retourner le prix d'une tranche de consommation fournie comme paramètre en dinars. (2 points)

2. void SaisirTranches (int ConsAb[max][4], int n), permettant de saisir les références et les tranches de consommation pour n abonnés (il faut faire les contrôles nécessaires). (2.5 points)

3. int RechAbonne (int ConsAb[max][4], int n, int Ref), permettant de rechercher un abonné en fonction de sa référence Ref : si l'abonné existe, on retourne l'indice de sa ligne, sinon -1. (2.5 points)

4. double TotAbonne (int ConsAb[max][4], int n, int Ref), permettant de retourner le total exprimé en dinar de toutes les consommations d'un abonné en fonction de sa référence Ref. (2.5 points)

5. void TrimestreMax (int ConsAb[max][4], int n), permettant d'afficher le trimestre qui a marqué le maximum de consommation d'eau. (2.5 points)

6. void NbrAbonne (int ConsAb[max][4], int n), permettant d'afficher la tranche (0-20, 21-40, 4170,...) la plus consommée pour chaque trimestre (comparaison en fonction du nombre des abonnés pour chaque tranche de consommation à chaque trimestre). (3 points)

7. double TotCons(int ConsAb[max][4], int n), permettant de retourner le total exprimé en dinars de toutes les consommations de ces n abonnés. (3 points)

8. Ecrire un programme principal permettant de remplir une Matrice de consommation de n abonnés Mat[n][5] (avec n : désigne le nombre d'abonnés saisi par l'utilisateur). Puis afficher le trimestre qui a marqué le maximum de consommation d'eau. (2 points

3 réponses

Messages postés
38760
Date d'inscription
mercredi 11 avril 2007
Statut
Modérateur
Dernière intervention
13 décembre 2019
5822
Bonjour,
Nous ne ferons pas votre exercice à votre place.
Merci de décrire précisément votre problème et en postant le code déjà réalisé.

Cliquez ici pour des conseils d'écriture des messages et ici concernant les devoirs scolaires ou PFE.

Pour poster votre code, merci de penser à la coloration syntaxique.
Messages postés
5310
Date d'inscription
mercredi 15 septembre 2004
Statut
Contributeur
Dernière intervention
13 décembre 2019
832
Salut aziz_nemlaghi,

Le forum n'est pas un moteur de recherche, ou un distributeur automatique de réponses. Quand tu postes dans le forum, tu t'adresses à des êtres humains qui sont là bénévolement pour aider les gens qui ont un problème ou une question, pour peu que tu exprimes en quoi consiste ton problème ou ta question, en fonction de leur temps, de leur motivation et de l'intérêt qu'a pour eux la question que tu poses.

Là tu ne poses pas de question et tu montres seulement que tu sais faire un copier-coller (et encore... avec une partie seulement des informations, puisqu'il y a visiblement des images faisant partie de l'énoncé de ton devoir qui ne sont pas visibles dans ce que tu as posté).

Bref... c'est à toi de jouer.

Sinon, quelques conseils généraux dans le cadre de ton projet.

Pour mener à bien ce projet, tu devrais (si cela n'a pas déjà été fourni par ton enseignant), te constituer des jeux de tests permettant de valider le fonctionnement de chaque fonction, par rapport aux spécifications (ton énoncé), en testant que les informations fournies en entrée aboutissent au résultat attendu en sortie dans les différents cas d'exécution.

Si les fonctions que tu dois développer successivement risquent d'avoir des effets de bord les unes sur les autres, cela présentera un autre intérêt : celui de pouvoir rejouer ces tests à chaque fois que tu ajoutes une nouvelle fonctionnalité pour vérifier l'absence de régression sur les parties déjà réalisées.

Dal