
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
>>>
Cirurgia para acelerar o openSUSE em HD externo via USB
Void Server como Domain Control
Modo Simples de Baixar e Usar o bash-completion
Monitorando o Preço do Bitcoin ou sua Cripto Favorita em Tempo Real com um Widget Flutuante
Como impedir exclusão de arquivos por outros usuários no (Linux)
Cirurgia no Linux Mint em HD Externo via USB
Anúncio do meu script de Pós-Instalação do Ubuntu
Duas Pasta Pessoal Aparecendo no Ubuntu 24.04.3 LTS (8)
Alguém pode me indicar um designer freelancer? [RESOLVIDO] (5)
Alguém executou um rm e quase mata a Pixar! (3)
Formas seguras de instalar Debian Sid (1)
Por que passar nas disciplinas da faculdade é ruim e ser reprovado é b... (6)









