Buona sera chiedo cortesemente aiuto per il calcolo del fattoriale di un numero, il risultato lo ottengo nella void ,ma se la richiamo nel main mi fornisce 0 come risultato,Grazie dell'aiuto
/******************************************************************************
Online C Compiler.
Code, Compile, Run and Debug C program online.
Write your code in this editor and press "Run" button to compile and execute it.
*******************************************************************************/
#include <stdio.h>
#include <stdlib.h>
void Valore_Fattoriale(int* Risultato_Fattoriale,int ValFattoriale,int InputFattoriale);
void AttesaRisposta();//Prototipo defaultnzione
void main(void)
{
//Dichiarazioni variabili
char Risposta;
//Puntatore che tiene conto del risultato del ValoreFattoriale
int Result;
//Risultato_Fattoriale=&Fattoriale;
// printf("Il Risultato è: %d",*Risultato_Fattoriale );
int ValoreFattoriale;//Variabile di input che contiene il Valore da calcolare
int Fattoriale=1;//Inizializzo il valore per il calcolo del fattoriale
do
{
printf("Inserisci il valore del Fattoriale da calcolare");
scanf(" %d", &ValoreFattoriale);
Valore_Fattoriale (&Result, Fattoriale,ValoreFattoriale);
//Funzione a cui passa un valore per riferimento Result e mi fornisce il risultato
//Fattoriale=1
//E con Valore Fattoriale,il valore da calcolare
printf("IL valore Fattoriale è: %d \n",Result);
AttesaRisposta();//Richiamo La void
scanf (" %c", &Risposta);
getchar();
}while(Risposta =='y'|| Risposta =='Y'); //Routine per conitunuare il programma o Terminarlo
}
//Scrivo la Void Attesa Rispsosta che mi stampa il menu
void AttesaRisposta()
{
printf("Voui Continuare:?\n"
"Si)Y: or y:\n:"
"No)N: or n: \n ");
}
//Scrittura void
void Valore_Fattoriale(int* Risultato_Fattoriale,int ValFattoriale,int InputFattoriale)
{
Risultato_Fattoriale=&ValFattoriale;//Risultato_Fattoriale Prende il valore 1,poichè ValFattoriale=1
for(int i=1;i<=InputFattoriale;i++)
{
//*Risultato_Fattoriale *= i;//Forma Compatta
*Risultato_Fattoriale =*Risultato_Fattoriale * i;//Scrittura equivalente a Sopra
//Con questa scrittura restituisco il valore contentuo nella varaibile puntata
printf("Risultato Parziale: %d \n",*Risultato_Fattoriale);
}
printf("Il risultato Finale e': %d \n",*Risultato_Fattoriale);
}