[Cpp-STL] Bitset-convertChar 4
Bài tập.
Anh Việt có một ký tự ch
là một chữ cái in hoa ('A'
đến 'Z'
). Anh Việt làm một phép biến đổi như sau, lấy chuỗi nhị phân gồm 7
ký tự là biểu diễn chuỗi bit của ký tự ch
, đổi các bit trong chuỗi đó (bit 0
thành 1
và ngược lại).
Anh Việt muốn biết chuỗi bit sau khi đổi là biểu diễn nhị phân của ký tự nào.
Ví dụ:
- Với
ch = 'A'
thì kết quả là'>'
.
Giải thích: Ký tự'A'
đổi ra nhị phân là1000001(2)
, sau khi biến đổi sẽ thành0111110(2)
là biểu diễn nhị phân của ký tự'>'
. - Với
ch = 'G'
thì kết quả là'8'
.
Hướng dẫn.
Dùng bitset<7> để lưu chuỗi nhị phân của ký tự ch.
Dùng hàm flip() để thay đổi giá trị các bit.
Code mẫu:
char convertChar(char ch)
{
bitset<7> foo(ch);
foo.flip();
return char(foo.to_ulong());
}
Post Comment