Bonsoir !

J'essaye de coder la fonction factorielle en C++ en envoyant le nombre ou le tableau représentant les chiffres composant les multiplicateurs de la factorielle.
Cependant dès que je passe par la fonction référencant, je n'arrive pas à faire compiler lorsque je passe le tableau :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
error: cannot convert ‘int (*)[nombre]’ to ‘int*’ for argument ‘1’ to ‘int facto_reference(int*, size_t)’
  resultat_facto = facto_reference(&tableauNombre,nombre);
Je pense que l'erreur vient de la taille du tableau que j'envoie...


Pouvez-vous m'aider ?


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
 
#include <iostream>
#include <cstdlib>
#include <stdio.h>
 
using namespace std;
 
int facto(int x){
 
	int y=1;
 
	for (int i = 1; i< x+1; i++){
 
		y = y*i;
	}
 
	return y;
 
}
 
int facto_reference(int *tableauEntiers, size_t taille){
 
	int factorielle = 0;
 
	for(int i = 0; i < taille+1; ++i )
	factorielle *= *( tableauEntiers + i );
 
	cout << "la moyenne du tableau avec le formalisme pointeur est " << factorielle <<endl;
 
}
 
 
int main(){
	int nombre;
	int resultat, resultat_facto;
 
	cout << " entrez le nombre à factorialiser : " << endl;
	cin >> nombre;
	int tableauNombre[nombre];
	resultat = facto(nombre);
	cout << "le nombre factorialisé est : " << resultat << endl;
	for(int i = 0; i<nombre+1;i++){
		tableauNombre[i];
	}
	resultat_facto = facto_reference(&tableauNombre,nombre);
	cout << "le nombre factorialisé référencé est : " << resultat << endl;
 
}