Gray code có rất nhiều loại, mỗi loại lại có tham số kích cỡ, định dạng của code.
Ví dụ, đoạn mã sau in ra Gray code nhị phân n bit
Code:int n = 4; unsigned g, b; for(b=0; b<(1<<n); b++) { g = b ^ (b >> 1); printf("%x %x\n", b, g); }
Mọi người cho mình hỏi chương trình để in ra bảng mã GRAY???..đang làm bài mà gặp vấn đề chỗ này ko thể làm tíêp được
Gray code có rất nhiều loại, mỗi loại lại có tham số kích cỡ, định dạng của code.
Ví dụ, đoạn mã sau in ra Gray code nhị phân n bit
Code:int n = 4; unsigned g, b; for(b=0; b<(1<<n); b++) { g = b ^ (b >> 1); printf("%x %x\n", b, g); }
0000
0001
0011
0010
0110
0111
0101
0100
1100
1101
1111
1110
1010
1011
1001
1000
Nếu mún in ra bảng mã trên thì phải làm thế nào?
Thì bạn phải đổi g thành một xâu nhị phân rồi in ra xâu đó.
Trong diễn đàn đã có sẵn rất nhiều mã nguồn để đổi sang nhị phân, bạn thử tìm xem.