Bonsoir,

J'obtiens l'erreur suivante error: no matching function for call to 'survingt', j'ai pourtant vérifié mon code une dizaine de fois, en particulier les types, puis je suis allé me renseigné sur internet mais je n'ai pas trouvé d'informations permettant de résoudre mon problème. Je pense qu'il doit me manquer une notion, où alors j'ai une poutre dans l'oeil.

Bon en gros le programme doit récupérer le nombre de points par question obtenus pour chaque élève.
A la fin, et c'est là où ça plante, après avoir donné la somme de tous les points obtenus par élève, il me donne une note sur 20 pour chacun (nbe de question total multiplié par le nbe de points obtenus, divisé par 20). Mais voilà il me dit que ma fonction qui sert à faire ce petit calcul ne match pas ...

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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
#include <iostream>
#include <vector>
#include <string>
#include <sstream>
#include <limits>
#include "decla.h"
 
using namespace std;
 
 
int main()
{
 
string::size_type TAILLE;
char souhait;
string entree;
int nbjoueur, calcul_somme;
double point; 
double note_sur_vingt;
 
double nbe_question = 0;
cin.ignore(std::numeric_limits<std::streamsize>::max(), '\n');
 
cout << "- - - LA GABI : Compter les Points - - -" << "\n" << "\n" << endl; 
 
cout << "APPUYEZ SUR ENTREE POUR COMMENCER" << "\n" << endl;
 
getline(cin, entree);
 
// Je récupère le nombre d'élèves:
 
cout << "Donnez le nombre d'élèves présents" << "\n" << endl;
cin >> nbjoueur;
vector<vector<double> > tab;
tab.resize(nbjoueur);
 
vector <string> tab_nom(nbjoueur);
 
// Je récupère les noms des élèves
 
cout << "\n"<< "Rentrez le nom de chaque joueurs" << "\n" << endl;
 
for (int i(0); i < nbjoueur; i++) 
{
	cout << "\n" << "Joueur n° " << i+1 << ":" << "\n" << endl;
 	cin >> tab_nom[i];
}
 
		// Je récupère le point 
 
		do
		{
		cout << "\n" << "ENTREE DES POINTS" << "\t" << endl;
		nbe_question++; 
 
			for (int j(0); j < nbjoueur; j++)
			{
				point = 0;
				cout << "\n" << "Entrez le nombre de points de " << tab_nom[j] << "\n" << endl; 
				cin >> point;
				tab[j].push_back(point);
			}
 
		// Je demande si on continue 
 
		cout << "\n" << "Continuer à poser des questions : Oui tapez A / Non tapez B" << "\n" << endl; 
		cin >> souhait; 
 
		}
		while (reponse(souhait));
 
 
		// Je dis combien il y a eu de questions en tout
 
		cout << nbe_question << " ont été posées" << "\n" << endl;
 
		// J'affiche tous les éléments du tableau 
 
			// je récupère la taille
 
		for (int j(0); j < nbjoueur; j++)
		{
			string::size_type TAILLE = tab[0].size();
			cout << "Voilà ensemble des points de " << tab_nom[j] << "\n" << endl;
 
			for (int i(0); i < TAILLE; i++)
			{
			cout << tab[j][i] << endl;
			}
		}
 
		// Je fais la somme de mes tableaux et j'affiche 
 
		cout << "Somme des points pour chaque élève" << "\n" << endl;
 
		for (int j(0); j < nbjoueur; j++)
		{
			calcul_somme = 0;
			calcul_somme = somme(tab[j]);
			note_sur_vingt = survingt(tab[j], nbe_question);
			cout << "Score total de " << tab_nom[j] << " :" << "\n" << calcul_somme << "\n" << endl;
			cout << "Note sur vingt de " << tab_nom[j] << " :" << "\n" << note_sur_vingt << "/20" << "\n" << endl;
		} 
		// Je fais le calcul sur 20
}
je l'ai déclaré comme ça dans mon header
double survingt(double, double);

Puis voilà ma définition :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
 
double survingt (double chiffre, double nbtotal)
		{
			double a;
			a = ((chiffre * 20) / nbtotal);
			return a;
		}
Voilà, si vous pouviez m'aider un peu, je vous en serai gré !
Bonne soirée/journée !