#! /usr/bin/python

'''
Exercice du livre sur Python 3.

Ce code est diffusé sous la licence GPLv3 (http://www.gnu.org/licenses/gpl.html).
Copyright © 2010 Harold Erbin <harold.erbin@gmail.com>
'''

def factorielle(n):
    # Si nous choisissons 0 au lieu de 1, les multiplications donneraient
    # toujours 0. Il faut donc choisir 1 car celui-ci ne change rien pour la
    # multiplication.
    result = 1
    
    # Pour la même raison nous commençons à 1. Le second est n+1 à cause du
    # fonctionnement de range().
    for i in range(1, n + 1):
        result *= i
    
    return result
    

