Enviado em 22/03/2017 - 03:12h
estou usando a função gamma do module math para calcular o fatorial de numeros decimais, mas estou tendo retorno de valores errados, alguém sabe o que se passa?#Froyd
#youtube.com/c/ifroydcoder
import math
#sera usado o modulo math , somente para calcular fatorial de numeros
#decimais com a funcao math.gamma, pois os mesmos exigem estudos de
#calculos avancados!
def fatorial(n): #define a funcao fatorial, que tem como argumento um numero n inteiro
if n<0: #verifica se o numero digitado e negativo
print("A operacao fatorial nao suporta numeros negativos") #retorna um texto informativo
elif n>69: #verifica se o numero digitado e maior que 69
print("Digite apenas numeros,tal que, 0 <= n <= 69 \n") #retorna um texto informativo
elif n==0 or n==1: #verifica se o numero digitado e 0 ou 1
return 1 #retorna o valor 1, pois !0=1 e !1=1
else:
return n*fatorial(n-1) #retorna o calculo fatorial do numero digitado
def painel():
selecione = input('''
Painel
1 - Fatorial de numeros inteiros
2 - Fatorial de numeros fracionarios
Selecione: ''')
if selecione==1:
n=(input("Insira um numero , tal que, 0 <= n <= 69 \n")) #solicita ao usuario a insercao do valor n inteiro
if type(n) <> int:
print "Inclua somente numeros inteiros"
painel()
else:
print "O fatorial de n e:", fatorial(n) #mostra o resultado do calculo feito pela funcao fatorial
elif selecione==2:
print "Utilize o '.' como separador em vez de ','"
n=(input("Insira um numero do conjunto dos reais para realizar a operacao \n")) #solicita ao usuario a insercao do valor n real
if type(n) <> float:
print "Inclua somente numeros fracionarios"
painel()
elif n>69:
print("Digite apenas numeros,tal que, 0 <= n <= 69 \n")
painel()
elif n<0:
print("A operacao fatorial nao suporta numeros negativos")
painel()
else:
# math.gamma(n)
print "O fatorial de n e:", math.gamma(n) # mostra o resultado do calculo da funcao math.gamma do module math para calculo de fatorial de numeros decimais
else:
print "Selecione apenas o que esta no painel, tente novamente"
painel()
painel()
ActivePython 2.7.13.2713 (ActiveState Software Inc.) based on
Python 2.7.13 (default, Jan 18 2017, 15:40:43) [MSC v.1500 64 bit (AMD64)] on win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import math
>>> math.gamma(4.0)
6.0
>>>
Aprenda a Gerenciar Permissões de Arquivos no Linux
Como transformar um áudio em vídeo com efeito de forma de onda (wave form)
Como aprovar Pull Requests em seu repositório Github via linha de comando
Mantenha seu Sistema Leve e Rápido com a Limpeza do APT!
Procurando vídeos de YouTube pelo terminal e assistindo via mpv (2025)
Gravação de tela com temporizador
Eu tive esse erro aqui depois de de baixar o HyprLand Ubuntu na versão... (1)
Como fazer boot em img do debian 12.img da web? (11)
Manjaro 25.0 no permite usar crontab (1)