Factorial

To the best of my understanding, this should work. I am at a loss.

It returns 20 as the answer to factorial(4) instead of 24.

```
def factorial(x):
if x == 1:
return 1
else:
a = 0
while x > 0:
a = a + x * (x - 1)
x -= 1
if x == 0:
return a
print factorial(4)
```