Ne parvient pas à corriger ses erreurs
SahDa
Messages postés
5
Statut
Membre
-
SahDa Messages postés 5 Statut Membre -
SahDa Messages postés 5 Statut Membre -
Bonsoir à tous, je débute en programmation, j'utilise le langage C++ et j'ai des difficultés à comprendre et corriger mes erreurs (dans une des photos, il y en a une clairement noté et pourtant je ne comprends pas où ça coince). Voici mon code ainsi que les messages affichés après tentative de compilation (pour la dernière fonction, j'ai volontairement décalé la ligne pour que ce soit visible via une capture d'écran.) Merci à tous pour votre aide.







A voir également:
- Ne parvient pas à corriger ses erreurs
- Corriger un message whatsapp - Guide
- Corriger photos gratuit - Guide
- Clémence souhaite faire calculer automatiquement les prix de 30 produits dans trois devises. elle a déjà saisi une formule de calcul pour le tarif du premier produit dans la première devise. corrigez sa formule afin que recopiée vers le bas puis vers la droite, elle remplisse correctement tout le tableau. - Forum Excel
- Impossible de corriger les problèmes, des paquets défectueux sont en mode « garder en l'état » ✓ - Forum Ubuntu
- Freebox erreur impossible de récupérer la liste des mises à jour - Forum Freebox
2 réponses
Bonjour
dans le lien ci-dessous, tu trouvera comment poster un code, à la fois lisible, et copiable pour tester de notre coté.
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Nous sommes bénévoles, et pour beaucoup, on ne va pas s'embêter à décrypter une capture d'écran et en réécrire tout le code.
dans le lien ci-dessous, tu trouvera comment poster un code, à la fois lisible, et copiable pour tester de notre coté.
https://codes-sources.commentcamarche.net/faq/11288-les-balises-de-code
Nous sommes bénévoles, et pour beaucoup, on ne va pas s'embêter à décrypter une capture d'écran et en réécrire tout le code.
Bonjour Whismeril. Merci de m'avoir indiqué comment mettre mon code au bon format, je savais que c'était possible mais ne savais pas comment m'y prendre. Le voici visible et accessible.
#include <stdexcept>
/** @file **/
#include <fstream>
#include <iostream>
#include <vector>
#include <string>
using namespace std;
/** Construction d'un tableau d'entiers lu depuis un fichier
* On suppose que le fichier contient sur chaque ligne un numéro de mois
* suivi d'une donnée correspondant au mois.
* @param nom_fichier, le nom du fichier de données
* @return un tableau d'entiers de taille 12 tel que dans chaque
* case d'indice i, on trouve la donnée du mois i
**/
vector<int> litTableauMois("donnees/volumes_d_eau_distribues.txt") {
ifstream fichierMois("donnes/volumes_d_eau_distribues.txt") ;
int volumeDeau ;
int moisDeau ;
vector <int> volumeDeauTab ;
vector <int> moisDeauTab ;
while (fichierMois >> moisDeau and fichierMois >> volumeDeau) {
volumeDeauTab.push_back(volumeDeau) ;
moisDeauTab.push_back(moisDeau) ;
}
vector <int> t ;
t = vector <int> (12) ;
for (int i = 0 ; i < t.size() ; i++) {
t[moisDeauTab[i]-1] = volumeDeauTab[i] ;
}
return t ;
}
/** test de la fonction litTableauMois **/
void testLitTableauMois () {
ASSERT(t[0] == 16231200); // Le volume pour janvier
ASSERT(t[11] == 15530100); // Le volume pour décembre
ASSERT(t[4] == 17711200); //Le volume pour mai
}
/** Renvoie la somme d'un tableau d'entiers
* @param t, un tableau d'entier
* @return la somme des valeurs
**/
int somme(vector<int> t) {
int sommeTab = 0 ;
for (int i = 0 ; i < t.size () ; i ++) {
sommeTab = sommeTab + t[i] ;
}
return sommeTab ;
}
/** Test de la fonction somme **/
void testSomme() {
ASSERT(somme({1,2,3}) == 6);
ASSERT(somme({}) == 0);
ASSERT(somme({2,2,4,8}) == 16);
}
/** Renvoie la moyenne d'un tableau d'entier
* @param t, un tableau d'entiers
* @return la moyenne (entière) des valeurs
**/
int moyenne(vector<int> t) {
int moyenneTab = somme (t)/t.size() ;
return moyenneTab ;
}
/** Test de la fonction moyenne **/
void testMoyenne() {
ASSERT(moyenne({1,2,3}) == 2);
ASSERT(moyenne({1}) == 1);
ASSERT(moyenne({2,2,4,8}) == 4);
}
/** Renvoie l'indice de la valeur maximale du tableau
* @param t, un tableau d'entier
* @return l'indice de la valeur maximale ou -1 si le tableau est vide
**/
int indiceMax(vector<int> t) {
if (t.size() <= 0 {
return -1 ;
}
int m = 0 ;
int indiceM = 0 ;
for (int i = 0 ; i < t.size() ; i++) {
if (t[i] > m) ;
m = t[i] ;
indiceM = i ;
}
return indiceM ;
}
/** Test de la fonction IndiceMax **/
void testIndiceMax() {
ASSERT(indiceMax({}) == -1);
ASSERT(indiceMax({1,2,3}) == 2);
ASSERT(indiceMax({1,3,2}) == 1);
ASSERT(indiceMax({1}) == 0);
ASSERT(indiceMax({2,8,4,4}) == 1);
}
/** Lance les fonctions de test puis affiche :
* - le volume d'eau total sur l'année
* - la moyenne par mois
* - le mois avec le plus gros volume d'eau et son volume
**/
int main() {
vector <int> t = litTableauMois("donnees/volumes_d_eau_distribues.txt") ;
for (int i = 0 ; i < t.size() ; i++) {
cout << t[i] << endl ;
}
testLitTableauMois() ;
cout << somme(t) << endl ;
testSomme() ;
cout << moyenne(t) << endl ;
testMoyenne() ;
cout << t[indiceMax(t)] << endl ;
testIndiceMax() ;
vector <string> mois = {"janvier" , "février" , "mars" , "avril" , "mai" , "juin" , "juillet" , "août" , "septembre" , "octobre" , "novembre" , "décembre" }
cout << "Le volume total d'eau distribué dans l'année est de :" << somme(t) << endl ;
cout << "Le volume moyen par mois d'eau distribué dans l'année est de :" << moyenne() << endl ;
cout << "Le mois où on a distribué le plus d'eau dans l'année est le mois de :" << mois[indiceM(t)] << "avec un volume de :" << "t[indiceM(t)]" << endl ;