#!/usr/bin/env python3
# -*- coding: utf-8 -*-
"""
Created on Sun Nov 22 12:41:32 2020

@author: home
"""

import itertools as itls # bibliothèque qui permet de générer des permutations,
                         # des k-uplets, des parties d'une liste

# nombre de permutations d'un ensemble à n éléments = n!

def nombre_permutations(n):
    """
    fonction qui :
    - prend en paramètre d'entrée le nombre n d'éléments d'un ensemble
    - affiche l'ensemble E = [1], génère la liste de toutes les permutations de E et les dénombre
      puis affiche l'ensemble E = [1,2], génère la liste de toutes les permutations de E
      et les dénombre, ... puis affiche l'ensemble E = [1,2,3,...,n], génère la liste de toutes
      les permutations de E et les dénombre.
    """
    L = []
    for i in range(1,n+1):
        E = [k for k in range(1,i+1)]
        print("E = ",E)
        L = list(itls.permutations(E))
        print("permutations de E : ",L)
        print("nombre de permutations de E : ",len(L))

# modifier (remplacer le nombre 5) le paramètre dans la fonction ci-dessous par le nombre souhaité :

print(nombre_permutations(5))