Está en la página 1de 2

Numero fatorial

#include<iostream>
#include<stdlib.h>
using namespace std;
float factorial=1,n,i;
main() {
cout<<"digite un numero";
cin>>n;
for (i=n;i;i--)
{factorial*=i;
}
cout<<n<<"="<<factorial;
system("pause");
}

#include<iostream>
#include<stdlib.h> bibliotecas

using namespace std;


Se define que se emplea el namespace std. Un namespace es un
espacio de trabajo (aunque suene redundante) que se define en una
o mas librerias, y sirve para diferenciar las funciones. Mas que nada
sirve para establecer un orden.

float factorial = 1, n, i;
Declaración de variables de tipo flotante.

main() {
Función principal del programa, es la que se ejecuta al como el
corazón, si no existe entonces el programa no tendría significado.

cout<<"digite un numero";
Imprime en pantalla el texto que esta entre comillas

cin>>n;
Almacenar el valor ingresado en la pantalla a la variable n

for(i=n; i; i--)
Indica las condiciones para el ciclo repetitivo for:
i=n; --> la variable i comienza con el valor de n.
i; --> mientras que i sea mayor a 0, porque se asume el valor
booleano de que si es 0 es falso, y si es mayor a 0 es
true”verdadero” . Este true o false define si el ciclo debe continuar
repitiendose o no.
i-- -> la variable i disminuye su valor de 1 en 1. Especificamente,
aqui podria saltar un error, debido a que el -- y el ++ solo se define
para numeros enteros, no para flotantes.

factorial *= i;
En C y C++ (y en lenguajes derivados) existe esta connotacion con
los simbolos matematicos. Es semejante a:
factorial = factorial * i;
De la misma manera, con otros simbolos matematicos (ejemplos):
a += b --> a = a + b;
a -= b --> a = a - b;
a /= b --> a = a / b;

En conjunto, el for significa que la variable factorial, que al


comienzo del programa toma el valor de 1, se ira multiplicando por
el valor de i, que comienza en n, luego i disminuye en 1, y factorial
se va a multiplicar por i, cuyo valor es n-1, luego factorial se
multiplicara por n-2... y asi sucesivamente hasta que i valga 1. De
esta manera se cumple el factorial: n! = n * (n-1) * (n-2) * ... * 3 * 2
*1

coun<<n<<"="<<factorial
Imprime el valor de n que se ingreso al principio, luego el simbolo
=, y por ultimo el factorial de n.

system("pause");
El programa se detiene esperando una entrada de parte del usuario.