面试题05.02.二进制数转字符串
链接:面试题05.02.二进制数转字符串
难度:Medium
标签:位运算、数学、字符串
简介:二进制数转字符串。给定一个介于0和1之间的实数(如0.72),类型为double,打印它的二进制表达式。
题解 1 - cpp
- 编辑时间:2023-03-02
- 内存消耗:6MB
- 编程语言:cpp
- 解法介绍:遍历。
class Solution {
public:
string printBin(double num) {
string res = "0.";
for (int i = 1; i < 32 && num > 0; i++) {
if (num >= pow(2, -i)) num -= pow(2, -i), res += "1";
else res += "0";
}
if (num) return "ERROR";
return res;
}
};