|align="left" colspan="4"|
<tex>GrayCode</tex> {{---}} двумерный массив, в котором <tex>GrayCode[a, b]</tex> {{---}} <tex>b</tex>-ый бит в <tex>a</tex>-ом коде Грея.
<font size=3code>
buildCode(n):
GrayCode[1, n] = 0 GrayCode[2, n] = 1 {построение <font color=green> // Построение кода длины 1}</font> p = 2 { <font color=green> // Где p {{---}} количество уже имеющихся кодов}</font> '''for (''' i = 2, i <= '''to''' n, i++): t = p p = p * 2 '''for (''' k = (p / 2 + 1, k <= ) '''to''' p, k++): GrayCode[k] = GrayCode[t] {отражение <font color=green> // Отражение имеющихся кодов}</font> GrayCode[t, n + 1 - i] = 0 GrayCode[k, n + 1 - i] = 1 {добавление <font color=green> // Добавление 0 и 1 в начало}</font> t--</fontcode>
|}