编写一个Python函数，使用递归算法计算给定数字的阶乘。


数字，例如5
以下是一个计算给定数字的阶乘的Python函数，使用递归算法：

```python
def factorial(n):
    if n == 0:
        return 1
    else:
        return n * factorial(n-1)
```

可以使用以下代码来测试该函数：

```python
n = 5
print(factorial(n))
```

输出应为120，因为5的阶乘为5x4x3x2x1=120。