Pular para o conteúdo

Cálculo de Fatorial usando Loop

É possível ter fatorial para números reais maiores que zero e menores que zero, e não apenas para números inteiros positivos. Na verdade, é uma generalização, chamada de Função Gama.

Entretanto, usualmente só necessitamos dos fatoriais de números inteiros, para calculá-lo.
Diego Araujo Frota diegoafrota
Hits: 10.731 Categoria: C/C++ Subcategoria: Miscelânea
  • Download
  • Nova versão
  • Indicar
  • Denunciar

Descrição

É possível ter fatorial para números reais maiores que zero e menores que zero, e não apenas para números inteiros positivos. Na verdade, é uma generalização, chamada de Função Gama.

Entretanto, usualmente só necessitamos dos fatoriais de números inteiros, para calculá-lo.
Download cfatorial.c Enviar nova versão

Esconder código-fonte

cfatorial.c ------------------------------------------------
#include<stdio.h>
#include<stdlib.h>
#include<time.h>

int fatorial()
{
int j,i,N,F;

printf("Qual fatorial desejas calcular?\n");
scanf("%d",&N);
printf("O fatorial desejado é:\n");

for (j=0;j<=1;j++)
F=1;
for (i=0;i<=N-1;i++)
{
F=F*(N-i);
}
printf("%d!=%d\n",N,F);
}

int main()
{
fatorial();
}
-----------------------------------------------------
Para compilar em unix:
gcc cfatorial.c

Para executar:
./a.out

Escritor de números

Comando strieql

Comando strstr

Algoritmo de Dijkstra

Calculadora elementar com ponto flutuante

#1 Comentário enviado por removido em 20/07/2008 - 03:44h
Olá Diego,

E o que faremos quando o resultado do cálculo do fatorial estourar os limites de armazenamento do tipo inteiro? Isso vai até, chuto eu, o fatorial de 11 ou 12.

Abraço,

Piero
#2 Comentário enviado por octopos em 14/11/2008 - 17:48h
Deve-se usar uma forma iterada e variaveis do tipo unsigned int , que duplica o valor a ser representado.
#3 Comentário enviado por g_s.lima em 28/04/2010 - 10:36h
Três coisas:

- Poderia usar long int, unsigned long int, unsigned long long int, por exemplo;

- As bibliotecas stdlib.h e time.h não são necessárias nesse script;

- int fatorial() poderia ser void, pois não retorna nenhum valor;

Script legal, fatorial é útil para muitas coisas.. Abrço

Contribuir com comentário

Entre na sua conta para comentar.