2014-05-20 2 views

Répondre

3

Ce qu'on appelle gray code, il existe plusieurs types différents, dont certains sont plus faciles construire que les autres. L'article wikipedia montre d'une manière très simple de convertir de binaire en code Gray:

unsigned int binaryToGray(unsigned int num) 
{ 
    return (num >> 1)^num; 
} 

En utilisant cela, il suffit de parcourir tous les numéros d'une certaine taille, les mettre dans cette fonction, et les imprimer mais vous vouloir.

0

Ceci est d'une façon de le faire:

int nval = (int)Math.Pow(2 , n); 
int divisor = nval/2; 
for (int i = 0; i < nval; i++) 
{ 
    int nb =(int) (i % divisor); 
    if (nb== 2) Console.WriteLine(i + 1); 
    else if (nb == 3) Console.WriteLine(i - 1); 
    else Console.WriteLine(i); 
} 
Questions connexes