C++ - Numeri Fattoriali

Oggi impareremo a realizzare un programma in linguaggio C++ che ci permetta di calcolare il fattoriale di un numero intero!
I numeri fattoriali sono dei numeri
[math]n[/math]
che si esprimono nella forma
[math]n![/math]
.
Tale punto esclamativo sta a significare
[math]n! = n * (n-1) * (n-2) * ... * 1[/math]
Ad esempio:
INPUT 4
OUTPUT 24
È molto importante dire che c'è un'eccezione a tutto questo. 0! non vale infatti 0 ma 1, per convenzione.

#include
#include

using namespace std;

int main(){
int N, prodotto, T; //nominiamo le variabili
cout cout cin >> N; //c'è un input che prende il posto della variabile N
T = N; //T prende il valore di N
prodotto = 1; //il prodotto parte da 1
if(N == 0){ //se N è uguale a 0
cout }else{ //diversamente
while(N > 0){ //mentre N è maggiore di 0
prodotto = prodotto * N; //prodotto viene moltiplicato per N
N = N-1; //N viene diminuito di 1.
}
cout }
system("pause"); //termine del programma
}

Domande da interrogazione

  1. Come si calcola il fattoriale di un numero intero in C++?
  2. Il fattoriale di un numero intero si calcola moltiplicando il numero stesso per tutti i numeri interi positivi inferiori ad esso fino a 1. Nel programma C++ fornito, questo viene realizzato utilizzando un ciclo `while` che continua a moltiplicare il prodotto corrente per il valore di `N`, decrementando `N` di 1 ad ogni iterazione, fino a quando `N` diventa 0.

  3. Qual è il valore del fattoriale di 0 e perché?
  4. Il valore del fattoriale di 0 è 1 per convenzione. Questo è un caso speciale nel calcolo dei fattoriali, e il programma C++ gestisce questa eccezione con una condizione `if` che verifica se `N` è uguale a 0, restituendo 1 come risultato.

  5. Quali sono le variabili principali utilizzate nel programma e qual è il loro scopo?
  6. Le variabili principali nel programma sono `N`, `prodotto`, e `T`. `N` è il numero di cui si vuole calcolare il fattoriale, `prodotto` è utilizzato per accumulare il risultato del fattoriale, e `T` è una variabile temporanea che conserva il valore originale di `N` per la visualizzazione finale del risultato.

Domande e risposte

Hai bisogno di aiuto?
Chiedi alla community