Bonjour, je débute en c++ et je ne parviens pas à corriger les erreurs de mon code. Merci à tous pour votre aide!
Voici mon code :
#include
/** @file **/
#include
#include
#include
#include
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 litTableauMois("donnees/volumes_d_eau_distribues.txt") {
ifstream fichierMois("donnes/volumes_d_eau_distribues.txt") ;
int volumeDeau ;
int moisDeau ;
vector volumeDeauTab ;
vector moisDeauTab ;
while (fichierMois >> moisDeau and fichierMois >> volumeDeau) {
volumeDeauTab.push_back(volumeDeau) ;
moisDeauTab.push_back(moisDeau) ;
}
vector t ;
t = vector (12) ;
for (int i = 0 ; i
< t.size() ; i++) { t[moisdeautab[i]-1] volumedeautab[i] i] ; } return t ; } /** test de la fonction littableaumois **/ void testlittableaumois () { assert(t[0] 16231200); 0); // le volume pour janvier assert(t[11] 15530100); 0); // le volume pour décembre assert(t[4] 17711200); 0); //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 t) { int sommetab 0 0 ; for (int i 0 0 ; i < t.size () ; i ++) { sommetab sommetab ab + t[i] ; } return sommetab ; } /** test de la fonction somme **/ void testsomme() { assert(somme({1,2,3}) 6); 6); assert(somme({}) 0); 0); assert(somme({2,2,4,8}) 16); 6); } /** renvoie la moyenne d'un tableau d'entier * @param t, un tableau d'entiers * @return la moyenne (entière) des valeurs **/ int moyenne(vector t) { int moyennetab somme me (t)/t.size() ; return moyennetab ; } /** test de la fonction moyenne **/ void testmoyenne() { assert(moyenne({1,2,3}) 2); 2); assert(moyenne({1}) 1); 1); assert(moyenne({2,2,4,8}) 4); 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 t) { if (t.size() m) ; m t[i] i] ; indicem i i ; return indicem ; } /** test de la fonction indicemax **/ void testindicemax() { assert(indicemax({}) -1); 1); assert(indicemax({1,2,3}) 2); 2); assert(indicemax({1,3,2}) 1); 1); assert(indicemax({1}) 0); 0); assert(indicemax({2,8,4,4}) 1); 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 t littableaumois("donnees/volumes_d_eau_distribues.txt") ") ; for (int i 0 0 ; i < t.size() ; i++) { cout>