Funzione ricorsiva.Fattoriale

di Anonimizzato31893 il
7 risposte
Nel seguente programma:
 
 //Funzione fattoriale ricorsiva
#include <stdio.h>

unsigned long long int factorial(unsigned int number);

int main() {

    //Durante ogni iterazione, calcola factorial(i) e stampa il risultato
    for(unsigned int i=0; i<=21; i++){
        printf("%u!=%llu\n", i, factorial(i));
    }
}

//Definizione ricorsiva della funzione fattoriale
unsigned long long int factorial(unsigned int number)
{
    //Caso di base
    if(number<=1){
        return 1;
    }
    else{ //Passo ricorsivo
        return(number*factorial(number-1));
    }
}
 


E' il primo caso che mi capita di vedere che si ha un Blocco main dove è definita l'iterazione e poi oltre quella graffe della fine del main, vedo che si ha il calcolo del fattoriale ecc.

Mi chiedo, perchè si usa mettere la funzione fattoriale fuori dal main
Nel main c'è solo l'iterazione!

7 Risposte

  • Visto gli argomenti che trattavi fino a pochi giorni fa, la domanda sorge spontanea: sai cosa sono le funzioni e cosa si intende per ricorsione?
  • Fai una domanda e sempre i soliti rovinano il thread, poi arriva il moderatore e blocca il thread!
    Ma adesso mi viene un dubbio, considerando le risposte che date!
    Ma siete veramente dei programmatori?
  • MT09_full ha scritto:


    Fai una domanda e sempre i soliti rovinano il thread, poi arriva il moderatore e blocca il thread!
    Ma adesso mi viene un dubbio, considerando le risposte che date!
    Ma siete veramente dei programmatori?
    E tu fattene una ragione !
    Quando si entra in un gruppo si accettano, si rispettano e si condividono le regole preesistenti : se non ti piacciono le regole del gruppo sarebbe saggio che ti trovassi un gruppo più consono al tuo modo di essere ... senza polemica.
  • Ma quale polemica!
    E fattene tu una ragione!
    Ho aperto un thread e invece di ricevere delle risposte tecniche, scrivete fiumi di parole che non hanno nulla a che fare con la programmazione!
    Lo si capisce dalle risposte!
    Se non vuoi rispondere, non farlo, ma se lo fai e rovini i thread, sei tu che non rispetti le regole!
  • Moderatoreeeeee
    Blocca il thread che qui si parla solo in OT, non si e'in grado di parlare di programmazione!
  • MT09_full ha scritto:


    Ho aperto un thread e invece di ricevere delle risposte tecniche, scrivete fiumi di parole che non hanno nulla a che fare con la programmazione!
    I fiumi di parole sono la domanda di Nippolo che ti chiedeva se "sai cosa sono le funzioni e cosa si intende per ricorsione?"

    Direi che hai un po' di sindrome da accerchiamento, visto che vedi la polemica ovunque.

    Come potrai constatare - sebbene nessuno ti conosca, sei l'unico che ha problemi, mentre tutti gli altri utenti (o la maggior parte) non fanno le storie che fai tu.
  • Ma se scrivi questo
Devi accedere o registrarti per scrivere nel forum
7 risposte