Codice Gray: differenze tra le versioni

Contenuto cancellato Contenuto aggiunto
Riga 158:
['000', '001', '010', '011', '100', '101', '110', '111']
</pre>
 
== Implementazione in linguaggio C ==
void grey(int n, int *p, int pos, int cnt){
    int i=0;
    if(n==0){
        for(i=0; i<pos; i++)
            printf("%d", p[i]);
        printf("\n");}
    else{
        if(cnt==0){
            p[pos]=0;
            grey(n-1, p, pos+1, cnt);
            p[pos]=1;
            grey(n-1, p, pos+1, cnt+1);}
        if(cnt==1){
            p[pos]=1;
            grey(n-1, p, pos+1, cnt-1);
            p[pos]=0;
            grey(n-1, p, pos+1, cnt);
        }
    }
 
== Note ==