Submeter | Todas submissőes | Melhores | Voltar |
FATORIA2 - Fatorial |
Dado um inteiro N
, determine quanto vale N
fatorial (escreve-se N!
). O fatorial de um número é
o produto de todos os números entre 1 e N
, inclusive. Por
exemplo, 5! = 5 × 4 × 3 × 2 × 1 = 120
.
Entrada
A entrada é composta por uma única linha que contém o
inteiro N
.
Saída
A saída deve consistir de apenas uma linha contendo o valor de
N!
.
Restrições
0 ≤ N ≤ 12
Exemplo
Entrada 2 Saída 2 Entrada 3 Saída 6
Adicionado por: | Wanderley Guimarăes |
Data: | 2009-01-26 |
Tempo limite: | 0.301s |
Tamanho do fonte: | 50000B |
Memory limit: | 1536MB |
Cluster: | Cube (Intel G860) |
Linguagem permitida: | Todas exceto: ASM64 CLOJURE ERL FSHARP JS-RHINO PERL6 PY_NBC SCALA TCL |
Origem: | Treino para OBI de 2006 - Fábio Moreira & Daniel Fleischman |
hide comments
|
|||||||||
2019-08-11 17:36:01
Resolução em Java: final Scanner s = new Scanner(System.in); final int n = s.nextInt(); int fat = n; if(n == 0){ fat = 1; } if(n > 0 && n <= 12){ for (int i = 1; i < n; i++){ fat *= n-i; } } System.out.println(fat); |
|||||||||
2019-04-09 01:45:27
Python: def fatorial(num): res = 1 for i in range(2, num+1): res = res * i return res s = input() n = int(s) print(fatorial(n)) Last edit: 2019-04-09 01:46:15 |
|||||||||
2018-12-12 11:16:51
QUERO CAFÉ |
|||||||||
2017-03-23 13:34:07
Pessoal que está com a saída errada e não sabe o porquê: Lembrem-se que 0! = 1 Eu tinha me esquecido desse caso e estava indignado por não acertar os testes. |
|||||||||
2015-12-17 17:41:45
pq esta errado |
|||||||||
2015-03-28 16:55:41 Calvin
Fiz 2 resoluçőes: 1Ş: fat =1; se N > 0: fazer N .. 1 fat = fat*N; fim fazer fim se mostrar fat; 2Ş fiz um vetor já com os fatoriais calculados para printar de acordo com N. Para ambos os casos o resultado foi: "erro em tempo de execuçăo (NZEC)" Alguém tem alguma ideia do motivo disso? Compilando aqui todos eles funcionaram perfeitamente. |
|||||||||
2014-04-24 22:48:07 Thiago Tibau
#include <stdio.h> int main() { int num, total=1, cont; printf("Digite um numero para calcular o fatorial: "); scanf("%d", &num); for (cont=num; num>1; num--) { total = total * (num); } printf("\nO Fatorial do numero digitado e = %d ", total); return 0; } |
|||||||||
2014-03-24 20:43:28 Hitallo Guerra
Pedro seu algoritmo apresente falhas, uma delas esta em 1! :P |
|||||||||
2014-03-16 17:28:23 Pedro
Caros, Meu programa roda normal aqui no terminal, mas o SPOJ năo aceita. Alguém saberia explicar porquę? Agradeço. #include <stdio.h> #include <stdlib.h> int main() { int cte, f, N; scanf ("%d", &N); f=N-1; cte=N; if (N>1) { while (f>0) { N=N*(cte-f); f--; } } else { printf("%d", N+1); return (0);} printf("%d", N); return (0); } |
|||||||||
2013-12-30 16:59:27 Maranhão
Last edit: 2013-12-30 19:02:27 |