2017-11-18 19 views
-1
while (4>0) : 

    num = int(input("Enter a number: ")) 
    num2=int(input("Enter 2nd Number")) 

    for i in range(num,num2+1): 
     factorial = 1 
     factorialsum = 0 
     for y in range(1,i+1): 
      factorial = factorial*i 
     factorialsum =factorial+factorialsum 
    print(factorialsum) 

Ich habe versucht, es zu bewegen, aber es scheint nie zu funktionieren. Kann mir bitte jemand helfen?Wie man eine Summe der gewählten Faktorzahlen macht?

+0

Mögliche Duplikat [Python - Summe der factorials] (https://stackoverflow.com/questions/28727548/python-sum-of-the-factorials) – Aaqib

+0

Was genau versuchen Sie zu erreichen? Füge den Code auch korrekt ein, damit ich ihn replizieren und unterstützen kann. –

+0

Warum '4> 0'? Warum nicht '2> 0' oder' 3> 0' oder, weißt du, 'True'? – chepner

Antwort

0

Man könnte so etwas tun:

def factorial(x): 
    if x <= 1: 
    return x 
    return x * factorial(x - 1) 

def factorialSum(start, end): 
    sum = 0 
    for x in range(start, end + 1): 
     sum += factorial(x) 
    return sum 

n1 = int(input("Enter a number: ")) 
n2 = int(input("Enter 2nd Number: ")) 

if n2 < n1: 
    print "The second number should be greather than first number" 
else: 
    print(factorialSum(n1, n2)) 
Verwandte Themen