Bonjour,
j'ai trouvé sur ce forum deux algorithmes écrits en Python par Guillaume Duriaud. Je les cherchais pour compléter un programme écrit en C++. Malheureusement, je ne connais pas du tout Pytho et j'aurai besoin d'aide pour transcrire ces algos en C++.

Quelqu'un peut-il m'aider ?

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
## Created: 2005.11.05
## Version: 0.0.0
## Build: 0.1
## Updated: 2005.11.05
## Auteur: Guillaume Duriaud
 
 
 
def Cnp(n,p, l=None, res=None):
    """ Created: 2005.11.05 - Updated:
        Calcul du Cnp - ne pas renseigne l et res lors de l'appel """
    if l is None: l=[]
    if res is None: res=[]
    if p==0:
        res.append(l)
        return 
    if n==0: return  
    l1=list(l)
    l1.append(n)
    Cnp(n-1, p-1, l1, res)
    Cnp(n-1, p, l, res)
    return res
 
 
 
 
 
def Anp(n, p, l=None, res=None):
    """ Created: 2005.11.05 - Updated: 2005.11.05
        Calcul de l'Anp - ne pas renseigne l et res lors de l'appel """    
    if l is None: l=[]
    if res is None: res=[]    
    if p==0:
        res.append(l)
        return
    for k in range(1,n+1):
        if k not in l:
            l1=list(l)
            l1.append(k)
            Anp(n, p-1, l1,res)
    return res