Accedi
Ultimi argomenti attivi
Migliori postatori
ab89 | ||||
Thalionwen | ||||
Eine The Phantom | ||||
Reaulece | ||||
ya89 | ||||
root | ||||
Infernet89 | ||||
Pablomares | ||||
ruggiero98 | ||||
ieschfor |
Fattoriale in C
Pagina 1 di 1
Fattoriale in C
Posto questo articolo per proporre una versione in C del calcolo del Fattoriale.
Presumo che chi legga questo articolo sappia cosa sia, rimando gli altri al seguente Link : Fattoriale - Wikipedia
La formula del Fattoriale è la seguente
E' una formula ricorsiva e in tale modo intento implementarla in C.
Dalla formula si nota che il fattoriale si scrive come una serie di prodotti dove un fattore viene moltiplicato per se stesso diminuito di 1.
n * (n - 1) * (n - 2) ... fino a quando (n-k) = 1 e si interrompe.
Da questo presupposto si parte per implementare l'algoritmo.
Notando anche che n! :
n! = n*(n - 1)!
(n - 1)! = (n-1)*(n-2)!
..
(n-k) = 0? ==> (n-k) = 1
generalizzando (n-k) con k che si incrementa.
Seguendo il metodo sopra indicato il metodo che ne deriva è il seguente
Presumo che chi legga questo articolo sappia cosa sia, rimando gli altri al seguente Link : Fattoriale - Wikipedia
La formula del Fattoriale è la seguente
E' una formula ricorsiva e in tale modo intento implementarla in C.
Dalla formula si nota che il fattoriale si scrive come una serie di prodotti dove un fattore viene moltiplicato per se stesso diminuito di 1.
n * (n - 1) * (n - 2) ... fino a quando (n-k) = 1 e si interrompe.
Da questo presupposto si parte per implementare l'algoritmo.
Notando anche che n! :
n! = n*(n - 1)!
(n - 1)! = (n-1)*(n-2)!
..
(n-k) = 0? ==> (n-k) = 1
generalizzando (n-k) con k che si incrementa.
Seguendo il metodo sopra indicato il metodo che ne deriva è il seguente
- Codice:
int calcolaFattoriale(int n)
{
//se n > 1 allora calcola il n * (n-1)!
if (n == 1)
return 1;
else
return n * calcolaFattoriale(n - 1);
}
codice in C
Ora passo a scrivere un paio di righe di codice che realizzano un programma che calcola il fattoriale
Spero di essere stato sufficientemente esplicativo. Se avete domande scrivete pure.
NB: tutto quanto scritto è frutto di una mia personale analisi
- Codice:
//Autore : Eine The Phantom
//Programma : Calcolo Fattoriale
#include<stdio.h>
int calcolaFattoriale(int n);
main()
{
int fattoriale, numero;
printf("Inserisci il valore di cui calcolare il fattoriale \n");
scanf("%d",&numero); //lettura valore
fattoriale = calcolaFattoriale(numero); //calcola il fattoriale
printf("Il fattoriale di %d è : %d \n",numero,fattoriale);
system("PAUSE");
return 0;
}
int calcolaFattoriale(int n)
{
//se n > 1 allora calcola il n * (n-1)!
if (n == 1)
return 1;
else
return n * calcolaFattoriale(n - 1);
}
Spero di essere stato sufficientemente esplicativo. Se avete domande scrivete pure.
NB: tutto quanto scritto è frutto di una mia personale analisi
Eine The Phantom, Amministratore
Argomenti simili
» Fattoriale con ciclo For in C
» Fattoriale con ciclo While in C
» Fattoriale dei Primi N numeri in C
» Fattoriale con ciclo While in C
» Fattoriale dei Primi N numeri in C
Pagina 1 di 1
Permessi in questa sezione del forum:
Non puoi rispondere agli argomenti in questo forum.
Dom Giu 02, 2013 4:30 pm Da ruggiero98
» problema con la funzione SE aiutoooo x favore?????
Dom Giu 02, 2013 4:18 pm Da ruggiero98
» aiuto in programma con if
Dom Mag 26, 2013 5:39 pm Da ruggiero98
» CALCOLO PERCENTUALE IN C
Sab Apr 20, 2013 8:22 pm Da ruggiero98
» Costruire un temporizzatore software per accensione luci a led
Lun Mar 25, 2013 2:34 pm Da Cristina Shady
» Ciao a tutti!
Gio Mar 22, 2012 4:19 am Da cosmos91
» Virtualbox VS le periferiche USB
Mar Apr 06, 2010 1:49 pm Da dandeciani
» PROGRAMMA: BINARY CODE
Mar Dic 23, 2008 7:28 pm Da Thalionwen
» saluti a tutti
Mar Dic 23, 2008 7:12 pm Da Thalionwen
» GUIDA : CAP 1 LEZIONE 1 Elementi di base dei programmi in C [Prima Parte]
Sab Nov 29, 2008 11:44 am Da ya89
» un semplice ciao
Sab Nov 29, 2008 11:38 am Da ya89
» Aiuto per alice 7 mega
Ven Nov 14, 2008 4:03 pm Da root
» FORUM: I nuovi banner
Ven Nov 14, 2008 2:48 pm Da Thalionwen
» Zooming Ricorsivo, questo sconosciuto.
Ven Nov 14, 2008 2:43 pm Da Thalionwen
» GUIDA : LEZIONE 4 : UTILIZZARE GLI ARRAY IN C#
Ven Nov 14, 2008 1:54 pm Da ab89
» GUIDA : CAP 1 LEZIONE 1 Elementi di base dei programmi in C [Terza e Ultima Parte]
Ven Nov 14, 2008 12:41 am Da ab89
» GUIDA : CAP 1 LEZIONE 1 Elementi di base dei programmi in C [Seconda Parte]
Mer Nov 12, 2008 12:59 am Da ab89
» [PS2] Dark Cloud
Mar Nov 11, 2008 6:50 pm Da ab89
» [PC] Sacred 2
Lun Nov 10, 2008 10:49 pm Da ab89
» GUIDA : CAP 1 LEZIONE 3 INTRODUZIONE AGLI ARRAY
Lun Nov 10, 2008 1:37 pm Da ab89