Bonjour
Je voudrais essayer de decouper mon code en fonction dans un même projet.
Le code de base fonctionne à savoir :
ensuite j'ai découper comme suit :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32 #include <iostream> #include <vector> using namespace std; double moyenneTabDynamique(vector<double>tableau) { double moyenne; for (int i(0);i<tableau.size;i++) { moyenne+=tableau[i]; } moyenne/=tableau.size; return moyenne; } int main() { vector<double>tableauNoteUserDynamique; char userChoice; do { cout<<"Veuillez entrer votre note : "<<endl; double noteUser(0); cin>>noteUser; tableauNoteUserDynamique.push_back(noteUser); cout<<"Avez vous d'autres note a enregistrer yes(y) no (n)"<<endl; cin>>userChoice; }while(userChoice=='y'); moyenneTabDynamique(tableauNoteUserDynamique); return 0; }
=========main.cpp==========
==========moyenneTabUserDynamique.cpp====================
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23 #include <iostream> #include <vector> #include "moyenneTabUserDynamique.h" using namespace std; int main() { vector<double>tableauNoteUserDynamique; char userChoice; do { cout<<"Veuillez entrer votre note : "<<endl; double noteUser(0); cin>>noteUser; tableauNoteUserDynamique.push_back(noteUser); cout<<"Avez vous d'autres note a enregistrer yes(y) no (n)"<<endl; cin>>userChoice; }while(userChoice=='y'); moyenneTabDynamique(tableauNoteUserDynamique); return 0; }
=============moyenneTabUserDynamique.h===============
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 /*fonction de moyenne sur un tableau dynamique *-tableau : nom du tableau dynamique *-taille tableau : obtenu par la fonction size */ #include "moyenneTabUserDynamique.h" double moyenneTabDynamique(vector<double>tableau) { double moyenne; for (int i(0);i<tableau.size;i++) { moyenne+=tableau[i]; } moyenne/=tableau.size; return moyenne; }
Selon mes maigres connaissance cela me semblait correcte mais mon compilateur me hurle un :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 #ifndef MOYENNETABUSERDYNAMIQUE_H_INCLUDED #define MOYENNETABUSERDYNAMIQUE_H_INCLUDED double moyenneTabDynamique(vector<double>tableau); #endif // MOYENNETABUSERDYNAMIQUE_H_INCLUDED
||=== Build: Debug in moyenneTabUserDynamique (compiler: GNU GCC Compiler) ===|
D:\c++\madbox\fonction\tableau\moyenneTabUserDynamique\moyenneTabUserDynamique.h|4|error: 'vector' was not declared in this scope|
D:\c++\madbox\fonction\tableau\moyenneTabUserDynamique\moyenneTabUserDynamique.h|4|note: suggested alternative
D:\codeblock\CodeBlocks\MinGW\lib\gcc\mingw32\4.9.2\include\c++\bits\stl_vector.h|214|note: 'std::vector'|
D:\c++\madbox\fonction\tableau\moyenneTabUserDynamique\moyenneTabUserDynamique.h|4|error: expected primary-expression before 'double'|
D:\c++\madbox\fonction\tableau\moyenneTabUserDynamique\main.cpp||In function 'int main()'
D:\c++\madbox\fonction\tableau\moyenneTabUserDynamique\main.cpp|21|error: 'moyenneTabDynamique' cannot be used as a function|
||=== Build failed: 3 error(s), 0 warning(s) (0 minute(s), 0 second(s)) ===|
Il s'emblerait qu'il y est un problème dans la ligne 4 du .h mais je n'arrive pas a trouver la raison
J'ai effectuer la même procédure sur un tableau statique sans problème.
Merci d'éclairer ma lanterne.
Partager